-
Notifications
You must be signed in to change notification settings - Fork 0
Enhanced Sample Library
The user-components-x64 tree supplied with DarkOneJSP3 is a standalone, upgraded JScript Panel 3 sample suite. The enhanced samples no longer require the DarkOneJSP3 project directory and can be used by other foobar2000 themes.
- Close foobar2000.
- Back up the installed
foo_jscript_panel3\samplesdirectory andhelpers.txt. - Merge the supplied
user-components-x64\foo_jscript_panel3tree into the active profile'suser-components-x64location. - Load the desired top-level sample
.txtfile in a JScript Panel 3 instance.
The DarkOneJSP3 folder and its Columns UI layout are not required for standalone sample use.
- Existing sample filenames, module filenames, constructors and import paths are retained.
-
helpers.txtcarries guarded performance and UI-cadence fallbacks for older saved playlist entries. - Current enhanced entries import reusable files from
samples\sharedrather than%fb2k_profile_path%DarkOneJSP3\shared. - Existing
DARKONEJSP3.*,JSPLAYLIST.*andSMOOTH.*property keys remain intact. - The neutral
JSP3Enhanced.Reset.Propertiesnotification and legacyDarkOneJSP3.Reset.Propertiesnotification are both supported. -
darkonejsp3_reset.jsremains a generated self-contained legacy adapter for saved entries created before the standalone refactor. -
enhanced_page_backgroundis the neutral_paneloption;darkonejsp3_page_backgroundremains a supported alias.
The standalone library provides upgraded implementations used directly by DarkOneJSP3, including:
- Album Art — Enhanced v0.1.0
- Album Notes and MusicBrainz metadata panels
- JS Playlist
- Smooth Playlist Manager
- Queue Viewer
- Properties
- Last.fm Biography
- Last.fm Artist Information
- Shared colour, reset, performance and UI-cadence utilities
Album Art wheel navigation uses an 80 ms trailing debounce. Rapid wheel input updates a pending artwork type but decodes and converts only the final selection after scrolling settles. Keyboard and context-menu choices remain immediate.
Pending wheel work is cancelled when metadata changes or the script unloads. During unload, active normal and blurred Direct2D bitmaps are explicitly disposed.
Existing compatible panel entries receive the runtime improvement from the shared samples\js\albumart.js file. Loading the current Album Art.txt entry also updates the displayed sample name and version.
DarkOneJSP3 uses these same standalone samples. Its project-specific code adds layout coordination, InfoStack integration and coordinated factory-reset commands, but the sample implementations and shared runtime utilities are owned by the JScript Panel component tree.
The release validator stages user-components-x64 by itself, with no DarkOneJSP3 directory, and resolves every distributed sample entry import. It also checks legacy helpers.txt fallbacks, neutral and legacy reset notifications, property compatibility, the optional page-background alias, generic context-menu routing without the colour helper loaded, Album Art wheel behaviour and explicit bitmap disposal.
- Existing sample filenames and internal import paths are retained.
- Older saved entry scripts receive guarded helper and reset compatibility.
- Existing property keys remain valid.
- Other themes can use the upgraded panels without installing the DarkOneJSP3 layout.
- DarkOneJSP3 and third-party themes can share one maintained implementation instead of diverging forks.
The package replaces files inside the installed JScript Panel sample tree. Back up locally modified samples and helpers.txt before merging the library, especially when another theme ships its own modified copies.
DarkOneJSP3 documentation · Unofficial community continuation · Back up your foobar2000 profile before installation or upgrade. · Repository · Credits