mirror of
https://github.com/WinampDesktop/winamp.git
synced 2024-12-18 16:45:51 +01:00
2779 lines
76 KiB
Mason
2779 lines
76 KiB
Mason
//----------------------------------------------------------------------------------------------------------------
|
|
// std.mi
|
|
//
|
|
// standard definitions for internal objects
|
|
//----------------------------------------------------------------------------------------------------------------
|
|
|
|
#ifndef __STD_MI
|
|
#define __STD_MI
|
|
|
|
#define MC_TARGET "Winamp 5.66 (skin version 1.36)"
|
|
#define VCPU_VERSION 2
|
|
|
|
#define deprecated //
|
|
|
|
// GUIDS
|
|
extern class @{51654971-0D87-4a51-91E3-A6B53235F3E7}@ @{00000000-0000-0000-0000-000000000000}@ Object;
|
|
extern class @{D6F50F64-93FA-49b7-93F1-BA66EFAE3E98}@ Object _predecl System;
|
|
extern class @{E90DC47B-840D-4ae7-B02C-040BD275F7FC}@ Object Container;
|
|
deprecated extern class @{00C074A0-FEA2-49a0-BE8D-FABBDB161640}@ Object Wac;
|
|
extern class @{B2023AB5-434D-4ba1-BEAE-59637503F3C6}@ Object &List;
|
|
extern class @{87C65778-E743-49fe-85F9-09CC532AFD56}@ Object &BitList;
|
|
extern class @{38603665-461B-42a7-AA75-D83F6667BF73}@ Object ⤅
|
|
extern class @{F4787AF4-B2BB-4ef7-9CFB-E74BA9BEA88D}@ Object &PopupMenu;
|
|
extern class @{3A370C02-3CBF-439f-84F1-86885BCF1E36}@ Object &Region;
|
|
extern class @{5D0C5BB6-7DE1-4b1f-A70F-8D1659941941}@ Object &Timer;
|
|
deprecated extern class @{A5376FA1-4E94-411a-83F6-05EC5EEA5F0A}@ Object &FeedWatcher;
|
|
extern class @{4EE3E199-C636-4bec-97CD-78BC9C8628B0}@ Object &GuiObject;
|
|
extern class @{45BE95E5-2072-4191-935C-BB5FF9F117FD}@ GuiObject &Group;
|
|
extern class @{60906D4E-537E-482e-B004-CC9461885672}@ Group &Layout;
|
|
extern class @{403ABCC0-6F22-4bd6-8BA4-10C829932547}@ GuiObject &WindowHolder;
|
|
extern class @{97AA3E4D-F4D0-4fa8-817B-0AF22A454983}@ GuiObject &ComponentBucket;
|
|
extern class @{64E4BBFA-81F4-49d9-B0C0-A85B2EC3BCFD}@ GuiObject &Edit;
|
|
extern class @{62B65E3F-375E-408d-8DEA-76814AB91B77}@ GuiObject &Slider;
|
|
extern class @{CE4F97BE-77B0-4e19-9956-D49833C96C27}@ GuiObject &Vis;
|
|
extern class @{A8C2200D-51EB-4b2a-BA7F-5D4BC65D4C71}@ GuiObject &Browser;
|
|
extern class @{8D1EBA38-489E-483e-B960-8D1F43C5C405}@ GuiObject &EqVis;
|
|
extern class @{0F08C940-AF39-4b23-80F3-B8C48F7EBB59}@ GuiObject &Status;
|
|
extern class @{EFAA8672-310E-41fa-B7DC-85A9525BCB4B}@ GuiObject &Text;
|
|
extern class @{7DFD3244-3751-4e7c-BF40-82AE5F3ADC33}@ GuiObject &Title;
|
|
extern class @{5AB9FA15-9A7D-4557-ABC8-6557A6C67CA9}@ GuiObject &Layer;
|
|
extern class @{698EDDCD-8F1E-4fec-9B12-F944F909FF45}@ GuiObject &Button;
|
|
extern class @{6B64CD27-5A26-4c4b-8C59-E6A70CF6493A}@ Layer &AnimatedLayer;
|
|
extern class @{6DCB05E4-8AC4-48c2-B193-49F0910EF54A}@ Layer &AlbumArtLayer;
|
|
extern class @{B4DCCFFF-81FE-4bcc-961B-720FD5BE0FFF}@ Button &ToggleButton;
|
|
extern class @{01E28CE1-B059-11d5-979F-E4DE6F51760A}@ GuiObject &GroupList;
|
|
extern class @{80F0F8BD-1BA5-42a6-A093-3236A00C8D4A}@ Group &CfgGroup;
|
|
deprecated extern class @{CDCB785D-81F2-4253-8F05-61B872283CFA}@ GuiObject &QueryList;
|
|
extern class @{9B2E341B-6C98-40fa-8B85-0C1B6EE89405}@ GuiObject &MouseRedir;
|
|
extern class @{36D59B71-03FD-4af8-9795-0502B7DB267A}@ GuiObject &DropDownList;
|
|
extern class @{7FD5F210-ACC4-48df-A6A0-5451576CDC76}@ GuiObject &LayoutStatus;
|
|
extern class @{B5BAA535-05B3-4dcb-ADC1-E618D28F6896}@ GuiObject &TabSheet;
|
|
extern class @{6129FEC1-DAB7-4d51-9165-01CA0C1B70DB}@ GuiObject &GuiList;
|
|
extern class @{D59514F7-ED36-45e8-980F-3F4EA0522CD9}@ GuiObject &GuiTree;
|
|
extern class @{9B3B4B82-667A-420e-8FFC-794115809C02}@ Object &TreeItem;
|
|
deprecated extern class @{1D8631C8-80D0-4792-9F98-BD5D36B49136}@ GuiObject &MenuButton;
|
|
extern class @{C7ED3199-5319-4798-9863-60B15A298CAA}@ GuiObject &CheckBox;
|
|
deprecated extern class @{2D2D1376-BE0A-4CB9-BC0C-57E6E4C999F5}@ GuiObject &Form;
|
|
extern class @{E2BBC14D-84F6-4173-BDB3-B2EB2F665550}@ GuiObject &Frame; // Winamp 5.5
|
|
extern class @{73C00594-961F-401B-9B1B-672427AC4165}@ GuiObject &Menu; // Winamp 5.52
|
|
|
|
deprecated define Component WindowHolder
|
|
|
|
#ifndef true
|
|
#define true 1
|
|
#endif
|
|
#ifndef TRUE
|
|
#define TRUE 1
|
|
#endif
|
|
#ifndef false
|
|
#define false 0
|
|
#endif
|
|
#ifndef FALSE
|
|
#define FALSE 0
|
|
#endif
|
|
|
|
// class tree member functions & events
|
|
|
|
//*****************************************************************************
|
|
// Object CLASS
|
|
//*****************************************************************************
|
|
/**
|
|
Object Class.
|
|
|
|
@short This is the base class from which all other classes inherit.
|
|
@author Nullsoft Inc.
|
|
@ver 1.0
|
|
*/
|
|
|
|
/**
|
|
getClassName()
|
|
|
|
Returns the class name for the object.
|
|
|
|
@ret The class name.
|
|
*/
|
|
extern String Object.getClassName();
|
|
|
|
/**
|
|
getId()
|
|
|
|
*/
|
|
extern String Object.getId();
|
|
|
|
/**
|
|
onNotify()
|
|
|
|
@ret
|
|
@param command
|
|
@param param
|
|
@param a
|
|
@param b
|
|
*/
|
|
extern Int Object.onNotify(String command, String param, int a, int b);
|
|
|
|
//*****************************************************************************
|
|
// System CLASS
|
|
//*****************************************************************************
|
|
/**
|
|
System Class.
|
|
|
|
@short The system class are basic system functions accessible to all.
|
|
@author Nullsoft Inc.
|
|
@ver 1.0
|
|
*/
|
|
|
|
/**
|
|
onScriptLoaded()
|
|
|
|
Hookable. Event happens when script has just finished being loaded.
|
|
No params.
|
|
*/
|
|
extern System.onScriptLoaded();
|
|
|
|
/**
|
|
onScriptUnloading()
|
|
|
|
Hookable. Event happens when script is going to be unloaded.
|
|
No params.
|
|
*/
|
|
extern System.onScriptUnloading();
|
|
|
|
/**
|
|
onQuit()
|
|
|
|
Hookable. Event happens when the user quits the application.
|
|
No params.
|
|
*/
|
|
extern System.onQuit();
|
|
|
|
/**
|
|
onSetXuiParam(String param, String value)
|
|
|
|
Hookable. Event happens when the script is in a group implementing
|
|
an xuiobject and a parameter has not been recognized by the group or
|
|
the embedded object.
|
|
|
|
No params.
|
|
*/
|
|
extern System.onSetXuiParam(String param, String value);
|
|
|
|
/**
|
|
onKeyDown()
|
|
|
|
Hookable. Event happens when the user presses a key on the keyboard.
|
|
|
|
@param key The key that was pressed.
|
|
*/
|
|
extern System.onKeyDown(String key);
|
|
|
|
/**
|
|
onAccelerator()
|
|
|
|
Hookable. Event happens when the user presses an accelerator key.
|
|
|
|
@param action The action to perform (from locales)
|
|
@param section The locales section for the accelerator.
|
|
@param key The key, ie: "tab", "ctrl+a".
|
|
*/
|
|
extern System.onAccelerator(String action, String section, String key);
|
|
|
|
/**
|
|
onCreateLayout()
|
|
|
|
Hookable. Event happens when a layout is created.
|
|
|
|
@param _layout The layout that was just created.
|
|
*/
|
|
extern System.onCreateLayout(Layout _layout);
|
|
|
|
/**
|
|
onShowLayout()
|
|
|
|
Hookable. Event happens when a layout is about to be shown.
|
|
This even only happens if the layout was previously hidden.
|
|
|
|
@param _layout The layout that's about to be shown.
|
|
*/
|
|
extern System.onShowLayout(Layout _layout);
|
|
|
|
/**
|
|
onHideLayout()
|
|
|
|
Hookable.
|
|
|
|
@param _layout The layout that's about to be hidden.
|
|
*/
|
|
extern System.onHideLayout(Layout _layout);
|
|
|
|
/**
|
|
onViewPortChanged()
|
|
|
|
Hookable. Event happens when the Windows viewport has changed.
|
|
Note: The monitor Winamp is currently on may not be related to
|
|
the Windows message which led to generating this event.
|
|
|
|
@param width The new viewport width or -1 if not given by the OS.
|
|
@param height The new viewport height or -1 if not given by the OS.
|
|
*/
|
|
extern System.onViewPortChanged(int width, int height);
|
|
|
|
/**
|
|
onStop()
|
|
|
|
Hookable. Event happens when Winamp3 stops playing a file.
|
|
No params.
|
|
*/
|
|
extern System.onStop();
|
|
|
|
/**
|
|
onPlay()
|
|
|
|
Hookable. Event happens when Winamp3 starts playing a file.
|
|
No params.
|
|
*/
|
|
extern System.onPlay();
|
|
|
|
/**
|
|
onPause()
|
|
|
|
Hookable. Event happens when Winamp3 pauses playback.
|
|
No params.
|
|
*/
|
|
extern System.onPause();
|
|
|
|
/**
|
|
onResume()
|
|
|
|
Hookable. Event happens when Winamp3 resumes playback.
|
|
Event only happens when the song was previously set in a paused state.
|
|
No params.
|
|
*/
|
|
extern System.onResume();
|
|
|
|
/**
|
|
onTitleChange()
|
|
|
|
Hookable. Event happens when the song title changes.
|
|
*/
|
|
extern System.onTitleChange(String newtitle);
|
|
|
|
extern System.onTitle2Change(String newtitle2);
|
|
extern System.onUrlChange(String url);
|
|
extern System.onInfoChange(String info);
|
|
extern System.onStatusMsg(String msg);
|
|
|
|
/**
|
|
onEqBandChanged()
|
|
|
|
Hookable. Event happens when an equalizer band changes values.
|
|
The bands are numbered from 0 to 9 (0 being 60Hz and 9 being 16kHz)
|
|
and their values range from -127 to +127.
|
|
|
|
@param band The frequency band that has changed.
|
|
@param newvalue The new value of the frequency band.
|
|
*/
|
|
extern System.onEqBandChanged(int band, int newvalue);
|
|
|
|
/**
|
|
onEqPreampChanged()
|
|
|
|
Hookable. Event happens when the equalizer pre-amp has changed
|
|
values. Range of the value is from -127 to +127.
|
|
|
|
@param newvalue The new pre-amp value.
|
|
*/
|
|
extern System.onEqPreampChanged(int newvalue);
|
|
|
|
/**
|
|
onEqChanged()
|
|
|
|
Hookable. Event happens when the EQ is switched on or off.
|
|
0 means the EQ was turned off. 1 means it was turned on.
|
|
You might want to use true and false to verify this, it's a bit
|
|
more elegant. :)
|
|
|
|
@param newstatus The new status of the EQ.
|
|
*/
|
|
extern System.onEqChanged(int newstatus);
|
|
|
|
extern System.onEqFreqChanged(int isiso); //Requires 5.51
|
|
|
|
/**
|
|
onVolumeChanged()
|
|
|
|
Hookable. Event happens when the volume was changed.
|
|
The range of the volume is from 0 to 255.
|
|
|
|
@param newvol The new volume value.
|
|
*/
|
|
extern System.onVolumeChanged(int newvol);
|
|
|
|
/**
|
|
onSeek()
|
|
|
|
Hookable. Event happens when the user seeks
|
|
to a position in the track.
|
|
|
|
@param newpos The seekers new position.
|
|
*/
|
|
extern System.onSeek(int newpos);
|
|
|
|
/**
|
|
getContainer()
|
|
|
|
@ret The requested container.
|
|
@param container_id The containers identifier string.
|
|
*/
|
|
extern Container System.getContainer(String container_id);
|
|
|
|
/**
|
|
newDynamicContainer()
|
|
|
|
@ret The new container.
|
|
@param container_id The identifier for the container you want to create.
|
|
*/
|
|
extern Container System.newDynamicContainer(String container_id);
|
|
|
|
/**
|
|
newGroup()
|
|
|
|
@ret The new group.
|
|
@param group_id The identifier for the group you want to create.
|
|
*/
|
|
extern Group System.newGroup(String group_id);
|
|
|
|
extern Layout System.newGroupAsLayout(String group_id);
|
|
|
|
/**
|
|
getNumContainers()
|
|
|
|
Get the number of containers currently created.
|
|
|
|
@ret The number of containers.
|
|
*/
|
|
extern Int System.getNumContainers();
|
|
|
|
/**
|
|
enumContainer()
|
|
|
|
Returns the name of the container associated with it's number.
|
|
Use getNumContainers() to fetch the number of containers present.
|
|
The containers are numbered from 0 to the value returned by getNumContainers().
|
|
|
|
@ret The name of the specified container.
|
|
@param num The container's number for which you want to know the name.
|
|
*/
|
|
extern Container System.enumContainer(Int num);
|
|
|
|
extern String system.enumEmbedGUID(int num); //TODO
|
|
|
|
/**
|
|
getWac()
|
|
|
|
Gets the reference to the wac identified by the guid sent.
|
|
|
|
@ret The requested WAC.
|
|
@param wac_guid The WAC's GUID.
|
|
*/
|
|
deprecated extern Wac System.getWac(String wac_guid);
|
|
|
|
/**
|
|
messageBox()
|
|
|
|
Creates a message box.
|
|
The flag paramater lets you set the style of the message box.
|
|
Just use the OR bitwise operator to set the style you want.
|
|
Here's a list of the flags you can use:
|
|
|
|
MSGBOX_OK Adds an OK button. (1)
|
|
MSGBOX_CANCEL Adds a CANCEL button. (2)
|
|
MSGBOX_YES Adds a YES button. (4)
|
|
MSGBOX_NO Adds a NO button. (8)
|
|
MSGBOX_ALL Adds ALL buttons. (16)
|
|
MSGBOX_NEXT Adds a NEXT button. (32)
|
|
MSGBOX_PREVIOUS Adds a PREVIOUS button. (64)
|
|
|
|
Note that the notanymore_id parameter stores the users answer in the
|
|
configuration file with the entry name specified by it's value.
|
|
|
|
@ret The value of the button that was pressed (example: if OK is pressed, 1 is returned).
|
|
@param message The message you want to display.
|
|
@param msgtitle The title of the message box.
|
|
@param flag The message box style you want.
|
|
@param notanymore_id Configuration item name in which to store the users answer.
|
|
*/
|
|
extern Int System.messageBox(String message, String msgtitle, Int flag, String notanymore_id);
|
|
|
|
/**
|
|
getPlayItemString()
|
|
|
|
@ret The name of what is playing.
|
|
*/
|
|
extern String System.getPlayItemString();
|
|
|
|
/**
|
|
getPlayItemLength()
|
|
|
|
Get the length of the track currently playing, in milliseconds.
|
|
|
|
@ret Length of the track, in seconds.
|
|
*/
|
|
extern Int System.getPlayItemLength();
|
|
|
|
/**
|
|
getPlayItemMetaDataString()
|
|
|
|
Get metadata for the track currently playing. The metadata field names that
|
|
are available are the following:
|
|
|
|
title
|
|
album
|
|
artist
|
|
albumartist
|
|
comment
|
|
year
|
|
composer
|
|
bitrate
|
|
srate
|
|
stereo
|
|
vbr
|
|
replaygain_track_gain
|
|
replaygain_album_gain
|
|
replaygain_track_peak
|
|
replaygain_album_peak
|
|
gain
|
|
genre
|
|
track
|
|
length
|
|
disc
|
|
bpm
|
|
conductor
|
|
key
|
|
mood
|
|
subtitle
|
|
lyricist
|
|
ISRC
|
|
media
|
|
remixer
|
|
encoder
|
|
publisher
|
|
tool
|
|
pregap
|
|
postgap
|
|
numsamples
|
|
|
|
|
|
@ret The requested metadata.
|
|
@param metadataname The name of the metadata field you want to read.
|
|
*/
|
|
extern String System.getPlayItemMetaDataString(String metadataname);
|
|
extern String System.getMetaDataString(String filename, String metadataname); // Requires 5.53
|
|
extern String System.getPlayItemDisplayTitle();
|
|
|
|
extern Int System.getCurrentTrackRating(); //Requires 5.5
|
|
extern System.onCurrentTrackRated(int rating); //Requires 5.5
|
|
extern System.setCurrentTrackRating(int rating); //Requires 5.5
|
|
|
|
/**
|
|
getExtFamily()
|
|
|
|
This one still return the same as getDecoderName()
|
|
|
|
//Gets registered family for given extension (i.e. mp3 -> "Audio")
|
|
|
|
@ret The registered family for given extension.
|
|
@param ext The extension in question.
|
|
*/
|
|
extern String System.getExtFamily(String ext);
|
|
|
|
extern String system.getDecoderName(string playitem);
|
|
|
|
/**
|
|
playFile()
|
|
|
|
Play the requested file. Path and filename are required
|
|
with proper extension (example: playFile("c:\music\mp3\file.mp3"); ).
|
|
It also works with URL's (example: playFile("http://myshoutcast.com:8000"); ).
|
|
|
|
@param playitem The path and filename to play.
|
|
*/
|
|
extern System.playFile(String playitem);
|
|
|
|
extern Int System.getAlbumArt(String playitem); //Requires 5.5 // Will return 1 if an album art has been downloaded, otherwise 0
|
|
|
|
/**
|
|
downloadMedia()
|
|
|
|
Hookable. Downloads a file from url and saves it as destination_filename.
|
|
If destinationPath is "" it will be saved in CD Ripping dir (=getDownloadPath()).
|
|
|
|
@param url the file to be downloaded
|
|
@param destinationPath the path you want to store the file
|
|
@param wantAddToML set true if you wnt to add the file to ML database
|
|
@param notifyDownloadsList set true in order to list the download in <DownloadsLis/> Object
|
|
*/
|
|
extern System.downloadMedia(String url, String destinationPath, boolean wantAddToML, boolean notifyDownloadsList); // Requires 5.54
|
|
deprecated extern System.downloadURL(String url, String destination_filename, String progress_dialog_title); //Requires 5.5 // destination_filename is just a dummy parameter as well as progress_dialog_title - use download() instead
|
|
|
|
extern System.onDownloadFinished(String url, boolean success, String filename); // Requires 5.53
|
|
extern String System.getDownloadPath(); // Requires 5.53 // returns the CD Ripping Directory
|
|
extern System.setDownloadPath(String new_path); // Requires 5.53 // Sets the CD Ripping Directory
|
|
|
|
/**
|
|
enqueueFile()
|
|
|
|
Enqueque the requested file. Path and filename are required
|
|
with proper extension (example: playFile("c:\music\mp3\file.mp3"); ).
|
|
It also works with URL's (example: playFile("http://myshoutcast.com:8000"); ).
|
|
|
|
@param playitem The path and filename to play.
|
|
*/
|
|
extern System.enqueueFile(String playitem); //Requires 5.5
|
|
|
|
/**
|
|
getLeftVuMeter()
|
|
|
|
Get the value of the left vu meter.
|
|
Range is from 0 to 255. Linear.
|
|
|
|
@ret The value of the left vu meter.
|
|
*/
|
|
extern Int System.getLeftVuMeter();
|
|
|
|
/**
|
|
getRightVuMeter()
|
|
|
|
Get the value of the right vu meter.
|
|
Range is from 0 to 255. Linear.
|
|
|
|
@ret The value of the left vu meter.
|
|
*/
|
|
extern Int System.getRightVuMeter();
|
|
|
|
/**
|
|
getVolume()
|
|
|
|
Get the current volume. Range is from 0 to 255.
|
|
|
|
@ret The current volume.
|
|
*/
|
|
extern Int System.getVolume();
|
|
|
|
/**
|
|
setVolume()
|
|
|
|
Set the volume to the desired value.
|
|
Range is from 0 to 255.
|
|
|
|
@param vol The desired volume value.
|
|
*/
|
|
extern System.setVolume(Int vol);
|
|
|
|
/**
|
|
play()
|
|
|
|
Trigger the play event.
|
|
*/
|
|
extern System.play();
|
|
|
|
/**
|
|
stop()
|
|
|
|
Trigger the stop event.
|
|
*/
|
|
extern System.stop();
|
|
|
|
/**
|
|
pause()
|
|
|
|
Trigger the pause event.
|
|
*/
|
|
extern System.pause();
|
|
|
|
/**
|
|
next()
|
|
|
|
Trigger the next event.
|
|
*/
|
|
extern System.next();
|
|
|
|
/**
|
|
previous()
|
|
|
|
Trigger the previous event.
|
|
*/
|
|
extern System.previous();
|
|
|
|
/**
|
|
eject()
|
|
|
|
Trigger the eject event.
|
|
*/
|
|
extern System.eject();
|
|
|
|
/**
|
|
seekTo()
|
|
|
|
Seek to the desired position in the track. Range is from
|
|
0 to SONG LENGTH (in milliseconds).
|
|
*/
|
|
extern System.seekTo(Int pos);
|
|
|
|
/**
|
|
getPosition()
|
|
|
|
Get the current position in the track currently playing,
|
|
in milliseconds.
|
|
|
|
@ret The current position in the track.
|
|
*/
|
|
extern Int System.getPosition();
|
|
|
|
/**
|
|
setEqBand()
|
|
|
|
Sets the requested equalizer band to the specified value.
|
|
The bands are numbered from 0 (60Hz) to 9 (16kHz) and
|
|
each range from -127 to +127.
|
|
|
|
@param band The EQ band to set.
|
|
@param value The desired value for the specified band.
|
|
*/
|
|
extern System.setEqBand(int band, Int value);
|
|
|
|
/**
|
|
setEqPreamp()
|
|
|
|
Set the equalizer pre-amp to the desired value.
|
|
Range is from -127 to +127 (0 means no preamp).
|
|
|
|
@param value The desired value for the pre-amp.
|
|
*/
|
|
extern System.setEqPreamp(Int value);
|
|
|
|
/**
|
|
Set the equalizer to the desired state. On or off.
|
|
0 is off, 1 is on.
|
|
|
|
@param onoff The desired state for the eq.
|
|
*/
|
|
extern System.setEq(Int onoff);
|
|
|
|
/**
|
|
getEqBand()
|
|
|
|
Get the value of an equalizer band. The bands
|
|
are numbered from 0 (60Hz) to 9 (16kHz). The return
|
|
value range is from -127 to +127.
|
|
|
|
@ret The value of the band.
|
|
@param band The eq band number you want to get.
|
|
*/
|
|
extern Int System.getEqBand(int band);
|
|
|
|
/**
|
|
getEqPreamp()
|
|
|
|
Get the equalizer preamp value. The value range is
|
|
from -127 to +127 (0 means no preamp).
|
|
|
|
@ret The preamp's current value.
|
|
*/
|
|
extern int System.getEqPreamp();
|
|
|
|
/**
|
|
getEq()
|
|
|
|
Get the equalizer state. 0 for off, 1 for on.
|
|
Remember to compare return value to true and false.
|
|
|
|
@ret The EQ's state.
|
|
*/
|
|
extern int System.getEq();
|
|
|
|
/**
|
|
getMousePosX()
|
|
|
|
This returns the X position of the mouse in the screen,
|
|
using the screen coordinate system.
|
|
|
|
@ret The mouse's current X pos.
|
|
*/
|
|
extern int System.getMousePosX();
|
|
|
|
/**
|
|
getMousePosY()
|
|
|
|
This returns the Y position of the mouse in the screen,
|
|
using the screen coordinate system.
|
|
|
|
@ret The mouse's current Y pos.
|
|
*/
|
|
extern int System.getMousePosY();
|
|
|
|
/**
|
|
integerToString()
|
|
|
|
Get the string representation of an integer.
|
|
|
|
@ret The string equivalent of the integer.
|
|
@param value The integer to change into a string.
|
|
*/
|
|
extern String System.integerToString(Int value);
|
|
|
|
/**
|
|
StringToInteger()
|
|
|
|
Get the integer representation of a string.
|
|
|
|
@ret The integer equivalent of the string.
|
|
@param str The string to change into an integer.
|
|
*/
|
|
extern Int System.StringToInteger(String str);
|
|
|
|
/**
|
|
floatToString()
|
|
|
|
Get the string representation of a floating point number.
|
|
|
|
@ret The string representation of the float number.
|
|
@param value The float to convert.
|
|
@param ndigits Number of digits after the decimal point you want.
|
|
*/
|
|
extern String System.floatToString(float value, int ndigits);
|
|
|
|
/**
|
|
stringToFloat()
|
|
|
|
Get the floating point representation of a string.
|
|
|
|
@ret The float representation of the string.
|
|
@param str The string to convert.
|
|
*/
|
|
extern Float System.stringToFloat(String str);
|
|
|
|
/**
|
|
integerToLongTime()
|
|
|
|
Convert a time in seconds to a HH:MM:SS value.
|
|
|
|
@ret The string representation of the time (HH:MM:SS).
|
|
@param value Timestamp to use.
|
|
*/
|
|
extern String System.integerToLongTime(Int value);
|
|
|
|
/**
|
|
integerToTime()
|
|
|
|
Convert a time in seconds to a MM:SS value.
|
|
|
|
@ret The string representation of the time (MM:SS).
|
|
@param value Timestamp to use.
|
|
*/
|
|
extern String System.integerToTime(Int value);
|
|
|
|
extern String System.dateToTime(Int datetime); // prints the time from a date with the same format as integerToTime
|
|
extern String System.dateToLongTime(Int datetime); // prints the time from a date with the same format as integerToLongTime
|
|
extern String System.formatDate(Int datetime); // formats the date according to the locales - short date format
|
|
extern String System.formatLongDate(Int datetime); // formats the date according to the locales - long date format
|
|
extern Int System.getDateYear(Int datetime); // returns the datetime's year since 1900
|
|
extern Int System.getDateMonth(Int datetime); // returns the datetime's month (0-11)
|
|
extern Int System.getDateDay(Int datetime); // returns the datetime's day of the month (1-31)
|
|
extern Int System.getDateDow(Int datetime); // returns the datetime's day of the week (0-6)
|
|
extern Int System.getDateDoy(Int datetime); // returns the datetime's day of the year (0-365)
|
|
extern Int System.getDateHour(Int datetime); // returns the datetime's hour (0-23)
|
|
extern Int System.getDateMin(Int datetime); // returns the datetime's minutes (0-59)
|
|
extern Int System.getDateSec(Int datetime); // returns the datetime's seconds (0-59)
|
|
extern Int System.getDateDst(Int datetime); // returns the datetime's daylight savings flag
|
|
extern Int System.getDate(); // returns the datetime, use with the above functions
|
|
|
|
/**
|
|
strmid()
|
|
|
|
Get a substring from a string.
|
|
|
|
@ret The substring.
|
|
@param str The string.
|
|
@param start The start position.
|
|
@param len The length of the string to extract, from start position.
|
|
*/
|
|
extern String System.strmid(String str, Int start, Int len);
|
|
|
|
/**
|
|
strleft()
|
|
|
|
Get a substring from a string, starting from the left.
|
|
|
|
@ret The substring.
|
|
@param str The string.
|
|
@param nchars The length of the string to extract, from the left.
|
|
*/
|
|
extern String System.strleft(string str, int nchars);
|
|
|
|
/**
|
|
strright()
|
|
|
|
Get a substring from a string, starting from the right. Since
|
|
the start point is the right of the string (or the end). It will
|
|
extract the string starting from the END going towards the BEGINNING.
|
|
|
|
@ret The substring.
|
|
@param str The string.
|
|
@param nchars The length of the string to extract, from the right.
|
|
*/
|
|
extern string System.strright(string str, int nchars);
|
|
|
|
/**
|
|
strsearch()
|
|
|
|
Search a string for any occurance of substring. If the substring was
|
|
found in the string, it will return the position of the substring in
|
|
the string searched. If the substring is not found, the return value
|
|
is -1.
|
|
|
|
@ret Position at which the substring was found.
|
|
@param str The string to search in.
|
|
@param substr The substring to find.
|
|
*/
|
|
extern int System.strsearch(string str, string substr);
|
|
|
|
/**
|
|
strlen()
|
|
|
|
Returns the length of the string.
|
|
|
|
@ret The length of the string.
|
|
@param str The string.
|
|
*/
|
|
extern int System.strlen(string str);
|
|
|
|
/**
|
|
strupper()
|
|
|
|
Convert a string to all uppercase.
|
|
|
|
@ret The uppercase string.
|
|
@param str The string to uppercase.
|
|
*/
|
|
extern string System.strupper(string str);
|
|
|
|
/**
|
|
strlower()
|
|
|
|
Convert a string to all lowercase.
|
|
|
|
@ret The lowercase string.
|
|
@param str The string to lowercase.
|
|
*/
|
|
extern string System.strlower(string str);
|
|
|
|
/**
|
|
urlEncode()
|
|
|
|
URL Encode a string. Characters that are NOT encoded
|
|
are: All letters, All digits, underscore (_), dash (-) and
|
|
period (.).
|
|
|
|
@ret The URL encoded string.
|
|
@param url The string to URL encode.
|
|
*/
|
|
extern string System.urlEncode(string url);
|
|
|
|
extern string System.urlDecode(string url); // Requires 5.54
|
|
|
|
/**
|
|
parseATF()
|
|
|
|
Pass a string through the ATF parser
|
|
|
|
@ret The ATF encoded string.
|
|
@param topass The string to ATF encode.
|
|
*/
|
|
//extern string System.parseATF(string topass); // To be done
|
|
|
|
/**
|
|
removePath()
|
|
|
|
Remove the path from a full filename. (example:
|
|
c:\music\mp3\test.mp3 -> test.mp3)
|
|
Also works on URLs.
|
|
|
|
@ret The filename with the path removed.
|
|
@param str The fullpath of a file.
|
|
*/
|
|
extern string System.removePath(string str);
|
|
|
|
/**
|
|
getPath()
|
|
|
|
Gets the path from a full filename. (example:
|
|
c:\music\mp3\test.mp3 -> c:\music\mp3)
|
|
Also works on URLs.
|
|
|
|
@ret The path with the filename removed.
|
|
@param str The fullpath of a file.
|
|
*/
|
|
extern string System.getPath(string str);
|
|
|
|
/**
|
|
getExtension()
|
|
|
|
Gets the extension from a filename. (example:
|
|
c:\music\mp3\test.mp3 -> mp3)
|
|
Also works on URLs.
|
|
|
|
@ret The extension of the filename.
|
|
@param str The fullpath of a file.
|
|
*/
|
|
extern string System.getExtension(string str);
|
|
|
|
/**
|
|
getToken()
|
|
|
|
Retreive a token from a list of tokens seperated by separator.
|
|
The index starts at 0, not 1, so be careful.
|
|
Here's a short example:
|
|
getToken("1,2,3,4,5", ",", 3);
|
|
Would return, 3. If the token you ask for doesn't exist, an
|
|
empty string is returned.
|
|
|
|
@ret The token requested.
|
|
@param str The tokenenized string.
|
|
@param separator The separator to use.
|
|
@param tokennum The token to retreive.
|
|
*/
|
|
extern string System.getToken(string str, string separator, int tokennum);
|
|
|
|
/**
|
|
sin()
|
|
|
|
Takes an angle in radians and returns the ratio of two sides of a right triangle.
|
|
The ratio is the length of the side opposite the angle divided by the length
|
|
of the hypotenuse. The result range is from -1 to 1.
|
|
|
|
Converting from degrees to radians can be done by multiplying degrees by PI/180.
|
|
|
|
@ret The sine value of the angle.
|
|
@param value The angle for which you want to know the sine value.
|
|
*/
|
|
extern double System.sin(double value);
|
|
|
|
/**
|
|
cos()
|
|
|
|
Takes an angle in radians and returns the ratio of the two sides of a right triangle.
|
|
The ratio is the length of the side adjacent to the angle divided by the length of the
|
|
hypotenuse. The result is range is from -1 to 1.
|
|
|
|
@ret The cosine value of the angle.
|
|
@param value The angle for which you want to know the cosine value.
|
|
*/
|
|
extern double System.cos(double value);
|
|
|
|
/**
|
|
tan()
|
|
|
|
Takes an angle in radians and returns the ratio between two sides of a right triangle.
|
|
The ratio is sin(x) divided by cos(x).
|
|
|
|
@ret The tangent value of the angle.
|
|
@param value The angle for which you want to know the tangent value.
|
|
*/
|
|
extern double System.tan(double value);
|
|
|
|
/**
|
|
asin()
|
|
|
|
Takes a sine value ranging from -1 to 1 and returns the angle in radians.
|
|
The return value ranges from -PI/2 to +PI/2.
|
|
|
|
@ret The angle in radians.
|
|
@param value The sine value for which you want to know the angle.
|
|
*/
|
|
extern double System.asin(double value);
|
|
|
|
/**
|
|
acos()
|
|
|
|
Takes a cosine value ranging from -1 to 1 and returns the angle in radians.
|
|
The return value ranges from -PI/2 to +PI/2.
|
|
|
|
@ret The angle in radians.
|
|
@param value The cosine value for which you want to know the angle.
|
|
*/
|
|
extern double System.acos(double value);
|
|
|
|
/**
|
|
atan()
|
|
|
|
Takes an angle in radians and returns the ration between two sides of a right triangle.
|
|
The ratio is cos(x) divided by sin(x).
|
|
|
|
@ret The arc tangent value of the angle.
|
|
*/
|
|
extern double System.atan(double value);
|
|
|
|
/**
|
|
atan2()
|
|
|
|
@ret The arctangent of y/x.
|
|
*/
|
|
extern double System.atan2(double y, double x);
|
|
|
|
|
|
/**
|
|
pow()
|
|
|
|
Elevate a number to the N'th power.
|
|
|
|
@ret The number
|
|
@param value The number you want to elevate to the N power.
|
|
@param pvalue The power to which you want to elevate the number.
|
|
*/
|
|
extern double System.pow(double value, double pvalue);
|
|
|
|
/**
|
|
sqr()
|
|
|
|
Get the square of a number.
|
|
|
|
@ret The number, squared.
|
|
@param value The number for which you want the square value.
|
|
*/
|
|
extern double System.sqr(double value);
|
|
|
|
extern double System.log10(double value);
|
|
extern double System.ln(double value);
|
|
|
|
/**
|
|
sqrt()
|
|
|
|
Get the square root of a number.
|
|
|
|
@ret The square root of the number.
|
|
@param value The number for which you want the square root value.
|
|
*/
|
|
extern double System.sqrt(double value);
|
|
|
|
/**
|
|
random()
|
|
|
|
Get a randomely generated number. The random number will not
|
|
be bigger than the max value indicated. Smallest value is 0.
|
|
|
|
@ret The random number.
|
|
@param max The maximum value of the random number to return.
|
|
*/
|
|
extern int System.random(int max);
|
|
|
|
/**
|
|
setPrivateString()
|
|
|
|
Create a private config entry for your script, of String type.
|
|
|
|
@param section The section for the entry.
|
|
@param item The item name for the entry.
|
|
@param value The value of the entry.
|
|
*/
|
|
extern System.setPrivateString(string section, string item, string value);
|
|
|
|
/**
|
|
setPrivateInt()
|
|
|
|
Create a private config entry for your script, of Int type.
|
|
|
|
@param section The section for the entry.
|
|
@param item The item name for the entry.
|
|
@param value The value of the entry.
|
|
*/
|
|
extern System.setPrivateInt(string section, string item, int value);
|
|
|
|
/**
|
|
getPrivateString()
|
|
|
|
Read a private config entry of String type. Returns
|
|
the specified default value if the section and item isn't
|
|
found.
|
|
|
|
@ret The value of the config entry.
|
|
@param section The section from which to read the entry.
|
|
@param item The name of the item to read.
|
|
@param defvalue The default value to return if no item is found.
|
|
*/
|
|
extern String System.getPrivateString(String section, String item, String defvalue);
|
|
|
|
/**
|
|
getPrivateInt()
|
|
|
|
Read a private config entry of Integer type. Returns
|
|
the specified default value if the section and item isn't
|
|
found.
|
|
|
|
@ret The value of the config entry.
|
|
@param section The section from which to read the entry.
|
|
@param item The name of the item to read.
|
|
@param defvalue The defautl value to return if no item is found.
|
|
*/
|
|
extern Int System.getPrivateInt(String section, String item, Int defvalue);
|
|
|
|
/**
|
|
setPublicString()
|
|
|
|
Create a public config entry for your script, of String type.
|
|
|
|
@param item The item name for the entry.
|
|
@param value The value of the entry.
|
|
*/
|
|
extern System.setPublicString(String item, String value);
|
|
|
|
/**
|
|
setPublicInt()
|
|
|
|
Create a public config entry for your script, of Int type.
|
|
|
|
@param item The item name of the entry.
|
|
@param value The value of the entry.
|
|
*/
|
|
extern System.setPublicInt(String item, Int value);
|
|
|
|
/**
|
|
getPublicString()
|
|
|
|
Read a public config entry of String type. Returns
|
|
the specified default value if the item isn't found.
|
|
|
|
@ret The value of the config entry.
|
|
@param item The item name to read.
|
|
@param defvalue The default value to return if no item is found.
|
|
*/
|
|
extern String System.getPublicString(String item, String defvalue);
|
|
|
|
/**
|
|
getPublicInt()
|
|
|
|
Read a public config entry of Integer type. Returns
|
|
the specified default value if the item isn't found.
|
|
|
|
@ret The value of the config entry.
|
|
@param item The item name to read.
|
|
@param defvalue The default value to return if no item is found.
|
|
*/
|
|
extern Int System.getPublicInt(String item, Int defvalue);
|
|
|
|
/**
|
|
getParam()
|
|
|
|
Get the parameters with which the script is called.
|
|
This is the 'param="..."' attribute in the <script ...>
|
|
skin XML tag.
|
|
|
|
@ret The parameter for the script.
|
|
*/
|
|
extern String System.getParam();
|
|
|
|
/**
|
|
getScriptGroup()
|
|
|
|
Get the group in which the script is instantiated. Returns
|
|
Null if it's not instantiated in a group.
|
|
|
|
@ret
|
|
*/
|
|
extern Group System.getScriptGroup();
|
|
|
|
/**
|
|
getViewPortWidth()
|
|
|
|
Get the user's screen width in pixels.
|
|
|
|
@ret The width of the user's screen.
|
|
*/
|
|
extern Int System.getViewportWidth();
|
|
extern Int System.getViewportWidthFromGuiObject(GuiObject g); //Requires 5.5
|
|
extern Int System.getViewportWidthFromPoint(int x, int y);
|
|
|
|
extern Int System.getMonitorWidth(); //Requires 5.5
|
|
extern Int System.getMonitorWidthFromPoint(int x, int y); //Requires 5.5
|
|
extern Int System.getMonitorWidthFromGuiObject(GuiObject g); //Requires 5.631
|
|
|
|
//todo/ extern System.onMouseMove(int x, int y);
|
|
|
|
/**
|
|
getViewPortHeight()
|
|
|
|
Get the user's screen height in pixels.
|
|
|
|
@ret The height of the user's screen.
|
|
*/
|
|
extern Int System.getViewportHeight();
|
|
extern Int System.getViewportHeightFromGuiObject(GuiObject g); //Requires 5.5
|
|
extern Int System.getViewportHeightFromPoint(int x, int y);
|
|
|
|
extern Int System.getMonitorHeight(); //Requires 5.5
|
|
extern Int System.getMonitorHeightFromPoint(int x, int y); //Requires 5.5
|
|
extern Int System.getMonitorHeightFromGuiObject(GuiObject g); //Requires 5.631
|
|
|
|
extern Int System.getMonitorLeft(); //Requires 5.631
|
|
extern Int System.getMonitorLeftFromGuiObject(GuiObject g); //Requires 5.5
|
|
extern Int System.getMonitorLeftFromPoint(int x, int y); //Requires 5.5
|
|
|
|
extern Int System.getMonitorTop(); //Requires 5.631
|
|
extern Int System.getMonitorTopFromGuiObject(GuiObject g); //Requires 5.631
|
|
extern Int System.getMonitorTopFromPoint(int x, int y); //Requires 5.631
|
|
|
|
extern Int System.getViewportLeft();
|
|
extern Int System.getViewportLeftFromGuiObject(GuiObject g); //Requires 5.5
|
|
extern Int System.getViewportLeftFromPoint(int x, int y);
|
|
|
|
extern Int System.getViewportTop();
|
|
extern Int System.getViewportTopFromGuiObject(GuiObject g); //Requires 5.5
|
|
extern Int System.getViewportTopFromPoint(int x, int y);
|
|
|
|
/**
|
|
debugString()
|
|
|
|
Send a debug message to the Wasabi Console.
|
|
The severity ranges from 0 (not serious) to 9 (very serious).
|
|
|
|
@param str The debug message.
|
|
@param severity The severity of the error.
|
|
*/
|
|
extern System.debugString(String str, Int severity);
|
|
|
|
/**
|
|
ddeSend()
|
|
|
|
Send a DDE message to an application. The minimum
|
|
interval between messages is specified in milliseconds.
|
|
Here's an example:
|
|
|
|
ddeSend("mIRC", "/msg #channel I'm using Winamp3", 300);
|
|
|
|
@param application The DDE server name of the application.
|
|
@param command The command to send.
|
|
@param mininterval The minimum interval to respect between messages (in ms).
|
|
*/
|
|
extern System.ddeSend(String application, String command, Int mininterval);
|
|
|
|
/**
|
|
onLookForComponent()
|
|
|
|
Hookable. Event happens when the component with the
|
|
specified GUID is going to be shown. Don't forget
|
|
to return the component when you're done doing what
|
|
you want to do (example: animate something).
|
|
|
|
@ret The component requested.
|
|
@param guid The requested components GUID.
|
|
|
|
*/
|
|
extern WindowHolder System.onLookForComponent(String guid);
|
|
|
|
/**
|
|
getCurAppLeft()
|
|
|
|
Get the applications current left coordinate in the screen,
|
|
using the screen coordinate system.
|
|
|
|
@ret The left coordinate of the application.
|
|
*/
|
|
extern Int System.getCurAppLeft();
|
|
|
|
/**
|
|
getCurAppTop()
|
|
|
|
Get the applications current top coordinate in the screen,
|
|
using the screen coordinate system.
|
|
|
|
@ret The top coordinate of the application.
|
|
*/
|
|
extern Int System.getCurAppTop();
|
|
|
|
/**
|
|
getCurAppWidth()
|
|
|
|
Get the applications current window width, in pixels.
|
|
|
|
@ret The width of the application window.
|
|
*/
|
|
extern Int System.getCurAppWidth();
|
|
|
|
/**
|
|
getCurAppHeight()
|
|
|
|
Get the applications current window height, in pixels.
|
|
|
|
@ret The height of the application window.
|
|
*/
|
|
extern Int System.getCurAppHeight();
|
|
|
|
/**
|
|
isAppActive()
|
|
|
|
Get the current status of the application. If it's active,
|
|
it means the application has focus. True is active, false is
|
|
inactive.
|
|
|
|
@ret The application's status.
|
|
*/
|
|
extern Boolean System.isAppActive();
|
|
|
|
/**
|
|
getSkinName()
|
|
|
|
Get the skin name for the loaded skin.
|
|
|
|
@ret The skin's name.
|
|
*/
|
|
extern String System.getSkinName();
|
|
extern System.switchSkin(String skinname);
|
|
extern Int System.isLoadingSkin(); // 1 if loading, -1 if UNloading, 0 otherwise
|
|
extern System.lockUI();
|
|
extern System.unlockUI();
|
|
|
|
/**
|
|
getMainBrowser()
|
|
|
|
Get a reference to the main browser object.
|
|
This is the browser object that's defined with
|
|
mainmb="1" in the skin XML.
|
|
|
|
@ret A reference to the main browser object.
|
|
*/
|
|
extern Browser System.getMainBrowser();
|
|
extern System.popMainBrowser();
|
|
extern System.navigateUrl(String url);
|
|
extern System.navigateUrlBrowser(String url); //Requires 5.53 // will call an onOpenUrl requuest and then navigate to an extern browser, can also be used to open nowplaying
|
|
|
|
extern Boolean System.onOpenURL(string url); //Requires 5.5 // called everytime winamp wants to open a website in an extern browser, return 1 to cancel this opening and open in your browser
|
|
|
|
/**
|
|
isObjectValid()
|
|
|
|
Verifies if an object is valid. You can also verify
|
|
this using the Null object. True means the object is valid,
|
|
false means it isn't.
|
|
|
|
@ret The validity of the object.
|
|
@param o The object you want to verify.
|
|
*/
|
|
extern Boolean System.isObjectValid(Object o);
|
|
|
|
/**
|
|
integer()
|
|
|
|
Takes a Double and returns the closest integer representation.
|
|
|
|
@ret The integer representation of the double.
|
|
@param d The double for which you want an integer representation.
|
|
*/
|
|
extern Int System.integer(Double d);
|
|
extern Double System.frac(Double d);
|
|
|
|
/**
|
|
getTimeOfDay()
|
|
|
|
Read the current time of the day. Returns a number that's
|
|
the number of milliseconds since the start of the day (0:00).
|
|
|
|
@ret The number of milliseconds since midnight.
|
|
*/
|
|
extern Int System.getTimeOfDay();
|
|
|
|
/**
|
|
setMenuTransparency()
|
|
|
|
Set the menu's transparency value (alpha blending). Ranges
|
|
from 0 to 255. 0 being totally transparent and 255 being
|
|
totally opaque.
|
|
|
|
@param alphavalue The transparency value to set.
|
|
*/
|
|
extern System.setMenuTransparency(int alphavalue);
|
|
|
|
extern Boolean System.onGetCancelComponent(String guid, boolean goingvisible);
|
|
|
|
#define STATUS_PAUSED -1
|
|
#define STATUS_STOPPED 0
|
|
#define STATUS_PLAYING 1
|
|
|
|
/**
|
|
getStatus()
|
|
|
|
returns the status of the main player core.
|
|
|
|
@ret STATUS_PAUSED (-1) if paused, STATUS_STOPPED (0) if stopped, STATUS_PLAYING (1) if playing.
|
|
*/
|
|
extern Int System.getStatus();
|
|
|
|
#define VK_SHIFT 16
|
|
#define VK_CONTROL 17
|
|
#define VK_ALT 18
|
|
|
|
/**
|
|
Int isKeyDown(int vk_code)
|
|
|
|
Checks if a virtual key (like VK_CONTROL, VK_SHIFT, VK_ALT) is pressed.
|
|
|
|
@ret 1 if key is pressed, 0 if not.
|
|
*/
|
|
|
|
extern Int System.isKeyDown(int vk_code);
|
|
|
|
/**
|
|
setClipboardText(String text)
|
|
|
|
Sets the given text to the clipboard.
|
|
*/
|
|
|
|
extern System.setClipboardText(String _text);
|
|
|
|
/**
|
|
String Chr(Int charnum)
|
|
|
|
Returns a string the ascii char.
|
|
*/
|
|
|
|
extern String System.Chr(Int charnum);
|
|
|
|
|
|
/**
|
|
translate
|
|
|
|
Takes a passed string and attempts to find a matching translation
|
|
of the skin as specified in wasabi.xml (if this is present).
|
|
|
|
@ret The translated string or the passed string if no translation present.
|
|
@param str The string to be compared for translation.
|
|
|
|
e.g. int wasabi.xml we have <translation from="Volume:" to="Volume: Happy" />
|
|
so on calling translate("Volume:") would give us "Volume: Happy"
|
|
*/
|
|
extern String System.translate(String str); // Requires 5.54
|
|
|
|
/**
|
|
getString
|
|
Returns a String from wasabi StringTable
|
|
|
|
@ret The translated string or "" if no translation present.
|
|
@param table The StringTable identifier, eg "nullsoft.bento"
|
|
@param id The id of the String (starting with 0)
|
|
*/
|
|
extern String System.getString(String table, int id); // Requires 5.54
|
|
|
|
/**
|
|
getLanguageId
|
|
Returns the Language Identifier (en-us or de-de).
|
|
|
|
@ret Language Identifier.
|
|
*/
|
|
extern String System.getLanguageId(); // Requires 5.54
|
|
|
|
|
|
// extlist should be like "jpeg files|*.jpg|all files|*.*||"
|
|
// note the extra | on the end
|
|
deprecated extern String System.selectFile(String extlist, String id, String prev_filename);
|
|
extern String System.selectFolder(String wnd_title, String wnd_info, String default_path); // Requires 5.53 // use wnd_title="" in order to display default system caption
|
|
extern System.systemMenu();
|
|
extern System.windowMenu();
|
|
extern System.triggerAction(GuiObject context, String actionname, String actionparam);
|
|
extern GuiObject System.showWindow(String guidorgroupid, String preferedcontainer, Boolean transient); // "" = default container, returns the hosted window
|
|
extern System.hideWindow(GuiObject hw); // hw = hosted window, returned by showWindow
|
|
extern System.hideNamedWindow(String guidorgroup); // hides the last created wnd with this guid/groupname
|
|
extern Boolean System.isNamedWindowVisible(String guidorgroup);
|
|
//extern System.setAtom(String atomname, Object object);
|
|
//extern Object System.getAtom(String atomname);
|
|
extern System.invokeDebugger();
|
|
extern int System.hasVideoSupport(); // requires 5.666 - returns 1 if video support is enabled in Winamp
|
|
extern Int System.isVideo();
|
|
extern Int System.isVideoFullscreen();
|
|
extern System.setVideoFullscreen(Boolean fullscreen); // requires 5.8
|
|
extern Int System.getIdealVideoWidth(); // -1 if video has never been open this session, otherwise the ideal width of the currently (or last) video played
|
|
extern Int System.getIdealVideoHeight(); // -1 if video has never been open this session, otherwise the ideal height of the currently (or last) video played
|
|
extern Int System.isMinimized();
|
|
extern System.minimizeApplication();
|
|
extern System.restoreApplication();
|
|
extern System.activateApplication();
|
|
extern Int System.getPlaylistLength(); // number of items in the playlist
|
|
extern Int System.getPlaylistIndex(); // currently playing item in the playlist (or next to play if stopped)
|
|
extern System.clearPlaylist(); //Requires 5.5
|
|
extern Boolean System.isDesktopAlphaAvailable();
|
|
extern Boolean System.isTransparencyAvailable();
|
|
extern Int System.onShowNotification(); // return 1 if you implement it
|
|
extern String System.getSongInfoText(); // same as what gets in a text object with display="SONGINFO"
|
|
extern String System.getSongInfoTextTranslated(); // same as what gets in a text object with display="SONGINFO_LOCALISE"
|
|
extern Int System.getVisBand(int channel, int band); // 0,1 / 0..75
|
|
extern Double System.getRuntimeVersion(); // returns the maki runtime version, up to 5.01 = 0.0, 5.02+ = 1.0
|
|
|
|
//extern Int System.isWa2ComponentVisible(String guid);
|
|
//extern System.hideWa2Component(String guid);
|
|
|
|
extern boolean system.isProVersion(); //Requires 5.5
|
|
extern String System.getWinampVersion(); //Requires 5.51
|
|
extern Int System.getBuildNumber(); //Requires 5.51
|
|
|
|
extern int System.getFileSize(String fullfilename); //Requires 5.51
|
|
|
|
//*****************************************************************************
|
|
// Container CLASS
|
|
//*****************************************************************************
|
|
/**
|
|
Container Class.
|
|
|
|
@short The container class enables you to control current containers and also create them.
|
|
@author Nullsoft Inc.
|
|
@ver 1.0
|
|
*/
|
|
|
|
/**
|
|
onSwitchToLayout()
|
|
|
|
Hookable. Event happens when a container is going to switch
|
|
from the currently active layout to another layout (newlayout).
|
|
|
|
@param newlayout The new layout that will be used.
|
|
*/
|
|
extern Container.onSwitchToLayout(Layout newlayout);
|
|
extern Container.onBeforeSwitchToLayout(Layout oldlayout, Layout newlayout);
|
|
extern Container.setXmlParam(String param, String value);
|
|
/**
|
|
onHideLayout()
|
|
|
|
Hookable. Event happens when a container is about to hide
|
|
the currently active layout (_layout).
|
|
|
|
@param _layout The layout that's going to be hidden.
|
|
*/
|
|
extern Container.onHideLayout(Layout _layout);
|
|
|
|
/**
|
|
onShowLayout()
|
|
|
|
Hookable. Event happens when a container is about to
|
|
show a layout (_layout).
|
|
|
|
@param _layout The layout about to be shown
|
|
*/
|
|
extern Container.onShowLayout(Layout _layout);
|
|
|
|
/**
|
|
getLayout()
|
|
|
|
Get the layout associated with the an id.
|
|
This corresponds to the "id=..." attribute in
|
|
the XML tag <layout .. />.
|
|
|
|
@ret The layout associated with the id.
|
|
@param layout_id The id of the layout you wish to retrieve.
|
|
*/
|
|
extern Layout Container.getLayout(String layout_id);
|
|
|
|
/**
|
|
getNumLayouts()
|
|
|
|
Get the number of layouts contained in the
|
|
container.
|
|
|
|
@ret The number of layouts.
|
|
*/
|
|
extern Int Container.getNumLayouts();
|
|
|
|
/**
|
|
enumLayout()
|
|
|
|
Get the layout by it's index number.
|
|
Range is from 0 to the value returned
|
|
by getNumLayouts() - 1.
|
|
|
|
@ret The layout.
|
|
@param num The index number of the layout you want.
|
|
*/
|
|
extern Layout Container.enumLayout(Int num);
|
|
|
|
/**
|
|
switchToLayout()
|
|
|
|
Switch to a perticular layout by using the
|
|
desired layout's id. This corresponds to the
|
|
"id=..." attribute in the XML tag <layout .. />.
|
|
|
|
@param layout_id The id of the layout to which you want to switch.
|
|
*/
|
|
extern Container.switchToLayout(String layout_id);
|
|
|
|
/**
|
|
show()
|
|
|
|
Trigger the show event.
|
|
*/
|
|
extern Container.show();
|
|
|
|
/**
|
|
hide()
|
|
|
|
Trigger the hide event.
|
|
*/
|
|
extern Container.hide();
|
|
// this one destroys it if the container is dynamic, or hides otherwise
|
|
extern Container.close();
|
|
|
|
/**
|
|
toggle()
|
|
|
|
Toggle the containers state between Shown / Hidden.
|
|
*/
|
|
extern Container.toggle();
|
|
|
|
/**
|
|
isDynamic()
|
|
|
|
Tells you if the current container is a dynamic
|
|
container or not. Values are true (1) for dynamic
|
|
false (0) for static.
|
|
|
|
@ret The container type (dynamic or static).
|
|
*/
|
|
extern Int Container.isDynamic();
|
|
|
|
extern Container.setName(String name);
|
|
extern String Container.getName(); //requires Winamp 5.53
|
|
extern String Container.getGuid(); //requires Winamp 5.53
|
|
extern Layout Container.getCurLayout();
|
|
extern Container.onAddContent(GuiObject wnd, String id, String guid); //requires Winamp 5.51
|
|
|
|
//*****************************************************************************
|
|
// WAC CLASS
|
|
//*****************************************************************************
|
|
/**
|
|
WAC Class.
|
|
Not used in Winamp5.
|
|
|
|
@short .
|
|
@author Nullsoft Inc.
|
|
@ver 1.0
|
|
*/
|
|
|
|
/**
|
|
getGuid()
|
|
|
|
Get the GUID of the WAC.
|
|
|
|
@ret The GUID of the WAC.
|
|
*/
|
|
deprecated extern String Wac.getGuid();
|
|
|
|
/**
|
|
getName()
|
|
|
|
Get the name of the WAC.
|
|
|
|
@ret The name of the WAC.
|
|
*/
|
|
deprecated extern String Wac.getName();
|
|
|
|
/**
|
|
sendCommand()
|
|
|
|
|
|
*/
|
|
deprecated extern Int Wac.sendCommand(String cmd, Int param1, Int param2, String param3);
|
|
|
|
/**
|
|
show()
|
|
|
|
Trigger the show event.
|
|
*/
|
|
deprecated extern Wac.show();
|
|
|
|
/**
|
|
hide()
|
|
|
|
Trigger the hide event.
|
|
*/
|
|
deprecated extern Wac.hide();
|
|
|
|
/**
|
|
isVisible()
|
|
|
|
|
|
*/
|
|
deprecated extern Boolean Wac.isVisible();
|
|
|
|
/**
|
|
onNotify()
|
|
|
|
|
|
*/
|
|
deprecated extern Wac.onNotify(String notifstr, Int a, Int b);
|
|
|
|
/**
|
|
onShow()
|
|
|
|
Hookable. The event happens when the WAC is about
|
|
to be shown.
|
|
*/
|
|
deprecated extern Wac.onShow();
|
|
|
|
/**
|
|
onHide()
|
|
|
|
Hookable. The event happens when the WAC is about
|
|
to be hidden.
|
|
*/
|
|
deprecated extern Wac.onHide();
|
|
|
|
/**
|
|
setStatusBar()
|
|
|
|
Set the status bars visibility.
|
|
Sending true will make the status bar
|
|
visible while sending false will hide
|
|
it.
|
|
|
|
@param onoff The status bars visibility.
|
|
*/
|
|
deprecated extern Wac.setStatusBar(Boolean onoff);
|
|
|
|
/**
|
|
getStatusBar()
|
|
|
|
Get the status bars visibility. True means
|
|
it's visible, false means it's hidden.
|
|
|
|
@ret The status bars visibility.
|
|
*/
|
|
deprecated extern Boolean Wac.getStatusBar();
|
|
|
|
//*****************************************************************************
|
|
// GUIOBJECT CLASS
|
|
//*****************************************************************************
|
|
/**
|
|
GuiObject Class.
|
|
|
|
@short .
|
|
@author Nullsoft Inc.
|
|
@ver 1.0
|
|
*/
|
|
|
|
/**
|
|
show()
|
|
|
|
Trigger the show event.
|
|
*/
|
|
extern GuiObject.show();
|
|
|
|
/**
|
|
hide()
|
|
|
|
Trigger the hide event.
|
|
*/
|
|
extern GuiObject.hide();
|
|
|
|
/**
|
|
isVisible()
|
|
|
|
Get the visibility status of the object.
|
|
False means it's hidden, true means it's
|
|
visible.
|
|
|
|
@ret The visibility status of the object.
|
|
*/
|
|
extern int GuiObject.isVisible();
|
|
|
|
/**
|
|
onSetVisible()
|
|
|
|
Hookable. Event happens when the visibility
|
|
status of the object is changed from visible to
|
|
hidden or vice-versa.
|
|
|
|
@param onoff The objects visibility status.
|
|
*/
|
|
extern GuiObject.onSetVisible(Boolean onoff);
|
|
|
|
/**
|
|
setAlpha()
|
|
|
|
Set the alphablending value of the object.
|
|
Value ranges from 0 (fully transparent) to
|
|
255 (fully opaque).
|
|
|
|
@param alpha The alpha value.
|
|
*/
|
|
extern GuiObject.setAlpha(int alpha);
|
|
|
|
/**
|
|
getAlpha()
|
|
|
|
Get the current alphablending value of
|
|
the object. Value ranges from 0 (fully
|
|
transparent) to 255 (fully opaque).
|
|
|
|
@ret The alpha value.
|
|
*/
|
|
extern int GuiObject.getAlpha();
|
|
|
|
/**
|
|
onLeftButtonUp()
|
|
|
|
Hookable. Event happens when the left mouse
|
|
button was previously down and is now up.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onLeftButtonUp(int x, int y);
|
|
|
|
/**
|
|
onLeftButtonDown()
|
|
|
|
Hookable. Event happens when the left mouse button
|
|
is pressed.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onLeftButtonDown(int x, int y);
|
|
|
|
/**
|
|
onRightButtonUp()
|
|
|
|
Hookable. Event happens when the right mouse button
|
|
was previously down and is now up.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onRightButtonUp(int x, int y);
|
|
|
|
/**
|
|
onRightButtonDown()
|
|
|
|
Hookable. Event happens when the right mouse button
|
|
is pressed.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onRightButtonDown(int x, int y);
|
|
|
|
/**
|
|
onRightButtonDlbClk()
|
|
|
|
Hookable. Event happens when the right mouse button
|
|
is double clicked.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onRightButtonDblClk(int x, int y);
|
|
|
|
/**
|
|
onLeftButtonDlbClk()
|
|
|
|
Hookable. Event happens when the left mouse button
|
|
is double clicked.
|
|
|
|
@param x The X position in the screen where the cursor was when the event was triggered.
|
|
@param y The Y position in the screen where the cursor was when the event was triggered.
|
|
*/
|
|
extern GuiObject.onLeftButtonDblClk(int x, int y);
|
|
|
|
extern int GuiObject.onMouseWheelUp(int clicked , int lines); // Requires 5.54 - return 1 if you don't want to send the handle to winamp
|
|
extern int GuiObject.onMouseWheelDown(int clicked , int lines); // Requires 5.54 - return 1 if you don't want to send the handle to winamp
|
|
|
|
/**
|
|
onMouseMove()
|
|
|
|
Hookable. Event happens when the mouse is moved.
|
|
|
|
@param x The new X screen position of the mouse.
|
|
@param y The new Y screen position of the mouse.
|
|
*/
|
|
extern GuiObject.onMouseMove(int x, int y);
|
|
|
|
/**
|
|
onEnterArea()
|
|
|
|
Hookable. Event happens when the mouse
|
|
enters the objects area.
|
|
*/
|
|
extern GuiObject.onEnterArea();
|
|
|
|
/**
|
|
onLeaveArea()
|
|
|
|
Hookable. Event happens when the mouse
|
|
leaves the objects area.
|
|
*/
|
|
extern GuiObject.onLeaveArea();
|
|
|
|
/**
|
|
setEnabled()
|
|
*/
|
|
extern GuiObject.setEnabled(boolean onoff);
|
|
|
|
/**
|
|
getEnabled()
|
|
*/
|
|
extern boolean GuiObject.getEnabled();
|
|
|
|
/**
|
|
onEnabled()
|
|
*/
|
|
extern GuiObject.onEnable(boolean onoff);
|
|
|
|
/**
|
|
resize()
|
|
|
|
Resize the object to the desired size and position.
|
|
|
|
@param x The X position where to anchor the object before resize.
|
|
@param y The Y position where to anchor the object before resize.
|
|
@param w The width you wish the object to have.
|
|
@param h The height you wish the object to have.
|
|
*/
|
|
extern GuiObject.resize(int x, int y, int w, int h);
|
|
|
|
/**
|
|
onResize()
|
|
|
|
Hookable. Event happens when the object is about
|
|
to be resized.
|
|
|
|
@param x The X position where the object will be anchored.
|
|
@param y The Y position where the object will be anchored.
|
|
@param w The width the object will have.
|
|
@param h The height the object will have.
|
|
*/
|
|
extern GuiObject.onResize(int x, int y, int w, int h);
|
|
|
|
/**
|
|
isMouseOver()
|
|
|
|
*/
|
|
extern boolean GuiObject.isMouseOver(int x, int y);
|
|
|
|
/**
|
|
getLeft()
|
|
|
|
Get the X position, in the screen, of the
|
|
left edge of the object.
|
|
|
|
@ret The left edge's position (in screen coordinates).
|
|
*/
|
|
extern int GuiObject.getLeft();
|
|
|
|
/**
|
|
getTop()
|
|
|
|
Get the Y position, in the screen, of the
|
|
top edge of the object.
|
|
|
|
@ret The top edge's position (in screen coordinates).
|
|
*/
|
|
extern int GuiObject.getTop();
|
|
|
|
/**
|
|
getWidth()
|
|
|
|
Get the width of the object, in pixels.
|
|
|
|
@ret The width of the object.
|
|
*/
|
|
extern int GuiObject.getWidth();
|
|
|
|
/**
|
|
getHeight()
|
|
|
|
Get the height of the object, in pixels.
|
|
|
|
@ret The height of the object.
|
|
*/
|
|
extern int GuiObject.getHeight();
|
|
|
|
/**
|
|
setTargetX()
|
|
|
|
Set a target X position, in the screen, for
|
|
the object.
|
|
|
|
@param x The target X position of the object.
|
|
*/
|
|
extern GuiObject.setTargetX(int x);
|
|
|
|
/**
|
|
setTargetY()
|
|
|
|
Set a target Y position, in the screen, for
|
|
the object.
|
|
|
|
@param y The target Y position of the object.
|
|
*/
|
|
extern GuiObject.setTargetY(int y);
|
|
|
|
/**
|
|
setTargetW()
|
|
|
|
Set a target width, in pixels, for the object.
|
|
|
|
@param w The target width of the object.
|
|
*/
|
|
extern GuiObject.setTargetW(int w);
|
|
|
|
/**
|
|
setTargetH()
|
|
|
|
Set a target height, in pixels, for the object.
|
|
|
|
@param h The target height of the object.
|
|
*/
|
|
extern GuiObject.setTargetH(int r);
|
|
|
|
/**
|
|
setTargetA()
|
|
|
|
Set a target alphablending value for the object.
|
|
The value range is from 0 (totally transparent)
|
|
to 255 (totally opaque).
|
|
|
|
@param alpha The target alpha value.
|
|
*/
|
|
extern GuiObject.setTargetA(int alpha);
|
|
|
|
/**
|
|
setTargetSpeed()
|
|
|
|
The amount of time in which you wish to arrive at
|
|
the target(s) previously set, in seconds.
|
|
|
|
@param insecond The number of seconds in which to reach the target.
|
|
*/
|
|
extern GuiObject.setTargetSpeed(float insecond);
|
|
|
|
/**
|
|
gotoTarget()
|
|
|
|
Begin transition to previously set target.
|
|
*/
|
|
extern GuiObject.gotoTarget();
|
|
|
|
/**
|
|
onTargetReached()
|
|
|
|
Hookable. Event happens when the object has reached
|
|
it's previously set target.
|
|
*/
|
|
extern GuiObject.onTargetReached();
|
|
extern GuiObject.cancelTarget();
|
|
/**
|
|
isGoingToTarget()
|
|
|
|
*/
|
|
extern GuiObject.reverseTarget(int reverse); // modifies the x/y targets so that they compensate for gained width/height. useful to make drawers that open up without jittering
|
|
extern GuiObject.onStartup();
|
|
extern boolean GuiObject.isGoingToTarget();
|
|
extern GuiObject.setXmlParam(String param, String value);
|
|
extern String GuiObject.getXmlParam(String param);
|
|
extern GuiObject.init(Group parent);
|
|
extern GuiObject.bringToFront();
|
|
extern GuiObject.bringToBack();
|
|
extern GuiObject.bringAbove(GuiObject guiobj);
|
|
extern GuiObject.bringBelow(GuiObject guiobj);
|
|
extern Int GuiObject.getGuiX();
|
|
extern Int GuiObject.getGuiY();
|
|
extern Int GuiObject.getGuiW();
|
|
extern Int GuiObject.getGuiH();
|
|
extern Int GuiObject.getGuiRelatX();
|
|
extern Int GuiObject.getGuiRelatY();
|
|
extern Int GuiObject.getGuiRelatW();
|
|
extern Int GuiObject.getGuiRelatH();
|
|
extern Boolean GuiObject.isActive();
|
|
extern GuiObject GuiObject.getParent();
|
|
extern Layout GuiObject.getParentLayout();
|
|
extern GuiObject GuiObject.getTopParent();
|
|
extern int GuiObject.runModal();
|
|
extern GuiObject.endModal(int retcode);
|
|
extern GuiObject GuiObject.findObject(String id);
|
|
extern GuiObject GuiObject.findObjectXY(int x, int y);
|
|
extern String GuiObject.getName();
|
|
extern int GuiObject.clientToScreenX(int x);
|
|
extern int GuiObject.clientToScreenY(int y);
|
|
extern int GuiObject.clientToScreenW(int w);
|
|
extern int GuiObject.clientToScreenH(int h);
|
|
extern int GuiObject.screenToClientX(int x);
|
|
extern int GuiObject.screenToClientY(int y);
|
|
extern int GuiObject.screenToClientW(int w);
|
|
extern int GuiObject.screenToClientH(int h);
|
|
extern int GuiObject.getAutoWidth();
|
|
extern int GuiObject.getAutoHeight();
|
|
extern GuiObject.setFocus();
|
|
extern GuiObject.onChar(String c);
|
|
extern GuiObject.onAccelerator(String accel);
|
|
extern Boolean GuiObject.isMouseOverRect();
|
|
extern Object GuiObject.getInterface(String interface_guid);
|
|
extern GuiObject.onDragEnter();
|
|
extern GuiObject.onDragOver(int x, int y);
|
|
extern GuiObject.onDragLeave();
|
|
|
|
#define VK_PRIOR 33
|
|
#define VK_NEXT 34
|
|
#define VK_END 35
|
|
#define VK_HOME 36
|
|
#define VK_LEFT 37
|
|
#define VK_UP 38
|
|
#define VK_RIGHT 39
|
|
#define VK_DOWN 40
|
|
|
|
extern GuiObject.onKeyDown(int vk_code);
|
|
extern GuiObject.onKeyUp(int vk_code);
|
|
extern GuiObject.onGetFocus();
|
|
extern GuiObject.onKillFocus();
|
|
extern Int GuiObject.sendAction(String action, String param, Int x, int y, int p1, int p2);
|
|
extern Int GuiObject.onAction(String action, String param, Int x, int y, int p1, int p2, GuiObject source);
|
|
|
|
// Group
|
|
|
|
extern GuiObject Group.getObject(String object_id);
|
|
extern Int Group.getNumObjects();
|
|
extern GuiObject Group.enumObject(Int num);
|
|
extern Group.onCreateObject(GuiObject newobj);
|
|
extern Int Group.getMousePosX();
|
|
extern Int Group.getMousePosY();
|
|
extern Boolean Group.isLayout();
|
|
|
|
|
|
// Layout
|
|
|
|
extern Layout.onDock(int side);
|
|
extern Layout.onUndock();
|
|
extern Layout.onScale(Double newscalevalue);
|
|
extern Double Layout.getScale();
|
|
extern Layout.setScale(Double scalevalue);
|
|
extern Layout.setDesktopAlpha(Boolean onoff);
|
|
extern Boolean Layout.getDesktopAlpha();
|
|
extern Container Layout.getContainer();
|
|
extern Layout.center();
|
|
extern Layout.onMove();
|
|
extern Layout.onEndMove();
|
|
extern Layout.onUserResize(int x, int y, int w, int h);
|
|
extern Layout.snapAdjust(int left, int top, int right, int bottom);
|
|
extern Int Layout.getSnapAdjustTop();
|
|
extern Int Layout.getSnapAdjustRight();
|
|
extern Int Layout.getSnapAdjustLeft();
|
|
extern Int Layout.getSnapAdjustBottom();
|
|
extern Layout.setRedrawOnResize(int wantredrawonresize);
|
|
extern Layout.beforeRedock();
|
|
extern Layout.redock();
|
|
extern Boolean Layout.isTransparencySafe();
|
|
extern Boolean Layout.isLayoutAnimationSafe();
|
|
extern Layout.onMouseEnterLayout();
|
|
extern Layout.onMouseLeaveLayout();
|
|
extern Layout.onSnapAdjustChanged();
|
|
|
|
// List
|
|
|
|
extern List.addItem(Any _object);
|
|
extern List.removeItem(int pos);
|
|
extern Any List.enumItem(int pos);
|
|
extern Int List.findItem(Any _object);
|
|
extern Int List.findItem2(Any _object, int startItem);
|
|
extern int List.getNumItems();
|
|
extern List.removeAll();
|
|
|
|
// BitList
|
|
|
|
extern boolean BitList.getItem(int n);
|
|
extern BitList.setItem(int n, boolean val);
|
|
extern BitList.setSize(int s);
|
|
extern int BitList.getSize();
|
|
|
|
// Map
|
|
|
|
extern Int Map.getValue(int x, int y);
|
|
extern Int Map.getARGBValue(int x, int y, int channel); // requires wa 5.51 // channel: 0=Blue, 1=Green, 2=Red, 3=Alpha. if your img has a alpha channal the returned rgb value might not be exact
|
|
extern Boolean Map.inRegion(int x, int y);
|
|
extern Map.loadMap(String bitmapid);
|
|
extern Int Map.getWidth();
|
|
extern Int Map.getHeight();
|
|
extern Region Map.getRegion();
|
|
|
|
// PopupMenu
|
|
|
|
extern PopupMenu.addSubMenu(PopupMenu submenu, String submenutext);
|
|
extern PopupMenu.addCommand(String cmdtxt, Int cmd_id, Boolean checked, Boolean disabled);
|
|
extern PopupMenu.addSeparator();
|
|
extern Int PopupMenu.popAtXY(int x, int y);
|
|
extern Int PopupMenu.popAtMouse();
|
|
extern Int PopupMenu.getNumCommands();
|
|
extern PopupMenu.checkCommand(int cmd_id, boolean check);
|
|
extern PopupMenu.disableCommand(int cmd_id, boolean disable);
|
|
|
|
// Region
|
|
|
|
extern Region.add(Region reg);
|
|
extern Region.sub(Region reg);
|
|
extern Region.offset(int x, int y);
|
|
extern Region.stretch(double r);
|
|
extern Region.copy(Region reg);
|
|
extern Region.loadFromMap(Map regionmap, Int threshold, Boolean reversed);
|
|
extern Region.loadFromBitmap(String bitmapid);
|
|
extern Int Region.getBoundingBoxX();
|
|
extern Int Region.getBoundingBoxY();
|
|
extern Int Region.getBoundingBoxW();
|
|
extern Int Region.getBoundingBoxH();
|
|
|
|
// Timer
|
|
|
|
extern Timer.onTimer();
|
|
extern Timer.setDelay(int millisec);
|
|
extern Int Timer.getDelay();
|
|
extern Timer.start();
|
|
extern Timer.stop();
|
|
extern Timer.isRunning();
|
|
extern Int Timer.getSkipped();
|
|
|
|
// FeedWatcher
|
|
|
|
deprecated extern Int FeedWatcher.setFeed(String feed_id);
|
|
deprecated extern FeedWatcher.releaseFeed();
|
|
deprecated extern FeedWatcher.onFeedChange(String new_feeddata);
|
|
|
|
// WindowHolder
|
|
|
|
extern WindowHolder.setRegionFromMap(Map regionmap, Int threshold, Boolean reverse);
|
|
extern WindowHolder.setRegion(Region reg);
|
|
extern GuiObject WindowHolder.getContent();
|
|
extern String WindowHolder.getGuid(); // Fixed in Winamp 5.53 - returns the guid of the current window. If the WindowHolder is not visible the zero-guid is displayed
|
|
extern String WindowHolder.getComponentName(); // Requires 5.54
|
|
|
|
deprecated extern WindowHolder.onGetWac(Wac wacobj);
|
|
deprecated extern WindowHolder.onGiveUpWac(Wac wacobj);
|
|
deprecated extern Wac WindowHolder.getWac();
|
|
deprecated extern WindowHolder.setAcceptWac(Boolean onoff);
|
|
|
|
// Edit
|
|
|
|
extern Edit.onEnter();
|
|
extern Edit.onAbort();
|
|
extern Edit.onIdleEditUpdate();
|
|
extern Edit.onEditUpdate();
|
|
extern Edit.setText(String txt);
|
|
extern Edit.setAutoEnter(boolean onoff);
|
|
extern Int Edit.getAutoEnter();
|
|
extern String Edit.getText();
|
|
extern Edit.selectAll();
|
|
extern Edit.enter();
|
|
extern Edit.setIdleEnabled(boolean onoff);
|
|
extern Int Edit.getIdleEnabled();
|
|
|
|
// Slider
|
|
|
|
extern Slider.onSetPosition(int newpos);
|
|
extern Slider.onPostedPosition(int newpos);
|
|
extern Slider.onSetFinalPosition(int pos);
|
|
extern Slider.setPosition(int pos);
|
|
extern Int Slider.getPosition();
|
|
extern Slider.lock(); // locks descendant core collbacks
|
|
extern Slider.unlock(); // unloads them
|
|
|
|
// Vis
|
|
|
|
extern Vis.onFrame();
|
|
extern Vis.setRealtime(Boolean onoff);
|
|
extern Boolean Vis.getRealtime();
|
|
extern Int Vis.getMode();
|
|
extern Vis.setMode(Int mode);
|
|
extern Vis.nextMode();
|
|
|
|
// Browser
|
|
|
|
extern Browser.navigateUrl(String url);
|
|
extern Browser.back();
|
|
extern Browser.forward();
|
|
extern Browser.stop();
|
|
extern Browser.refresh();
|
|
extern Browser.home();
|
|
extern Browser.setTargetName(String targetname);
|
|
extern Boolean Browser.onBeforeNavigate(String url, Int flags, String targetframename); // return TRUE to cancel navigation
|
|
extern Browser.onDocumentComplete(String url); // Will be called for main site and inlineFrames
|
|
extern Browser.onDocumentReady(String url); // Requires 5.53 // Will be called after all inlineFrames & site is loaded
|
|
extern String Browser.getDocumentTitle();
|
|
extern Browser.onNavigateError(String url, int code); // Requires 5.53
|
|
extern Browser.setCancelIEErrorPage(boolean cancel); // Requires 5.53
|
|
|
|
/**
|
|
scrape()
|
|
|
|
Starts to search the current document of browser for strings linking to playable madia.
|
|
Call best after onDocumenteComplete();
|
|
No params.
|
|
*/
|
|
extern browser.scrape(); //Requires 5.5
|
|
|
|
/**
|
|
onMediaLink()
|
|
|
|
Called everytime the SiteScraper has found a media link
|
|
in the current document.
|
|
|
|
@param url A string that contains the URL link to this file.
|
|
*/
|
|
extern string browser.onMediaLink(string url); //Requires 5.5
|
|
|
|
|
|
// Text
|
|
|
|
extern Text.setText(String txt); // changes the display/text="something" param
|
|
extern Text.setAlternateText(String txt); // overrides the display/text parameter with a custom string, set "" to cancel
|
|
extern String Text.getText();
|
|
extern int Text.getTextWidth();
|
|
extern Text.onTextChanged(String newtxt);
|
|
|
|
// Layer
|
|
|
|
extern Layer.onBeginResize(int x, int y, int w, int h);
|
|
extern Layer.onEndResize(int x, int y, int w, int h);
|
|
extern Layer.fx_onInit();
|
|
extern Layer.fx_onFrame();
|
|
extern Double Layer.fx_onGetPixelR(double r, double d, double x, double y);
|
|
extern Double Layer.fx_onGetPixelD(double r, double d, double x, double y);
|
|
extern Double Layer.fx_onGetPixelX(double r, double d, double x, double y);
|
|
extern Double Layer.fx_onGetPixelY(double r, double d, double x, double y);
|
|
extern Double Layer.fx_onGetPixelA(double r, double d, double x, double y);
|
|
extern Layer.setRegionFromMap(Map regionmap, int threshold, boolean reverse);
|
|
extern Layer.setRegion(Region reg);
|
|
extern Layer.fx_setEnabled(boolean onoff);
|
|
extern Boolean Layer.fx_getEnabled();
|
|
extern Layer.fx_setWrap(Boolean onoff);
|
|
extern Boolean Layer.fx_getWrap();
|
|
extern Layer.fx_setRect(Boolean onoff);
|
|
extern Boolean Layer.fx_getRect();
|
|
extern Layer.fx_setBgFx(Boolean onoff);
|
|
extern Boolean Layer.fx_getBgFx();
|
|
extern Layer.fx_setClear(Boolean onoff);
|
|
extern Boolean Layer.fx_getClear();
|
|
extern Layer.fx_setSpeed(Int msperframe);
|
|
extern Int Layer.fx_getSpeed();
|
|
extern Layer.fx_setRealtime(Boolean onoff);
|
|
extern Boolean Layer.fx_getRealtime();
|
|
extern Layer.fx_setLocalized(Boolean onoff);
|
|
extern Boolean Layer.fx_getLocalized();
|
|
extern Layer.fx_setBilinear(Boolean onoff);
|
|
extern Boolean Layer.fx_getBilinear();
|
|
extern Layer.fx_setAlphaMode(Boolean onoff);
|
|
extern Boolean Layer.fx_getAlphaMode();
|
|
extern Layer.fx_setGridSize(Int x, Int y);
|
|
extern Layer.fx_update();
|
|
extern Layer.fx_restart();
|
|
extern Boolean Layer.isInvalid(); // Returns 1 if image load failed
|
|
|
|
// Button
|
|
|
|
extern Button.onActivate(int activated);
|
|
extern Button.onLeftClick();
|
|
extern Button.onRightClick();
|
|
extern Button.setActivated(Boolean onoff);
|
|
extern Button.setActivatedNoCallback(Boolean onoff);
|
|
extern Boolean Button.getActivated();
|
|
extern Button.leftClick();
|
|
extern Button.rightClick();
|
|
|
|
// AnimatedLayer
|
|
|
|
extern AnimatedLayer.onPlay();
|
|
extern AnimatedLayer.onPause();
|
|
extern AnimatedLayer.onResume();
|
|
extern AnimatedLayer.onStop();
|
|
extern AnimatedLayer.onFrame(Int framenum);
|
|
extern AnimatedLayer.setSpeed(Int msperframe);
|
|
extern AnimatedLayer.gotoFrame(int framenum);
|
|
extern AnimatedLayer.setStartFrame(Int framenum);
|
|
extern AnimatedLayer.setEndFrame(int framenum);
|
|
extern AnimatedLayer.setAutoReplay(Boolean onoff);
|
|
extern AnimatedLayer.play();
|
|
extern AnimatedLayer.stop();
|
|
extern AnimatedLayer.pause();
|
|
extern Boolean AnimatedLayer.isPlaying();
|
|
extern Boolean AnimatedLayer.isPaused();
|
|
extern Boolean AnimatedLayer.isStopped();
|
|
extern Int AnimatedLayer.getStartFrame();
|
|
extern Int AnimatedLayer.getEndFrame();
|
|
extern Int AnimatedLayer.getLength();
|
|
extern Int AnimatedLayer.getDirection();
|
|
extern Boolean AnimatedLayer.getAutoReplay();
|
|
extern Int AnimatedLayer.getCurFrame();
|
|
extern AnimatedLayer.setRealtime(Boolean onoff);
|
|
|
|
// AlbumArt
|
|
|
|
extern AlbumArtLayer.refresh();
|
|
extern AlbumArtLayer.isLoading();
|
|
extern AlbumArtLayer.onAlbumArtLoaded(boolean success);
|
|
|
|
// ToggleButton
|
|
|
|
extern ToggleButton.onToggle(Boolean onoff);
|
|
extern int TOggleButton.getCurCfgVal();
|
|
|
|
// GroupList
|
|
|
|
extern Group GroupList.instantiate(String group_id, int num_groups);
|
|
extern Int GroupList.getNumItems();
|
|
extern Group GroupList.enumItem(int num);
|
|
extern GroupList.removeAll();
|
|
extern GroupList.scrollToPercent(Int percent);
|
|
extern GroupList.setRedraw(int redraw);
|
|
|
|
// CfgGroup
|
|
|
|
extern Int CfgGroup.cfgGetInt();
|
|
extern CfgGroup.cfgSetInt(Int intvalue);
|
|
extern String CfgGroup.cfgGetString();
|
|
extern Float CfgGroup.cfgGetFloat();
|
|
extern CfgGroup.cfgSetFloat(Float floatvalue);
|
|
extern CfgGroup.cfgSetString(String strvalue);
|
|
extern CfgGroup.onCfgChanged();
|
|
extern String CfgGroup.cfgGetGuid();
|
|
extern String CfgGroup.cfgGetName();
|
|
|
|
// QueryList
|
|
|
|
deprecated extern QueryList.onResetQuery();
|
|
|
|
// MouseRedir
|
|
|
|
extern MouseRedir.setRedirection(GuiObject o);
|
|
extern GuiObject MouseRedir.getRedirection();
|
|
extern MouseRedir.setRegionFromMap(Map regionmap, Int threshold, Boolean reverse);
|
|
extern MouseRedir.setRegion(Region reg);
|
|
|
|
// DropDownList
|
|
|
|
extern String DropDownList.getItemSelected();
|
|
extern DropDownList.onSelect(Int id, Int hover);
|
|
extern DropDownList.setListHeight(Int h);
|
|
extern DropDownList.openList();
|
|
extern DropDownList.closeList();
|
|
extern DropDownList.setItems(String lotsofitems);
|
|
extern Int DropDownList.addItem(String _text);
|
|
extern DropDownList.delItem(Int id);
|
|
extern Int DropDownList.findItem(String _text);
|
|
extern Int DropDownList.getNumItems();
|
|
extern DropDownList.selectItem(Int id, Int hover);
|
|
extern String DropDownList.getItemText(Int id);
|
|
extern Int DropDownList.getSelected();
|
|
extern String DropDownList.getSelectedText();
|
|
extern String DropDownList.getCustomText();
|
|
extern DropDownList.deleteAllItems();
|
|
extern DropDownList.setNoItemText(String txt);
|
|
|
|
|
|
// LayoutStatus
|
|
|
|
extern LayoutStatus.callme(String str);
|
|
|
|
// TabSheet
|
|
|
|
extern Int TabSheet.getCurPage();
|
|
extern TabSheet.setCurPage(Int a);
|
|
|
|
// GuiList
|
|
|
|
// Columns
|
|
extern Int GuiList.addColumn(String name, Int width, Int numeric);
|
|
extern Int GuiList.getNumColumns();
|
|
extern Int GuiList.getColumnWidth(Int column);
|
|
extern GuiList.setColumnWidth(Int column, Int newwidth);
|
|
extern String GuiList.getColumnLabel(Int column);
|
|
extern GuiList.setColumnLabel(Int column, String newlabel);
|
|
extern Int GuiList.getColumnNumeric(Int column);
|
|
extern GuiList.setColumnDynamic(Int column, Int isdynamic);
|
|
extern Int GuiList.isColumnDynamic(Int column);
|
|
extern GuiList.invalidateColumns();
|
|
// Items
|
|
extern Int GuiList.getNumItems();
|
|
extern Int GuiList.getItemCount();
|
|
extern Int GuiList.addItem(String label);
|
|
extern Int GuiList.insertItem(Int pos, String label);
|
|
extern Int GuiList.getLastAddedItemPos();
|
|
extern GuiList.setSubItem(Int pos, Int subpos, String txt);
|
|
extern GuiList.deleteAllItems();
|
|
extern Int GuiList.deleteByPos(Int pos);
|
|
extern String GuiList.getItemLabel(Int pos, Int subpos);
|
|
extern String GuiList.getSubitemText(Int pos, Int subpos);
|
|
extern GuiList.setItemLabel(Int pos, String _text);
|
|
extern Int GuiList.invalidateItem(Int pos);
|
|
extern Int GuiList.getFirstItemVisible();
|
|
extern Int GuiList.getLastItemVisible();
|
|
extern GuiList.setItemIcon(Int pos, String bitmapId); // Requires 5.54
|
|
extern String GuiList.getItemIcon(Int pos); // Requires 5.54
|
|
// Attributes
|
|
extern GuiList.setMinimumSize(Int size);
|
|
extern Int GuiList.getWantAutoDeselect();
|
|
extern GuiList.setWantAutoDeselect(Int want);
|
|
extern GuiList.onSetVisible(Int show);
|
|
extern GuiList.setAutoSort(Int dosort);
|
|
extern Int GuiList.setFontSize(Int size);
|
|
extern Int GuiList.getFontSize();
|
|
extern Int GuiList.getHeaderHeight();
|
|
extern Int GuiList.getPreventMultipleSelection();
|
|
extern Int GuiList.setPreventMultipleSelection(Int val);
|
|
extern GuiList.setShowIcons(int showThem); // Requires 5.54
|
|
extern Int GuiList.getShowIcons(); // Requires 5.54
|
|
extern Int GuiList.setIconWidth(int width); // Requires 5.54
|
|
extern Int GuiList.setIconHeight(int width); // Requires 5.54
|
|
extern GuiList.getIconWidth(); // Requires 5.54
|
|
extern GuiList.getIconHeight(); // Requires 5.54
|
|
// Navigation
|
|
extern GuiList.next();
|
|
extern GuiList.previous();
|
|
extern GuiList.pagedown();
|
|
extern GuiList.pageup();
|
|
extern GuiList.home();
|
|
extern GuiList.end();
|
|
extern GuiList.reset();
|
|
extern GuiList.ensureItemVisible(Int pos);
|
|
extern Int GuiList.scrollAbsolute(Int x);
|
|
extern Int GuiList.scrollRelative(Int x);
|
|
extern GuiList.scrollLeft(Int lines);
|
|
extern GuiList.scrollRight(Int lines);
|
|
extern GuiList.scrollUp(Int lines);
|
|
extern GuiList.scrollDown(Int lines);
|
|
extern GuiList.jumpToNext(Int c);
|
|
extern GuiList.scrollToItem(Int pos);
|
|
// Selecting
|
|
extern GuiList.selectCurrent();
|
|
extern GuiList.selectFirstEntry();
|
|
extern Int GuiList.getItemSelected(Int pos);
|
|
extern Int GuiList.isItemFocused(Int pos);
|
|
extern Int GuiList.getItemFocused();
|
|
extern GuiList.setItemFocused(Int pos);
|
|
extern Int GuiList.getFirstItemSelected();
|
|
extern Int GuiList.getNextItemSelected(Int lastpos);
|
|
extern Int GuiList.selectAll();
|
|
extern Int GuiList.deselectAll();
|
|
extern Int GuiList.invertSelection();
|
|
extern GuiList.setSelectionStart(Int pos);
|
|
extern GuiList.setSelectionEnd(Int pos);
|
|
extern GuiList.setSelected(Int pos, Int selected);
|
|
extern GuiList.toggleSelection(Int pos, Int setfocus);
|
|
// Actions, Moving
|
|
extern GuiList.resort();
|
|
extern Int GuiList.getSortDirection();
|
|
extern Int GuiList.getSortColumn();
|
|
extern GuiList.setSortColumn(Int col);
|
|
extern GuiList.setSortDirection(Int dir);
|
|
extern GuiList.moveItem(Int from, Int to);
|
|
// Callbacks
|
|
extern GuiList.onSelectAll();
|
|
extern GuiList.onDelete();
|
|
extern GuiList.onDoubleClick(Int itemnum);
|
|
extern GuiList.onLeftClick(Int itemnum);
|
|
extern GuiList.onSecondLeftClick(Int itemnum);
|
|
extern Int GuiList.onRightClick(Int itemnum);
|
|
extern Int GuiList.onColumnDblClick(Int col, Int x, Int y);
|
|
extern Int GuiList.onColumnLabelClick(Int col, Int x, Int y);
|
|
extern GuiList.onItemSelection(Int itemnum, Int selected);
|
|
extern Int GuiList.onIconLeftClick(int itemnum, int x, int y); // Return 1 to prevent other actions to be called (eg onLeftClick()) // Requires 5.54
|
|
|
|
|
|
|
|
// GuiTree
|
|
|
|
extern Int GuiTree.onWantAutoContextMenu();
|
|
extern Int GuiTree.onMouseWheelUp(Int clicked, Int lines);
|
|
extern Int GuiTree.onMouseWheelDown(Int clicked, Int lines);
|
|
extern Int GuiTree.onContextMenu(Int x, Int y);
|
|
extern Int GuiTree.onChar(Int c);
|
|
extern GuiTree.onItemRecvDrop(TreeItem item);
|
|
extern GuiTree.onLabelChange(TreeItem item);
|
|
extern GuiTree.onItemSelected(TreeItem item);
|
|
extern GuiTree.onItemDeselected(TreeItem item);
|
|
|
|
extern Int GuiTree.getNumRootItems();
|
|
extern TreeItem GuiTree.enumRootItem(Int which);
|
|
extern GuiTree.jumpToNext(Int c);
|
|
extern GuiTree.ensureItemVisible(TreeItem item);
|
|
extern Int GuiTree.getContentsWidth();
|
|
extern Int GuiTree.getContentsHeight();
|
|
extern TreeItem GuiTree.addTreeItem(TreeItem item, TreeItem par, Int sorted, Int haschildtab);
|
|
extern Int GuiTree.removeTreeItem(TreeItem item);
|
|
extern GuiTree.moveTreeItem(TreeItem item, TreeItem newparent);
|
|
extern GuiTree.deleteAllItems();
|
|
extern Int GuiTree.expandItem(TreeItem item);
|
|
extern GuiTree.expandItemDeferred(TreeItem item);
|
|
extern Int GuiTree.collapseItem(TreeItem item);
|
|
extern GuiTree.collapseItemDeferred(TreeItem item);
|
|
extern GuiTree.selectItem(TreeItem item);
|
|
extern GuiTree.selectItemDeferred(TreeItem item);
|
|
extern GuiTree.delItemDeferred(TreeItem item);
|
|
extern GuiTree.hiliteItem(TreeItem item);
|
|
extern GuiTree.unhiliteItem(TreeItem item);
|
|
extern TreeItem GuiTree.getCurItem();
|
|
extern TreeItem GuiTree.hitTest(Int x, Int y);
|
|
extern GuiTree.editItemLabel(TreeItem item);
|
|
extern GuiTree.cancelEditLabel(Int destroyit);
|
|
extern GuiTree.setAutoEdit(Int ae);
|
|
extern Int GuiTree.getAutoEdit();
|
|
extern TreeItem GuiTree.getByLabel(TreeItem item, String name);
|
|
extern GuiTree.setSorted(Int dosort);
|
|
extern Int GuiTree.getSorted();
|
|
extern GuiTree.sortTreeItems();
|
|
extern TreeItem GuiTree.getSibling(TreeItem item);
|
|
extern GuiTree.setAutoCollapse(Int doautocollapse);
|
|
extern Int GuiTree.setFontSize(Int newsize);
|
|
extern Int GuiTree.getFontSize();
|
|
extern Int GuiTree.getNumVisibleChildItems(TreeItem c);
|
|
extern Int GuiTree.getNumVisibleItems();
|
|
extern TreeItem GuiTree.enumVisibleItems(Int n);
|
|
extern TreeItem GuiTree.enumVisibleChildItems(TreeItem c, Int n);
|
|
extern TreeItem GuiTree.enumAllItems(Int n);
|
|
extern Int GuiTree.getItemRectX(TreeItem item);
|
|
extern Int GuiTree.getItemRectY(TreeItem item);
|
|
extern Int GuiTree.getItemRectW(TreeItem item);
|
|
extern Int GuiTree.getItemRectH(TreeItem item);
|
|
// extern TreeItem GuiTree.getItemFromPoint(Int x, Int y);
|
|
|
|
|
|
|
|
// TreeItem
|
|
|
|
extern Int TreeItem.getNumChildren();
|
|
extern TreeItem.setLabel(String label);
|
|
extern String TreeItem.getLabel();
|
|
extern TreeItem.ensureVisible();
|
|
extern TreeItem TreeItem.getNthChild(Int nth);
|
|
extern TreeItem TreeItem.getChild();
|
|
extern TreeItem TreeItem.getChildSibling(TreeItem _item);
|
|
extern TreeItem TreeItem.getSibling();
|
|
extern TreeItem TreeItem.getParent();
|
|
extern TreeItem.editLabel();
|
|
extern Int TreeItem.hasSubItems();
|
|
extern TreeItem.setSorted(Int issorted);
|
|
extern TreeItem.setChildTab(Int haschildtab);
|
|
extern Int TreeItem.isSorted();
|
|
extern Int TreeItem.isCollapsed();
|
|
extern Int TreeItem.isExpanded();
|
|
extern TreeItem.invalidate();
|
|
extern Int TreeItem.isSelected();
|
|
extern Int TreeItem.isHilited();
|
|
extern TreeItem.setHilited(Int ishilited);
|
|
extern Int TreeItem.collapse();
|
|
extern Int TreeItem.expand();
|
|
extern GuiTree TreeItem.getTree();
|
|
// return 1 to override default behaviour of stuff.
|
|
extern TreeItem.onTreeAdd();
|
|
extern TreeItem.onTreeRemove();
|
|
extern TreeItem.onSelect();
|
|
extern TreeItem.onDeselect();
|
|
extern Int TreeItem.onLeftDoubleClick();
|
|
extern Int TreeItem.onRightDoubleClick();
|
|
extern Int TreeItem.onChar(Int key);
|
|
extern TreeItem.onExpand();
|
|
extern TreeItem.onCollapse();
|
|
extern Int TreeItem.onBeginLabelEdit();
|
|
extern Int TreeItem.onEndLabelEdit(String newlabel);
|
|
extern Int TreeItem.onContextMenu(Int x, Int y);
|
|
|
|
|
|
// MenuButton
|
|
|
|
deprecated extern MenuButton.onOpenMenu();
|
|
deprecated extern MenuButton.onCloseMenu();
|
|
deprecated extern MenuButton.onSelectItem(String item);
|
|
deprecated extern MenuButton.openMenu();
|
|
deprecated extern MenuButton.closeMenu();
|
|
|
|
|
|
// CheckBox
|
|
|
|
extern CheckBox.onToggle(int newstate);
|
|
extern CheckBox.setChecked(int checked);
|
|
extern Int CheckBox.isChecked();
|
|
extern CheckBox.setText(String txt);
|
|
extern String CheckBox.getText();
|
|
|
|
|
|
// Form
|
|
|
|
deprecated extern Int Form.getContentsHeight();
|
|
deprecated extern Form.newCell(String groupname);
|
|
deprecated extern Form.nextRow();
|
|
deprecated extern Form.deleteAll();
|
|
|
|
|
|
// ComponentBucket
|
|
|
|
extern Int ComponentBucket.getMaxHeight(); // for vertical compbucks
|
|
extern Int ComponentBucket.getMaxWidth(); // for horizontal compbucks
|
|
extern Int ComponentBucket.setScroll(int x);
|
|
extern Int ComponentBucket.getScroll();
|
|
extern Int ComponentBucket.getNumChildren();
|
|
extern GuiObject ComponentBucket.enumChildren(int n);
|
|
|
|
|
|
// Frame (Requires 5.5)
|
|
|
|
extern Int Frame.getPosition();
|
|
extern Frame.setPosition(Int position);
|
|
extern Frame.onSetPosition(Int position);
|
|
|
|
|
|
// Menu (Requires 5.52)
|
|
|
|
extern Menu.setMenuGroup(String groupId);
|
|
extern String Menu.getMenuGroup();
|
|
extern Menu.setMenu(String menuId);
|
|
extern String Menu.getMenu();
|
|
extern Menu.spawnMenu(int monitor); // monitor can be 1 or 0 - default 1. 0 doesn't trigger some keyboard timers...
|
|
extern Menu.cancelMenu();
|
|
extern Menu.setNormalId(String id);
|
|
extern Menu.setDownId(String id);
|
|
extern Menu.setHoverId(String id);
|
|
extern Menu.onOpenMenu();
|
|
extern Menu.onCloseMenu();
|
|
extern Menu.nextMenu();
|
|
extern Menu.previousMenu();
|
|
|
|
// predecl system symbols
|
|
.CODE
|
|
|
|
// This function is called by System.onScriptLoaded() as the first thing it does. Subsequent events check
|
|
// __deprecated_runtime before continuing. If you have no System.onScriptLoaded(), you will have no version check.
|
|
|
|
// This is to ensure that runtimes that do not have stack protection (that is wa3, wa5 and wa5.01) do
|
|
// not crash when trying to unexisting functions (with parameters, since parameterless functions would
|
|
// not crash), that is, functions that are meant for a higher version number than that of the runtime
|
|
// the script is running on.
|
|
|
|
Function Int versionCheck();
|
|
Int versionCheck() {
|
|
Double v = getRuntimeVersion();
|
|
if (v < VCPU_VERSION || v > 65535) {
|
|
__deprecated_runtime = 1;
|
|
int last = getPrivateInt(getSkinName(), "runtimecheck", 0);
|
|
int now = getTimeOfDay();
|
|
if (now - last < 5000 && last < now) return 0;
|
|
setPrivateInt(getSkinName(), "runtimecheck", getTimeOfDay());
|
|
messageBox("This script requires " + MC_TARGET, "Error", 1, "");
|
|
return 0;
|
|
}
|
|
return 1;
|
|
}
|
|
|
|
// begin protecting the stack, anything below this requires a getRuntimeVersion() >= 1 and <= 65535
|
|
.STACKPROT
|
|
|
|
/*---------------*/
|
|
|
|
Function debug(string s);
|
|
debug(string s) { messagebox(s, "DEBUG", 0, ""); }
|
|
|
|
Function debugInt(int s);
|
|
debugInt(int s) { messagebox(integerToString(s), "DEBUG", 0, ""); }
|
|
|
|
#endif
|
|
|