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

Reply via email to