Jump to content

Foobar2000:Components/JScript Panel 3 (foo jscript panel3): Difference between revisions

From Hydrogenaudio Knowledgebase
Thorna (talk | contribs)
mNo edit summary
Korth (talk | contribs)
m remove dead link
 
(9 intermediate revisions by 2 users not shown)
Line 6: Line 6:
| module_name          = foo_jscript_panel3
| module_name          = foo_jscript_panel3
| developer            = {{ha user|u=130879|name=marc2k3}}
| developer            = {{ha user|u=130879|name=marc2k3}}
| repository          = [https://github.com/marc2k3/jscript-panel Github]
| repository          =  
| released            = {{start date and age|2015|11|01}}
| released            = {{start date and age|2015|11|01}}
| released_ref        =  
| released_ref        =  
| stable_release      = 3.2.7
| stable_release      = 3.8.5
| stable_release_date  = 2023-03-13
| stable_release_date  = 2024-11-18
| preview_release      =  
| preview_release      =  
| preview_release_date =  
| preview_release_date =  
| foobar2000_minimum  = 2.0 beta 18
| foobar2000_minimum  = 2.1
| foobar2000_maximum  =  
| foobar2000_maximum  =  
| foobar2000_ui_module = Default UI, Columns UI
| foobar2000_ui_module = Default UI, Columns UI
| use                  = UI
| use                  = UI
| license              = [https://github.com/marc2k3/jscript-panel/tree/main/component/licenses List of used licenses]
| license              =  
   
   
}}
}}


 
{{panel|This component is no longer supported by the developer.|color=red}}
==Description==
==Description==
This component for foobar2000 is based on [[https://code.google.com/archive/p/foo-wsh-panel-mod/ WSH Panel Mod]].
This component for foobar2000 is based on [[https://code.google.com/archive/p/foo-wsh-panel-mod/ WSH Panel Mod]].
Line 44: Line 44:
* Save settings on a per panel basis. These persist between restarts and are stored inside the layout configuration file for whichever UI your are using. You can also write your own functions to load/save settings from JSON or plain text files.
* Save settings on a per panel basis. These persist between restarts and are stored inside the layout configuration file for whichever UI your are using. You can also write your own functions to load/save settings from JSON or plain text files.
* Built in support for making GET / POST requests which return plain text and there is also a method for downloading binary files. If you prefer, you can use the Microsoft.XMLHTTP ActiveX object.
* Built in support for making GET / POST requests which return plain text and there is also a method for downloading binary files. If you prefer, you can use the Microsoft.XMLHTTP ActiveX object.
* And much more... Read [[https://marc2k3.github.io/jscript-panel/docs/ Documentation]] for complete information.
* And much more... Read Documentation for complete information.


== External links ==
== External links ==
* {{ha|https://hydrogenaud.io/index.php/topic,110516}}
* {{ha|https://hydrogenaud.io/index.php/topic,110516}}
* [https://marc2k3.github.io/jscript-panel/ Official component homepage]
* {{ha|url=https://hydrogenaudio.org/index.php?msg=1067716|title=v3.8.5 (''final version'') Download}}
* [https://github.com/marc2k3/fb2k-archive/releases Archived component homepage for pre 2.x foobar2000 releases]
* [https://github.com/marc2k3/jscript-panel/releases Download]

Latest revision as of 11:55, 5 March 2026

JScript Panel 3

foo_jscript_panel3
Developer(s) marc2k3
Repository
Release information
Initial release November 1, 2015; 11 years ago
Stable release 3.8.5 (November 18, 2024)
Preview release
foobar2000 compatibility
Architecture {{{foobar2000_architecture}}}
Minimum version 2.1
Maximum version
UI module(s) Default UI, Columns UI
Additional information
Use UI
License
Discussion thread {{{discussion_thread}}}
View all components

Description

This component for foobar2000 is based on [WSH Panel Mod].

It allows the creation of customisable panels that can be written with JavaScript rather than the C++ required by the [foobar2000 SDK].

Under the hood, it uses Windows Script Host. It is possible to use ActiveX objects like WScript.Shell to run external apps, etc.

Note that JS language support is limited to ECMAScript 5. Nothing newer will ever be supported.

Features

Here are just some of the features provided by the component...

  • Custom drawing of text, external images, lines, rectangles, etc.
  • Use fonts/colours from the main preferences of whichever user interface you are using.
  • Executing main/context menu commands.
  • Ability to create custom buttons/menus.
  • Capture keystrokes/mouse movement/clicks.
  • Callbacks can be used to trigger code based on foobar2000 events.
  • Read/write file tags.
  • Complete manipulation of playlists.
  • Media Library display/sorting/filtering
  • Save settings on a per panel basis. These persist between restarts and are stored inside the layout configuration file for whichever UI your are using. You can also write your own functions to load/save settings from JSON or plain text files.
  • Built in support for making GET / POST requests which return plain text and there is also a method for downloading binary files. If you prefer, you can use the Microsoft.XMLHTTP ActiveX object.
  • And much more... Read Documentation for complete information.