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

From Hydrogenaudio Knowledgebase
mNo edit summary
mNo edit summary
 
(7 intermediate revisions by the same user not shown)
Line 9: Line 9:
| 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.3.7
| stable_release_date  = 2023-03-13
| stable_release_date  = 2023-10-21
| preview_release      =  
| preview_release      =  
| preview_release_date =  
| preview_release_date =  
| foobar2000_minimum  = 2.0 beta 18
| foobar2000_minimum  = 1.6.6
| foobar2000_maximum  =  
| foobar2000_maximum  =  
| foobar2000_ui_module = Default UI, Columns UI
| foobar2000_ui_module = Default UI, Columns UI

Latest revision as of 08:07, 29 October 2023

JScript Panel 3

foo_jscript_panel3
Developer(s) marc2k3
Repository Github
Release information
Initial release November 1, 2015; 9 years ago
Stable release 3.3.7 (October 21, 2023)
Preview release
foobar2000 compatibility
Architecture {{{foobar2000_architecture}}}
Minimum version 1.6.6
Maximum version
UI module(s) Default UI, Columns UI
Additional information
Use UI
License List of used licenses
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.

External links