[javascript-dev] Re: Re: Re: Re: screentoworld misunderstanding
gusanomaxlist
gusanomaxlist at googlemail.com
Fri Nov 9 16:20:17 MST 2007
- Previous message: [javascript-dev] Re: Re: Re: screentoworld misunderstanding
- Next message: [javascript-dev] Multislider in javascript
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
sorry, I miswrote it. I am sure that it's something really stupid but I just can't find it. The js is attached. Thanx. -------------- next part -------------- /* gusano at altern.org . 11/2007 horizontal slider with label (this is my first jsui ever...) adapted from jsui_simpleslider and jsui_textbutton */ autowatch = 1; inspector =1; setinletassist(0,"value"); setoutletassist(0,"value"); sketch.default2d(); var mytext = "slider"; var myfont = "Sans Serif"; var myfontsize = 0.6; // relative to height var val = 0; var vbrgb = [0.94,0.94,0.94]; var vfrgb = [0.55,0.76,1]; var vfrgb2 = [0.39,0.39,0.39]; var width = box.rect[2] - box.rect[0]; var height = box.rect[3] - box.rect[1]; var aspect = width/height; var last_x = 0; draw(); function draw() { with (sketch) { //scale everything to box size glmatrixmode("modelview"); glpushmatrix(); glscale(aspect,1,1); glenable("line_smooth"); // erase background glclearcolor(vbrgb); glclear(); // draw value glcolor(vfrgb); shapeslice(1,1); moveto(val-1,0); //relative left plane(val,1); //write text glcolor(vfrgb2); moveto( 0, 0); font(myfont); fontsize(myfontsize*height); textalign("center","center"); text(mytext); //reset transformation matrix glmatrixmode("modelview"); glpopmatrix(); } } function bang() { draw(); refresh(); outlet(0,val); } function text(v) { mytext = v.toString(); bang(); } function font(v) { myfont = v.toString(); bang(); } function fontsize(f) { myfontsize = f; bang(); } function msg_float(v) { val = Math.min(Math.max(0,v),1); notifyclients(); bang(); } function fsaa(v) { sketch.fsaa = v; bang(); } function frgb(r,g,b) { vfrgb[0] = r/255.; vfrgb[1] = g/255.; vfrgb[2] = b/255.; draw(); refresh(); } function frgb2(r,g,b) { vfrgb2[0] = r/255.; vfrgb2[1] = g/255.; vfrgb2[2] = b/255.; draw(); refresh(); } function brgb(r,g,b) { vbrgb[0] = r/255.; vbrgb[1] = g/255.; vbrgb[2] = b/255.; draw(); refresh(); } function setvalueof(v) { msg_float(v); } function getvalueof() { return val; } function onclick(x,y,but,cmd,shift,capslock,option,ctrl) { ondrag(x,y,but,cmd,shift,capslock,option,ctrl) } onclick.local = 1; //private function ondrag(x,y,but,cmd,shift,capslock,option,ctrl) { var f,a,v,dx; a = sketch.screentoworld(x,y); v = (a[0]+aspect)/aspect*0.5; dx = v - last_x; if (shift) { dx *= 0.2; f = v - dx; } else { f = v; } msg_float(f); last_x = v; } ondrag.local = 1; //private function onresize(w,h) { draw(); refresh(); } onresize.local = 1; //private function save() { embedmessage("brgb", Math.floor(vbrgb[0]*255), Math.floor(vbrgb[1]*255), Math.floor(vbrgb[2]*255)); embedmessage("frgb2", Math.floor(vfrgb2[0]*255), Math.floor(vfrgb2[1]*255), Math.floor(vfrgb2[2]*255)); embedmessage("frgb", Math.floor(vfrgb[0]*255), Math.floor(vfrgb[1]*255), Math.floor(vfrgb[2]*255)); embedmessage("text", mytext); embedmessage("fontsize", myfontsize); embedmessage("notifyclients"); }
- Previous message: [javascript-dev] Re: Re: Re: screentoworld misunderstanding
- Next message: [javascript-dev] Multislider in javascript
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
