Metamorphis Scripts: Difference between revisions

From wiki.jriver.com
Jump to navigation Jump to search
No edit summary
m (Reverted edits by LaoloBasri (Talk); changed back to last version by Gateley)
 
(13 intermediate revisions by 2 users not shown)
Line 4: Line 4:


==Metamorphis Object Commands==
==Metamorphis Object Commands==
===Functions===

'''void SetBitmap(string Bitmap, string TransparentColor)'''<br>
Functions:
'''Description''': Sets image for the window. Relative paths can be used. SetBitmap function can be used to change image and region for a window.<br>

'''Parameters''':<br>
void SetBitmap(string Bitmap, string TransparentColor)
:''Bitmap'' - new bitmap file for the window.<br>

:''TransparentColor''- transparent color of new image.<br>
Description: Sets image for the window. Relative paths can be used. SetBitmap function can be used to change image and region for a window.
'''Example''':<br>

Player.SetBitmap( "coolpic.gif", "ff00ff");
Parameters:
----
Bitmap - new bitmap file for the window.
'''bool LoadSkinState()'''<br>
TransparentColor- transparent color of new image.
'''Description''': Loads previously saved state of the skin, usually called in handler for OnInitialize event.<br>

'''Return Values''': true if skin state was previously saved using SaveSkinState function, otherwise false.<br>
Example:
'''Example''':<br>

if(Metamorphis.LoadSkinState() == false)
Player.SetBitmap( "coolpic.gif", "ff00ff");
{

EQ.ShowWindow(true);
bool LoadSkinState()
}

----
Description: Loads previously saved state of the skin, usually called in handler for OnInitialize event.
'''void SaveSkinState()'''<br>

'''Description''': Saves skin state, usually called in handler for OnExit event.<br>
Return Values: true if skin state was previously saved using SaveSkinState function, otherwise false.
'''Example''':<br>

Metamorphis.SaveSkinState();
Example:
----

