]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/kbdstate.h
activating DrawRectangle optimization
[wxWidgets.git] / include / wx / kbdstate.h
index 93412c975fc178763478a8595a5cfe6e9f1e2018..71e196db3c1374667441ea3ad900ae9f0bd8edb4 100644 (file)
@@ -28,6 +28,9 @@ public:
           m_shiftDown(shiftDown),
           m_altDown(altDown),
           m_metaDown(metaDown)
           m_shiftDown(shiftDown),
           m_altDown(altDown),
           m_metaDown(metaDown)
+#ifdef __WXOSX__
+          ,m_rawControlDown(false)
+#endif
     {
     }
 
     {
     }
 
@@ -45,12 +48,21 @@ public:
         return (m_controlDown ? wxMOD_CONTROL : 0) |
                (m_shiftDown ? wxMOD_SHIFT : 0) |
                (m_metaDown ? wxMOD_META : 0) |
         return (m_controlDown ? wxMOD_CONTROL : 0) |
                (m_shiftDown ? wxMOD_SHIFT : 0) |
                (m_metaDown ? wxMOD_META : 0) |
+#ifdef __WXOSX__
                (m_rawControlDown ? wxMOD_RAW_CONTROL : 0) |
                (m_rawControlDown ? wxMOD_RAW_CONTROL : 0) |
+#endif
                (m_altDown ? wxMOD_ALT : 0);
     }
 
     // returns true if any modifiers at all are pressed
                (m_altDown ? wxMOD_ALT : 0);
     }
 
     // returns true if any modifiers at all are pressed
-    bool HasModifiers() const { return GetModifiers() != wxMOD_NONE; }
+    bool HasAnyModifiers() const { return GetModifiers() != wxMOD_NONE; }
+
+    // returns true if any modifiers changing the usual key interpretation are
+    // pressed, notably excluding Shift
+    bool HasModifiers() const
+    {
+        return ControlDown() || RawControlDown() || AltDown();
+    }
 
     // accessors for individual modifier keys
     bool ControlDown() const { return m_controlDown; }
 
     // accessors for individual modifier keys
     bool ControlDown() const { return m_controlDown; }