mirror of
https://github.com/Ttanasart-pt/Pixel-Composer.git
synced 2024-12-27 07:26:33 +01:00
47 lines
1,009 B
Text
47 lines
1,009 B
Text
|
function NodeTool(name, spr) constructor {
|
||
|
self.name = name;
|
||
|
self.spr = spr;
|
||
|
|
||
|
subtools = is_array(spr)? array_length(spr) : 0;
|
||
|
selecting = 0;
|
||
|
settings = [];
|
||
|
attribute = {};
|
||
|
|
||
|
static addSetting = function(name, type, onEdit, keyAttr, val) {
|
||
|
var w;
|
||
|
|
||
|
switch(type) {
|
||
|
case VALUE_TYPE.float :
|
||
|
w = new textBox(TEXTBOX_INPUT.number, onEdit);
|
||
|
w.font = f_p2;
|
||
|
break;
|
||
|
case VALUE_TYPE.boolean :
|
||
|
w = new checkBox(onEdit);
|
||
|
break;
|
||
|
}
|
||
|
|
||
|
array_push(settings, [ name, w, keyAttr, attribute ]);
|
||
|
attribute[$ keyAttr] = val;
|
||
|
|
||
|
return self;
|
||
|
}
|
||
|
|
||
|
static toggle = function() {
|
||
|
if(subtools == 0) {
|
||
|
PANEL_PREVIEW.tool_current = PANEL_PREVIEW.tool_current == self? noone : self;
|
||
|
} else {
|
||
|
if(PANEL_PREVIEW.tool_current != self) {
|
||
|
PANEL_PREVIEW.tool_current = self;
|
||
|
selecting = 0;
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
selecting++;
|
||
|
if(selecting == subtools) {
|
||
|
selecting = 0;
|
||
|
PANEL_PREVIEW.tool_current = noone;
|
||
|
} else
|
||
|
PANEL_PREVIEW.tool_current = self;
|
||
|
}
|
||
|
}
|
||
|
}
|