X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/50414e24a7aa082f2569666421d3ee1ea581a3cd..2b9bd418c5ca5cfabf1d183db391893d1040b5f2:/include/wx/motif/menu.h diff --git a/include/wx/motif/menu.h b/include/wx/motif/menu.h index f89f733d11..d29ae23ac4 100644 --- a/include/wx/motif/menu.h +++ b/include/wx/motif/menu.h @@ -18,6 +18,8 @@ #include "wx/defs.h" #include "wx/event.h" +#include "wx/font.h" +#include "wx/gdicmn.h" class WXDLLEXPORT wxMenuItem; class WXDLLEXPORT wxMenuBar; @@ -62,6 +64,10 @@ public: bool Checked(int id) const; inline bool IsChecked(int id) const { return IsChecked(id); }; + // Client data + inline void SetClientData(void* clientData) { m_clientData = clientData; } + inline void* GetClientData() const { return m_clientData; } + // item properties // title void SetTitle(const wxString& label); @@ -111,6 +117,15 @@ public: void DestroyMenu(bool full); WXWidget FindMenuItem(int id, wxMenuItem **it = NULL) const; + const wxColour& GetBackgroundColour() const { return m_backgroundColour; } + const wxColour& GetForegroundColour() const { return m_foregroundColour; } + const wxFont& GetFont() const { return m_font; } + + void SetBackgroundColour(const wxColour& colour); + void SetForegroundColour(const wxColour& colour); + void SetFont(const wxFont& colour); + void ChangeFont(bool keepOriginalSize = FALSE); + public: wxFunction m_callback; @@ -120,6 +135,7 @@ public: wxList m_menuItems; wxEvtHandler * m_parent; wxEvtHandler * m_eventHandler; + void* m_clientData; //// Motif-specific int m_numColumns; @@ -130,6 +146,9 @@ public: wxMenu* m_topLevelMenu ; wxMenu* m_menuParent; bool m_ownedByMenuBar; + wxColour m_foregroundColour; + wxColour m_backgroundColour; + wxFont m_font; }; // ---------------------------------------------------------------------------- @@ -183,6 +202,21 @@ class WXDLLEXPORT wxMenuBar: public wxEvtHandler inline WXWidget GetMainWidget() const { return m_mainWidget; } inline void SetMainWidget(WXWidget widget) { m_mainWidget = widget; } + // Create menubar + bool CreateMenuBar(wxFrame* frame); + + // Destroy menubar, but keep data structures intact so we can recreate it. + bool DestroyMenuBar(); + + const wxColour& GetBackgroundColour() const { return m_backgroundColour; } + const wxColour& GetForegroundColour() const { return m_foregroundColour; } + const wxFont& GetFont() const { return m_font; } + + void SetBackgroundColour(const wxColour& colour); + void SetForegroundColour(const wxColour& colour); + void SetFont(const wxFont& colour); + void ChangeFont(bool keepOriginalSize = FALSE); + public: wxEvtHandler * m_eventHandler; int m_menuCount; @@ -193,6 +227,9 @@ class WXDLLEXPORT wxMenuBar: public wxEvtHandler //// Motif-specific WXWidget m_mainWidget; + wxColour m_foregroundColour; + wxColour m_backgroundColour; + wxFont m_font; }; #endif // _WX_MENU_H_