'''void SetStateValue(string Name, variant Value)'''<br>
if(Metamorphis.LoadSkinState() == false)
'''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<br>
{
'''Parameters''':<br>
EQ.ShowWindow(true);
:''Name'' - Name of the value to be set.<br>
}
:''Value'' - Specifies the data to be stored.<br>

'''Example''':<br>
void SaveSkinState()
Metamorphis.SetStateValue("SomeName", "SomeValue");

Metamorphis.SetStateValue("SomeName2", 1);
Description: Saves skin state, usually called in handler for OnExit event.
----

'''variant GetStateValue(string Name)'''<br>
Example:
'''Description''': Retrieves previously set state value. Supported types: number, string, boolean, double<br>

'''Parameters''':<br>
Metamorphis.SaveSkinState();
:''Name'' - Name of the value to be retrieved.<br>

'''Return Values''': the value's data<br>
void SetStateValue(string Name, variant Value)
'''Example''':<br>

var SoveValue = Metamorphis.GetStateValue("SomeName");
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
// check if value was previously set

if( SomeValue == null) // value was not set
Parameters:
{
Name - Name of the value to be set.
... do something
Value - Specifies the data to be stored.
}

----
Example:
'''long StartTimer(long Timeout, string FunctionName)'''<br>

'''Description''': This function creates a timer with the specified time-out value.<br>
Metamorphis.SetStateValue("SomeName", "SomeValue");
'''Parameters''':<br>
Metamorphis.SetStateValue("SomeName2", 1);
:''Timeout'' - specifies the time-out value, in milliseconds<br>

:''FunctionName'' - name the function to be notified when the time-out value elapses.<br>
variant GetStateValue(string Name)
'''Return Values''': Identifier of the new timer.<br>

'''Example''':<br>
Description: Retrieves previously set state value. Supported types: number, string, boolean, double
var TimerID = Metamorphis.StartTimer(1000, DoExtraCoolStuff );

----
Parameters:
'''void StopTimer(long TimerID)'''<br>
Name - Name of the value to be retrieved.
'''Description''': The function destroys the specified timer.<br>

'''Parameters''':<br>
Return Values: the value's data
:''TimerID''- Identifier of the timer.<br>

Example:
'''Example''':<br>
Metamorphis.StopTimer(TimerID );

----
var SoveValue = Metamorphis.GetStateValue("SomeName");
'''bool IsAlwaysOnTop ()'''<br>
// check if value was previously set
'''Description''': Retrieves Always on State state<br>
if( SomeValue == null) // value was not set
'''Return Values''': 0 - off, 1- on<br>
{
'''Example''':<br>
... do something
var State = Metamorphis.IsAlwaysOnTop();
}
'''void Minimize()'''<br>

'''Description''': Minimizes the skin.<br>
long StartTimer(long Timeout, string FunctionName)
'''void Maximize()'''<br>

Description: This function creates a timer with the specified time-out value.
'''Description''': Returns Media Jukebox to MEGA-ME state.<br>
'''void Close()'''<br>

'''Description''': Closes Media Jukebox.<br>
Parameters:
'''void Restore()'''<br>
Timeout - specifies the time-out value, in milliseconds
'''Description''': If a skin was minimized it will be restored.<br>
FunctionName - name the function to be notified when the time-out value elapses.
'''bool IsMinimized()'''<br>

'''Description''': Returns true if a skin is minimized.<br>
Return Values: Identifier of the new timer.
'''void EnableTooltips(bool bEnable)'''<br>

'''Description''': Turns tooltips on and off.<br>
Example:
'''Parameters''':<br>

:''bEnable'' - true(default) - to turn tooltips on, false - to turn tooltips off<br>
var TimerID = Metamorphis.StartTimer(1000, DoExtraCoolStuff );
'''long GetScreenWidth()'''<br>

'''Description''': retrieves screen width.<br>
void StopTimer(long TimerID)
'''long GetScreenHeight()'''<br>

Description: The function destroys the specified timer.
'''Description''': retrieves screen height.<br>
'''long GetScreenLeft()'''<br>

'''Description''': retrieves screen left.<br>
Parameters:
'''long GetScreenTop()'''<br>
TimerID- Identifier of the timer.
'''Descriptio'''n: retrieves screen top.<br>

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 off

long 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==
==Window Commands==
===Functions===

'''void SetWindowPos( long x, long y)'''<br>
Functions:
'''Description''': Sets position of the window to x, y point.<br>

'''Parameters''':<br>
void SetWindowPos( long x, long y)
:''x'' , ''y'' - coordinates are Desktop coordinates.<br>

'''Example''':<br>
Description: Sets position of the window to x, y point.
Playlist.SetWindowPos(101, 107);

'''void ShowWindow(bool ShowCommand)'''<br>
Parameters:
'''Description''': Changes visual state of the window.<br>
x , y - coordinates are Desktop coordinates.
'''Parameters''':<br>

:''ShowCommand'' - true - Show, false - Hide<br>
Example:
'''Example''':<br>

Playlist.SetWindowPos(101, 107);
Playlist.ShowWindow(true);
'''void MoveWindowAnimated(long OffsetX, long OffsetY, long Speed)'''<br>

'''Description''': Moves the window from current point to x+OffsetX and y+OffsetY<br>
void ShowWindow(bool ShowCommand)
'''Parameters''':<br>

:''Speed'' - value from 1 to 100, determines how fast the movement will be performed.<br>
Description: Changes visual state of the window.
'''Example''':<br>

Equalizer.ShowWindowAnimated(101, 0, -100, 107, 4);
Parameters:
'''void SetWindowBehind(Object Window)'''<br>
ShowCommand - true - Show, false - Hide
'''Description''': Changes ZOrder of the window, by inserting the window behind specified window.<br>

'''Parameters''':<br>
Example:
:''Window'' - one of Window objects of the skin, for example 'Player'<br>

'''Example''':<br>
Playlist.ShowWindow(true);
Equalizer.SetWindowBehind(Player);

'''void GetSkinItem(long MainType, string Name)'''<br>
void MoveWindowAnimated(long OffsetX, long OffsetY, long Speed)
'''Description''':<br>

'''Parameters''':<br>
Description: Moves the window from current point to x+OffsetX and y+OffsetY
:''MainType'' - 0 - Button, 1 - Placeholder, 2 - Slider, 3 - InfoDisplay<br>

'''Example''':<br>
Parameters:
Player.GetSkinItem(0, "ShowEqualizer").SetItemState("Show");
Speed - value from 1 to 100, determines how fast the movement will be performed.
'''bool IsWindowVisible()'''<br>

'''Description''': The function retrieves the visibility state of the specified window.<br>
Example:
===Properties===

'''long Left'''<br>
Equalizer.ShowWindowAnimated(101, 0, -100, 107, 4);
'''Description''':<br>

'''Example''':<br>
void SetWindowBehind(Object Window)
var x = Player.PositionX;

'''long Top'''<br>
Description: Changes ZOrder of the window, by inserting the window behind specified window.
'''Description''':<br>

'''Example''':<br>
Parameters:
var y = Player.PositionY;
Window - one of Window objects of the skin, for example 'Player'
'''long Width'''

Example:
'''Example''':<br>
var Width = Player.Width;

'''long Height'''<br>
Equalizer.SetWindowBehind(Player);
'''Example''':<br>

var Height = Player.Height;
void GetSkinItem(long MainType, string Name)

Description:

Parameters:
MainType - 0 - Button, 1 - Placeholder, 2 - Slider, 3 - InfoDisplay

Example:

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==
==SkinItem Commands==
To get skin item use GetSkinItem function

===Functions===
To get skin item use GetSkinItem function
'''void SetPosition(long x, long y)'''<br>

'''Description''': Sets new position of the skin item.<br>
Functions:
'''Parameters''':<br>

:''x'', ''y'' - new coordinates, coordinates of the item..<br>
void SetPosition(long x, long y)
'''Example''':<br>

Player.GetSkinItem(0, "HidePlaylist").SetPosition(10, 100);
Description: Sets new position of the skin item.
'''void SetBitmap(string Bitmap, string TransparentColor)'''<br>

'''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.<br>
Parameters:
'''Parameters''':<br>
x, y - new coordinates, coordinates of the item..
:''Bitmap'' - new bitmap file for the item.<br>

