X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b5dbe15d0bacde245539f54c4d97af6b4696f01f..51623cc53f350935337e57930eaaf1afe9a48c3b:/include/wx/accel.h?ds=sidebyside diff --git a/include/wx/accel.h b/include/wx/accel.h index 025b51b375..562b257d92 100644 --- a/include/wx/accel.h +++ b/include/wx/accel.h @@ -27,24 +27,25 @@ class WXDLLIMPEXP_FWD_CORE wxKeyEvent; // ---------------------------------------------------------------------------- // wxAcceleratorEntry flags -enum +enum wxAcceleratorEntryFlags { wxACCEL_NORMAL = 0x0000, // no modifiers wxACCEL_ALT = 0x0001, // hold Alt key down wxACCEL_CTRL = 0x0002, // hold Ctrl key down wxACCEL_SHIFT = 0x0004, // hold Shift key down #if defined(__WXMAC__) || defined(__WXCOCOA__) - wxACCEL_CMD = 0x0008 // Command key on OS X + wxACCEL_RAW_CTRL= 0x0008, // #else - wxACCEL_CMD = wxACCEL_CTRL + wxACCEL_RAW_CTRL= wxACCEL_CTRL, #endif + wxACCEL_CMD = wxACCEL_CTRL }; // ---------------------------------------------------------------------------- // an entry in wxAcceleratorTable corresponds to one accelerator // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxAcceleratorEntry +class WXDLLIMPEXP_CORE wxAcceleratorEntry { public: wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0, @@ -68,7 +69,8 @@ public: wxAcceleratorEntry& operator=(const wxAcceleratorEntry& entry) { - Set(entry.m_flags, entry.m_keyCode, entry.m_command, entry.m_item); + if (&entry != this) + Set(entry.m_flags, entry.m_keyCode, entry.m_command, entry.m_item); return *this; } @@ -106,8 +108,7 @@ public: bool IsOk() const { - return m_flags != 0 && - m_keyCode != 0; + return m_keyCode != 0; } @@ -116,8 +117,13 @@ public: // returns a wxString for the this accelerator. // this function formats it using the - format - // where maybe a hyphen-separed list of "shift|alt|ctrl" - wxString ToString() const; + // where maybe a hyphen-separated list of "shift|alt|ctrl" + wxString ToString() const { return AsPossiblyLocalizedString(true); } + + // same as above but without translating, useful if the string is meant to + // be stored in a file or otherwise stored, instead of being shown to the + // user + wxString ToRawString() const { return AsPossiblyLocalizedString(false); } // returns true if the given string correctly initialized this object // (i.e. if IsOk() returns true after this call) @@ -125,6 +131,8 @@ public: private: + wxString AsPossiblyLocalizedString(bool localized) const; + // common part of Create() and FromString() static bool ParseAccel(const wxString& str, int *flags, int *keycode); @@ -156,14 +164,14 @@ private: #elif defined(__WXGTK__) #include "wx/gtk1/accel.h" #elif defined(__WXMAC__) - #include "wx/mac/accel.h" + #include "wx/osx/accel.h" #elif defined(__WXCOCOA__) #include "wx/generic/accel.h" #elif defined(__WXPM__) #include "wx/os2/accel.h" #endif -extern WXDLLEXPORT_DATA(wxAcceleratorTable) wxNullAcceleratorTable; +extern WXDLLIMPEXP_DATA_CORE(wxAcceleratorTable) wxNullAcceleratorTable; #endif // wxUSE_ACCEL