Revision: 3938 http://vexi.svn.sourceforge.net/vexi/?rev=3938&view=rev Author: clrg Date: 2010-10-21 13:40:15 +0000 (Thu, 21 Oct 2010)
Log Message: ----------- Clean up + clickable now works without a surface Modified Paths: -------------- trunk/widgets/org.vexi.widgets/src/org/vexi/lib/role/clickable.t Modified: trunk/widgets/org.vexi.widgets/src/org/vexi/lib/role/clickable.t =================================================================== --- trunk/widgets/org.vexi.widgets/src/org/vexi/lib/role/clickable.t 2010-10-21 13:39:33 UTC (rev 3937) +++ trunk/widgets/org.vexi.widgets/src/org/vexi/lib/role/clickable.t 2010-10-21 13:40:15 UTC (rev 3938) @@ -75,8 +75,11 @@ if (primed) { // fire action or stop repeat if (mouse and mouse.inside) { - if (repeats) repeat = false; - else action = true; + if (repeats) { + repeat = false; + } else { + action = true; + } } } } @@ -107,7 +110,9 @@ cascade = v; // deprime us when disabled if (e != trapee.enabled) { - if (!e) trapee.primed = false; + if (!e) { + trapee.primed = false; + } trapee.normal = true; } } @@ -117,8 +122,9 @@ var f = trapee.focused; cascade = v; // unprime if defocused - if (f and !trapee.focused and trapee.primed) + if (f and !trapee.focused and trapee.primed) { trapee.primed = false; + } } /** returns the appropriate interval for repeating clickable to use */ @@ -140,11 +146,16 @@ if (v) trapee.active = true; else { var m = trapee.mouse; - if (m and m.inside) trapee.hover = true; - else trapee.normal = true; + if (m and m.inside) { + trapee.hover = true; + } else { + trapee.normal = true; + } } // set repeat state if necessary - if (trapee.repeats) trapee.repeat = v; + if (trapee.repeats) { + trapee.repeat = v; + } cascade = v; } // do nothing when not enabled @@ -153,11 +164,16 @@ /** KeyPressed write trap */ static.keypressEvent = function(v) { - if (v == "enter" or v == " ") + switch (v) { + case "enter": case " ": trapee.primed = true; - else if (v == "escape") + break; + case "escape": trapee.primed = false; - else cascade = v; + break; + default: + cascade = v; + } } /** KeyReleased write trap */ @@ -174,8 +190,12 @@ if (trapee.enabled) { if (trapee.primed) { trapee.active = true; - if (trapee.repeats) trapee.repeat = true; - } else trapee.hover = true; + if (trapee.repeats) { + trapee.repeat = true; + } + } else { + trapee.hover = true; + } } cascade = v; } @@ -184,7 +204,9 @@ static.leaveEvent = function(v) { if (trapee.enabled) { trapee.normal = true; - if (trapee.repeats and trapee.primed) trapee.repeat = false; + if (trapee.repeats and trapee.primed) { + trapee.repeat = false; + } } cascade = v; } @@ -195,8 +217,12 @@ // set primed state trapee.primed = true; // apply surface trap - if (trapee.surface) - trapee.surface.event._Release1 ++= trapee.surfaceReleaseEvent; + var s = trapee.surface; + if (s and s.event) { + s.event._Release1 ++= trapee.surfaceReleaseEvent; + } else { + trapee._Release1 ++= trapee.surfaceReleaseEvent; + } } cascade = v; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Vexi-svn mailing list Vexi-svn@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/vexi-svn