changeset 205:3b1afb0b9b30

Clean up key event handling and add support for g_alt.
author Matti Hamalainen <ccr@tnsp.org>
date Wed, 29 Aug 2018 15:12:44 +0300
parents c4a17bf7b4de
children efbd833065f5
files events.pde multipaint.pde
diffstat 2 files changed, 35 insertions(+), 18 deletions(-) [+]
line wrap: on
line diff
--- a/events.pde	Wed Aug 29 15:06:07 2018 +0300
+++ b/events.pde	Wed Aug 29 15:12:44 2018 +0300
@@ -36,20 +36,26 @@
                 g_ofy++;
                 break;
 
+            case COMMAND:
+                if (platform == MACOSX)
+                    g_control = true;
+                break;
+
+            case CONTROL:
+                if (platform != MACOSX)
+                    g_control = true;
+                break;
+
             case SHIFT:
                 g_shift = true;
+                break;
+
+            case ALT:
+                g_alt = true;
+                break;
         }
 
         refresh();
-
-        if (platform == MACOSX)
-        {
-            if (keyCode == COMMAND)
-                g_control = true;
-        } else {
-            if (keyCode == CONTROL)
-                g_control = true;
-        }
     }
     else
     {
@@ -64,14 +70,25 @@
 {
     if (key == CODED)
     {
-        if (keyCode == CONTROL) g_control = false;
-        if (keyCode == SHIFT) g_shift = false;
-        if (platform == MACOSX) {
-            if (keyCode == COMMAND)
-                g_control = false;
-        } else {
-            if (keyCode == CONTROL)
-                g_control = false;
+        switch (keyCode)
+        {
+            case COMMAND:
+                if (platform == MACOSX)
+                    g_control = false;
+                break;
+
+            case CONTROL:
+                if (platform != MACOSX)
+                    g_control = false;
+                break;
+
+            case SHIFT:
+                g_shift = false;
+                break;
+
+            case ALT:
+                g_alt = false;
+                break;
         }
     }
 }
--- a/multipaint.pde	Wed Aug 29 15:06:07 2018 +0300
+++ b/multipaint.pde	Wed Aug 29 15:12:44 2018 +0300
@@ -71,7 +71,7 @@
 int g_pixelw = 1;
 int g_aspect = AR_SQUARE;
 
-boolean g_control = false, g_shift = false,
+boolean g_control = false, g_shift = false, g_alt = false,
     g_dirty, g_inhibit_aspect = false;
 
 String g_formatname, g_formatext,