]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/accel.h
added language info for Northern Sami (patch 1964036)
[wxWidgets.git] / interface / accel.h
index 263dc02be64db2bdc7de14883b518880857c0c1e..616f2b047aa059efe87568922971848667c63601 100644 (file)
@@ -42,11 +42,6 @@ enum wxAcceleratorEntryFlags
 class wxAcceleratorEntry
 {
 public:
-    /**
-        Default ctor.
-    */
-    wxAcceleratorEntry();
-
     /**
         Constructor.
 
@@ -56,9 +51,17 @@ public:
         @param keyCode
             The keycode to be detected. See @ref page_keycodes for a full list of keycodes.
         @param cmd
-            The menu or control command identifier.
+            The menu or control command identifier (ID).
+        @param item
+            The menu item associated with this accelerator.
+    */
+    wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0,
+                       wxMenuItem *item = NULL);
+
+    /**
+        Copy ctor.
     */
-    wxAcceleratorEntry(int flags, int keyCode, int cmd);
+    wxAcceleratorEntry(const wxAcceleratorEntry& entry);
 
     /**
         Returns the command identifier for the accelerator table entry.
@@ -75,6 +78,11 @@ public:
     */
     int GetKeyCode() const;
 
+    /**
+        Returns the menu item associated with this accelerator entry.
+    */
+    wxMenuItem *GetMenuItem() const;
+
     /**
         Sets the accelerator entry parameters.
 
@@ -84,10 +92,39 @@ public:
         @param keyCode
             The keycode to be detected. See @ref page_keycodes for a full list of keycodes.
         @param cmd
-            The menu or control command identifier.
+            The menu or control command identifier (ID).
+        @param item
+            The menu item associated with this accelerator.
+    */
+    void Set(int flags, int keyCode, int cmd, wxMenuItem *item = NULL);
+
+    /**
+        Returns @true if this object is correctly initialized.
+    */
+    bool IsOk() const;
+
+    /**
+        Returns a wxString for this accelerator.
+        This function formats it using the @c "flags-keycode" format
+        where @c flags maybe a hyphen-separed list of @c "shift|alt|ctrl".
+    */
+    wxString ToString() const;
+
+    /**
+        Parses the given string and sets the accelerator accordingly.
+
+        @param str
+            Should be a string in the form "flags-keycode"
 
+        @return @true if the given string correctly initialized this object
+                (i.e. if IsOk() returns true after this call)
     */
-    void Set(int flags, int keyCode, int cmd);
+    bool FromString(const wxString& str);
+
+
+    wxAcceleratorEntry& operator=(const wxAcceleratorEntry& entry);
+    bool operator==(const wxAcceleratorEntry& entry) const;
+    bool operator!=(const wxAcceleratorEntry& entry) const;
 };
 
 
@@ -144,11 +181,13 @@ public:
         @param entries
             The array of entries.
     */
-    wxAcceleratorTable(int n, wxAcceleratorEntry entries[]);
+    wxAcceleratorTable(int n, const wxAcceleratorEntry entries[]);
 
     /**
         Loads the accelerator table from a Windows resource (Windows only).
 
+        @onlyfor{wxmsw}
+
         @param resource
             Name of a Windows accelerator.
     */
@@ -158,20 +197,12 @@ public:
         Destroys the wxAcceleratorTable object.
         See @ref overview_refcount_destruct for more info.
     */
-    ~wxAcceleratorTable();
+    virtual ~wxAcceleratorTable();
 
     /**
         Returns @true if the accelerator table is valid.
     */
     bool IsOk() const;
-
-    /**
-        Assignment operator, using @ref overview_refcount "reference counting".
-
-        @param accel
-            Accelerator table to assign.
-    */
-    wxAcceleratorTable operator =(const wxAcceleratorTable& accel);
 };