You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AFX_yTools/ScriptUI Panels/yToolBox.jsx

1 line
3.2 KiB

function yToolBox(thisObj){
yToolBox_data = new Object();
yToolBox_data.icon = new File('../yScripts/yNet.png');
yToolBox_data.header = new File('../yScripts/header.png');
yToolBox_data.info = 'yorchnet.com';
yToolBox_data.name ='yToolBox';
yToolBox_data.ver ='0.4.2.1 alpha';
yToolBox_data.desc='Working tools so far...';
yToolBox_data.buttonWidth=126;
yToolBox_data.buttonHeight=30;
yToolBox_data.tools = [];
#include "../yScripts/y_JSExtensions.jsx";
//INCLUDED TOOLS
#include "../yScripts/y_setStructure.jsx";
#include "../yScripts/y_puppetRig.jsx";
#include "../yScripts/y_colorProbe.jsx";
#include "../yScripts/y_yBindBetween2.jsx";
#include "../yScripts/y_stopMotionLayer.jsx";
#include "../yScripts/y_CornerPin.jsx";
yToolBox_data.window = (thisObj instanceof Panel) ? thisObj : new Window("palette", yToolBox_data.info , undefined, {resizeable:true});
//MAIN WINDOW STRUCTURE.
var res_header ="group { orientation:'column', alignment:['fill','fill'],margins:[0,0,0,0] \
header: Group { orientation:'column', alignment:['center','top'],margins:[0,0,0,0]\
title: Image {icon:'"+yToolBox_data.header.path+'/'+yToolBox_data.header.name+"',preferredSize: [175, 35]},\
ver: StaticText { text:'"+yToolBox_data.ver+"', alignment:['center','center']}\
desc: StaticText { text:'"+yToolBox_data.desc+"', alignment:['center','center']}, \
}, \
main: Group { orientation:'column',alignment:['fill','fill'], alignChildren:['center','center'],"
var res = ""; //To be populated with the included Tools
var res_footer ="}, \
cmds: Group { alignment:['center','bottom'], \
icn_app: Image {icon:'"+ yToolBox_data.icon.path+'/'+ yToolBox_data.icon.name+"',preferredSize: [15, 18]},\
txt_info: StaticText { text:'"+yToolBox_data.info+"', alignment:['fill','center'] },\
}, \
}";
//POPULATE res with included tools.
for (i=0;i<yToolBox_data.tools.length;i++){
res = res + yToolBox_data.tools [i].btnLayout;
}
//LAYOUT Stuff
yToolBox_data.window.grp = yToolBox_data.window.add(res_header+res+res_footer);
yToolBox_data.window.layout.layout(true);
yToolBox_data.window.onResize = resize;
yToolBox_data.window.onClose = function () {delete yToolBox_data;};
//ASSIGN buttons to the activate function of each tool;
var toolBtns = yToolBox_data.window.grp.main.children;
for(n=0;n<toolBtns.length;n++){
toolBtns[n].onClick=yToolBox_data.tools[n].activate;
}
return yToolBox_data.window
}
function resize(){
this.layout.resize();
customize;
}
function customize(){
g = yToolBox_data.window.grp.main.graphics;
myFont = ScriptUI.newFont('Cooper Std Black',ScriptUI.FontStyle.REGULAR ,14 );
myBrush = g.newBrush(g.BrushType.SOLID_COLOR, [1, .45, 0, 1]);
g.backgroundColor = myBrush;
/*g = yToolBox_data.window.grp.header.title.graphics;
g.font = myFont;
g =yToolBox_data.window.grp.header.graphics;
g.backgroundColor = myBrush;
*/
}
yToolBox(this);
yToolBox_data.window.grp.onDraw = resize;
yToolBox_data.window.grp.onDraw = customize;