X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c4f71cc3d63fb7bdfbd6cec3e39c8a8679f3e60..7977b62ae2b56a4ef73ea37659031d96d49f3333:/interface/accel.h diff --git a/interface/accel.h b/interface/accel.h index 263dc02be6..616f2b047a 100644 --- a/interface/accel.h +++ b/interface/accel.h @@ -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); };