Initial community commit
This commit is contained in:
89
Src/resources/skins/Big Bento/scripts/timecontrol.m
Normal file
89
Src/resources/skins/Big Bento/scripts/timecontrol.m
Normal file
@@ -0,0 +1,89 @@
|
||||
/*---------------------------------------------------
|
||||
-----------------------------------------------------
|
||||
Filename: timecontrol.m
|
||||
Version: 1.0
|
||||
|
||||
Type: maki
|
||||
Date: 29. Jun. 2007 - 00:13
|
||||
Author: Martin Poehlmann aka Deimos
|
||||
E-Mail: martin@skinconsortium.com
|
||||
Internet: www.skinconsortium.com
|
||||
www.martin.deimos.de.vu
|
||||
-----------------------------------------------------
|
||||
---------------------------------------------------*/
|
||||
|
||||
#include <lib/std.mi>
|
||||
#include <lib/config.mi>
|
||||
#include <lib/com/AutoRepeatButton.m>
|
||||
|
||||
Function updateAttrib (int val);
|
||||
|
||||
Global ConfigAttribute timeAttrib;
|
||||
Global text Display;
|
||||
Global AutoRepeatButton Increase, Decrease;
|
||||
Global float multiplier;
|
||||
Global int maxvalue, step;
|
||||
Global string suffix;
|
||||
Global boolean myChange;
|
||||
|
||||
System.onScriptLoaded ()
|
||||
{
|
||||
AutoRepeat_Load();
|
||||
string param = getParam();
|
||||
|
||||
string objects = getToken(param, "|", 0);
|
||||
group scriptGroup = getScriptGroup();
|
||||
Display = scriptGroup.findObject(getToken(objects, ";", 0));
|
||||
Decrease = scriptGroup.findObject(getToken(objects, ";", 1));
|
||||
Increase = scriptGroup.findObject(getToken(objects, ";", 2));
|
||||
|
||||
objects = getToken(param, "|", 1);
|
||||
timeAttrib = config.getItemByGuid(getToken(objects, ";", 0)).getattribute(getToken(objects, ";", 1));
|
||||
|
||||
step = stringToInteger(getToken(param, "|", 2));
|
||||
maxvalue = stringToInteger(getToken(param, "|", 3));
|
||||
multiplier = stringToFloat(getToken(param, "|", 4));
|
||||
suffix = getToken(param, "|", 5);
|
||||
|
||||
AutoRepeat_SetInitalDelay(250);
|
||||
AutoRepeat_SetRepeatDelay(125);
|
||||
|
||||
updateAttrib (0);
|
||||
}
|
||||
|
||||
System.onScriptUnloading ()
|
||||
{
|
||||
AutoRepeat_Unload();
|
||||
}
|
||||
|
||||
Increase.onLeftClick ()
|
||||
{
|
||||
if (!AutoRepeat_ClickType) return;
|
||||
updateAttrib (step);
|
||||
}
|
||||
|
||||
Decrease.onLeftClick ()
|
||||
{
|
||||
if (!AutoRepeat_ClickType) return;
|
||||
updateAttrib (-step);
|
||||
}
|
||||
|
||||
timeAttrib.onDataChanged ()
|
||||
{
|
||||
if (myChange) return;
|
||||
updateAttrib (0);
|
||||
}
|
||||
|
||||
updateAttrib (int val)
|
||||
{
|
||||
float i = stringToInteger(timeAttrib.getData());
|
||||
i += val;
|
||||
if (i < 0 || i > maxvalue) return;
|
||||
myChange = 1;
|
||||
string s = integerToString(i);
|
||||
if (timeAttrib) timeAttrib.setData(s);
|
||||
i *= multiplier;
|
||||
s = floatToString(i,1);
|
||||
Display.setText(s + suffix);
|
||||
myChange = 0;
|
||||
}
|
||||
Reference in New Issue
Block a user