Metamorphis Scripts &
Objects
(last updated January 9, 2003)
Version requirements: MJ 8.0.253 and above
Metamorphis uses JScript to do scripting. There are
multiple objects which JScript can access: Metamorphis, Window ( exact name
depends on window name, for example if you have window called Player in you
Main.xml file that name of the object will be Player), MJAutomation (you can
access many object through MJAutomation object see Interface Plug-ins SDK)
Metamorphis Object Commands:
Functions:
void SetBitmap(string Bitmap, string TransparentColor)
Description: Sets image for the window. Relative paths can be used. SetBitmap function can be used to change image and region for a window.
Parameters:
Bitmap - new bitmap file for the window.
TransparentColor- transparent color of new image.Example:
Player.SetBitmap( "coolpic.gif", "ff00ff");
bool LoadSkinState()
Description: Loads previously saved state of the skin, usually called in handler for OnInitialize event.
Return Values: true if skin state was previously saved using SaveSkinState function, otherwise false.
Example:
if(Metamorphis.LoadSkinState() == false)
{
EQ.ShowWindow(true);
}void SaveSkinState()
Description: Saves skin state, usually called in handler for OnExit event.
Example:
Metamorphis.SaveSkinState();
void SetStateValue(string Name, variant Value)
Description: Sets state variable. This variable will be saved in state.xml and can be retrieved when skin is loaded or at any other time. Supported types: number, string, boolean, double
Parameters:
Name - Name of the value to be set.
Value - Specifies the data to be stored.Example:
Metamorphis.SetStateValue("SomeName", "SomeValue");
Metamorphis.SetStateValue("SomeName2", 1);variant GetStateValue(string Name)
Description: Retrieves previously set state value. Supported types: number, string, boolean, double
Parameters:
Name - Name of the value to be retrieved.Return Values: the value's data
Example:
var SoveValue = Metamorphis.GetStateValue("SomeName");
// check if value was previously set
if( SomeValue == null) // value was not set
{
... do something
}long StartTimer(long Timeout, string FunctionName)
Description: This function creates a timer with the specified time-out value.
Parameters:
Timeout - specifies the time-out value, in milliseconds
FunctionName - name the function to be notified when the time-out value elapses.Return Values: Identifier of the new timer.
Example:
var TimerID = Metamorphis.StartTimer(1000, DoExtraCoolStuff );
void StopTimer(long TimerID)
Description: The function destroys the specified timer.
Parameters:
TimerID- Identifier of the timer.Example:
Metamorphis.StopTimer(TimerID );
bool IsAlwaysOnTop ()
Description: Retrieves Always on State state
Return Values: 0 - off, 1- on
Example:
var State = Metamorphis.IsAlwaysOnTop();
void Minimize()
Description: Minimizes the skin.
void Maximize()
Description: Returns Media Jukebox to MEGA-ME state.
void Close()
Description: Closes Media Jukebox.
void Restore()
Description: If a skin was minimized it will be restored.
bool IsMinimized()
Description: Returns true if a skin is minimized.
void EnableTooltips(bool bEnable)
Description: Turns tooltips on and off.
Parameters:
bEnable - true(default) - to turn tooltips on, false - to turn tooltips offlong GetScreenWidth()
Description: retrieves screen width.
long GetScreenHeight()
Description: retrieves screen height.
long GetScreenLeft()
Description: retrieves screen left.
long GetScreenTop()
Description: retrieves screen top.
Window Commands:
Functions:
void SetWindowPos( long x, long y)
Description: Sets position of the window to x, y point.
Parameters:
x , y - coordinates are Desktop coordinates.Example:
Playlist.SetWindowPos(101, 107);
void ShowWindow(bool ShowCommand)
Description: Changes visual state of the window.
Parameters:
ShowCommand - true - Show, false - Hide
Example:Playlist.ShowWindow(true);
void MoveWindowAnimated(long OffsetX, long OffsetY, long Speed)
Description: Moves the window from current point to x+OffsetX and y+OffsetY
Parameters:
Speed - value from 1 to 100, determines how fast the movement will be performed.Example:
Equalizer.ShowWindowAnimated(101, 0, -100, 107, 4);
void SetWindowBehind(Object Window)
Description: Changes ZOrder of the window, by inserting the window behind specified window.
Parameters:
Window - one of Window objects of the skin, for example 'Player'Example:
Equalizer.SetWindowBehind(Player);
void GetSkinItem(long MainType, string Name)
Description:
Parameters:
MainType - 0 - Button, 1 - Placeholder, 2 - Slider, 3 - InfoDisplayExample:
Player.GetSkinItem(0, "ShowEqualizer").SetItemState("Show");
bool IsWindowVisible()
Description: The function retrieves the visibility state of the specified window.
Example:
Properties:
long Left
Description:
Example:
var x = Player.PositionX;
long Top
Description:
Example:
var y = Player.PositionY;
long Width
Description:
Example:
var Width = Player.Width;
long Height
Description:
Example:
var Height = Player.Height;
SkinItem Commands:
To get skin item use GetSkinItem function
Functions:
void SetPosition(long x, long y)
Description: Sets new position of the skin item.
Parameters:
x, y - new coordinates, coordinates of the item..Example:
Player.GetSkinItem(0, "HidePlaylist").SetPosition(10, 100);
void SetBitmap(string Bitmap, string TransparentColor)
Description: Sets image for the item. That property can be used with Buttons and Placeholders. Relative paths can be used. If used with Placeholder, this function will change painting region of the item.
Parameters:
Bitmap - new bitmap file for the item.
TransparentColor- transparent color of new image.Example:
Player.GetSkinItem(0, "Play").SetBitmap( "coolpic.gif", "ffffff");
void SetPicture(string Picture)
Description: Sets picture for the Pictureholder(Picture) item. Relative paths can be used.
Parameters:
Picture- new picture file for the item. Animated gif files can be used in this case.Example:
Player.GetSkinItem(1, "Picture1").SetBitmap( "Animation.gif");
bool IsVisible()
Description: The function retrieves the visibility state of the specified skin item.
Example:
bool IsDisabled()
Description: The function determines whether the specified skin item is disabled for mouse and keyboard input.
Example:
Properties:
long State
Description: Changes state of skin item.
Parameters: 1 - Normal, 2 - Pressed, 3 - Disabled, 4 - Hidden. NOTE: Pressed state can only be set for button items.
Example:
Player.GetSkinItem(0, "ShowEqualizer").State = 2;
long Left
Description: Gets and sets left position of item
Example:
Player.GetSkinItem(0, "ShowEqualizer").Left = 10;
long Top
Description: Gets and sets top position of item
Example:
Player.GetSkinItem(0, "ShowEqualizer").Top = 10;
long Width
Description: Gets and sets width of item
Example:
Player.GetSkinItem(0, "ShowEqualizer").Width = 100;
long Height
Description: Gets and sets Height of item
Example:
Player.GetSkinItem(0, "ShowEqualizer").Height = 100;
string Tooltip
Description: Gets and sets tooltip of item
Example:
Player.GetSkinItem(0, "ShowEqualizer").Tooltip = "Cool";
string Text
Description: Gets and sets text of an item. NOTE: This property can be used only with InfoDisplay items. Also, trackinfo keywords can be passed to this property.
Example:
Player.GetSkinItem(3, "ShowEqualizer").Tooltip = "Cool";
long SliderPosition
Description: Gets and sets slider position. Range for the property is 0 to 100. NOTE: This property can be used only with Slider items
Example:
Player.GetSkinItem(3, "Volume").SliderPosition = 10;
Support
If you have questions or concerns not addressed by this SDK, or just have suggestions for making the SDK more understandable, please visit our developer's forum