:''TransparentColor''- transparent color of new image.<br>
Example:
'''Example''':<br>

Player.GetSkinItem(0, "HidePlaylist").SetPosition(10, 100);
Player.GetSkinItem(0, "Play").SetBitmap( "coolpic.gif", "ffffff");
'''void SetPicture(string Picture)'''<br>

'''Description''': Sets picture for the Pictureholder(Picture) item. Relative paths can be used.<br>
void SetBitmap(string Bitmap, string TransparentColor)
'''Parameters''':<br>

:''Picture''- new picture file for the item. Animated gif files can be used in this case.<br>
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.
'''Example''':<br>

Player.GetSkinItem(1, "Picture1").SetBitmap( "Animation.gif");
Parameters:
'''bool IsVisible()'''<br>
Bitmap - new bitmap file for the item.
'''Description''': The function retrieves the visibility state of the specified skin item.<br>
TransparentColor- transparent color of new image.
'''bool IsDisabled()'''<br>

'''Description''': The function determines whether the specified skin item is disabled for mouse and keyboard input.<br>
Example:
===Properties===

'''long State'''<br>
Player.GetSkinItem(0, "Play").SetBitmap( "coolpic.gif", "ffffff");
'''Description''': Changes state of skin item.<br>

'''Parameters''': 1 - Normal, 2 - Pressed, 3 - Disabled, 4 - Hidden. NOTE: Pressed state can only be set for button items.<br>
void SetPicture(string Picture)
'''Example''':<br>

Player.GetSkinItem(0, "ShowEqualizer").State = 2;
Description: Sets picture for the Pictureholder(Picture) item. Relative paths can be used.
'''long Left'''<br>

'''Description''': Gets and sets left position of item<br>
Parameters:
'''Example''':<br>
Picture- new picture file for the item. Animated gif files can be used in this case.
Player.GetSkinItem(0, "ShowEqualizer").Left = 10;

'''long Top'''<br>
Example:
'''Description''': Gets and sets top position of item<br>

'''Example''':<br>
Player.GetSkinItem(1, "Picture1").SetBitmap( "Animation.gif");
Player.GetSkinItem(0, "ShowEqualizer").Top = 10;

'''long Width'''<br>
bool IsVisible()
'''Description''': Gets and sets width of item<br>

'''Example''':<br>
Description: The function retrieves the visibility state of the specified skin item.
Player.GetSkinItem(0, "ShowEqualizer").Width = 100;

'''long Height'''<br>
Example:
'''Description''': Gets and sets Height of item<br>

'''Example''':<br>
bool IsDisabled()
Player.GetSkinItem(0, "ShowEqualizer").Height = 100;

'''string Tooltip'''<br>
Description: The function determines whether the specified skin item is disabled for mouse and keyboard input.
'''Description''': Gets and sets tooltip of item<br>

Example:
'''Example''':<br>
Player.GetSkinItem(0, "ShowEqualizer").Tooltip = "Cool";

'''string Text'''<br>
Properties:
'''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.<br>

'''Example''':<br>
long State
Player.GetSkinItem(3, "ShowEqualizer").Tooltip = "Cool";

'''long SliderPosition'''<br>
Description: Changes state of skin item.
'''Description''': Gets and sets slider position. Range for the property is 0 to 100. NOTE: This property can be used only with Slider items<br>

'''Example''':<br>
Parameters: 1 - Normal, 2 - Pressed, 3 - Disabled, 4 - Hidden. NOTE: Pressed state can only be set for button items.
Player.GetSkinItem(3, "Volume").SliderPosition = 10;

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;

Latest revision as of 16:06, 14 January 2008

Metamorphis Scripts requires MJ 8.0.253 and above, or any version of Media Center.

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 off

long 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 - InfoDisplay

Example:

Player.GetSkinItem(0, "ShowEqualizer").SetItemState("Show");

bool IsWindowVisible()
Description: The function retrieves the visibility state of the specified window.

Properties

long Left
Description:
Example:

var x = Player.PositionX;

long Top
Description:
Example:

var y = Player.PositionY;

long Width Example:

var Width = Player.Width;

long Height
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.
bool IsDisabled()
Description: The function determines whether the specified skin item is disabled for mouse and keyboard input.

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;