Difference between revisions of "Foobar2000:Components 0.9/WSH panel (foo uie wsh panel)"

From Hydrogenaudio Knowledgebase
Jump to: navigation, search
(First edit: simply copied information from the Discussion thread)
(added infobox)
Line 4: Line 4:
[[Category:foobar2000 3rd-Party Components|WSH panel (foo uie wsh panel)]]
[[Category:foobar2000 3rd-Party Components|WSH panel (foo uie wsh panel)]]
{{Foobar Component Infobox
| name = foo_uie_wsh_panel
| caption = WSH panel
| maintainer = ?
| stable_release = v1.3.7
| foobar_version = 1.1+
| use = ?
| license = ?
| website = [http://code.google.com/p/foo-wsh-panel-mod/downloads/list Official Website]
| discussion_thread = [http://www.hydrogenaudio.org/forums/index.php?showtopic=70363 Discussion Thread]

Revision as of 20:45, 19 October 2010


WSH panel
Developer(s)  ?
Repository {{{repository}}}
Release information
Initial release {{{released}}}
Stable release v1.3.7
Preview release N/A
foobar2000 compatibility
Minimum version 1.1+
Maximum version {{{foobar2000_maximum}}}
UI module(s) N/A
Additional information
Use  ?
License  ?
Discussion thread Discussion Thread


Windows script host panel.

Main Features


  • 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.


  • Ctrl+F: Find
  • Ctrl+H: Replace
  • Ctrl+G: Goto
  • Ctrl+S: Apply

Notes and Hints

  1. If anything goes wrong, check the console first.
  2. gdi.Font() is fully changed: gdi.Font(name, pxSize, style);
  3. Don't call repaint functions such as window.Repaint() in callback function on_size() {}, especially in pseudo transparent mode.
  4. Don't try to assign parameter "gr" from function on_paint(gr) {} with other value, nor try to store "gr" in another variable.
  5. CollectGarbage() is useful in JScript when you want to free memory immediately. (But please also refer to #12)
  6. It's better to retrieve window width and height in callback function on_size(), because their values during startup is not reliable.
  7. It's NOT recommended to create objects in callback function on_paint(), since it's called frenquently.
  8. Since v1.1.0, functions /methods which use IFbFileInfo Interface is replaced with IFbMetadbHandle Inferface.
  9. Do NOT update tags in global callbacks, see Callbacks.txt for details.
  10. [jsbeautifier.org] is a good site for formatting your JScript files.
  11. Don't forget that error handling (JScript, VBScript) helps to create more stable scripts.
  12. Consider using Dispose() method instead of CollectGarbage() function.
  13. 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.

External links