Foobar2000:Components 0.9/WSH panel (foo uie wsh panel)
Description
Windows script host panel.
Main Features
Scripting
- Restrict "Language" to JScript and VBScript to prevent unexpected behavior.
- Draw custom images.
- Add popup menu, blur, timer and more operations to images.
- Add support to run main menu and context menu command.
- Add various helper functions.
Editor Window
- Add support to pseudo transparent, syntax highlighting for JScript and VBScript, Import/Outport scripts, customizable font style and miscellaneous UI improvements.
Shortcuts
- Ctrl+F: Find
- Ctrl+H: Replace
- Ctrl+G: Goto
- Ctrl+S: Apply
Notes and Hints
- If anything goes wrong, check the console first.
- gdi.Font() is fully changed: gdi.Font(name, pxSize, style);
- Don't call repaint functions such as window.Repaint() in callback function on_size() {}, especially in pseudo transparent mode.
- Don't try to assign parameter "gr" from function on_paint(gr) {} with other value, nor try to store "gr" in another variable.
- CollectGarbage() is useful in JScript when you want to free memory immediately. (But please also refer to #12)
- It's better to retrieve window width and height in callback function on_size(), because their values during startup is not reliable.
- It's NOT recommended to create objects in callback function on_paint(), since it's called frenquently.
- Since v1.1.0, functions /methods which use IFbFileInfo Interface is replaced with IFbMetadbHandle Inferface.
Do NOT update tags in global callbacks, see Callbacks.txt for details.- jsbeautifier.org is a good site for formatting your JScript files.
- Don't forget that error handling (JScript, VBScript) helps to create more stable scripts.
- Consider using Dispose() method instead of CollectGarbage() function.
DO NOT try to call playback control methods such as fb.RunMainMenuCommand("Next") and fb.RunMainMenuCommand("Stop") during global callbacks, or you may make foobar2000 crash.