X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/33ac7e6f01acbac1cff0ad400d8ea7f0bfd0a62f..b82d2a004d854d821078528ec586f17ea653085d:/include/wx/tbarbase.h diff --git a/include/wx/tbarbase.h b/include/wx/tbarbase.h index 81062fe304..469c4f36a1 100644 --- a/include/wx/tbarbase.h +++ b/include/wx/tbarbase.h @@ -22,12 +22,15 @@ #include "wx/defs.h" +#if wxUSE_TOOLBAR + #include "wx/bitmap.h" #include "wx/list.h" #include "wx/control.h" class WXDLLEXPORT wxToolBarBase; class WXDLLEXPORT wxToolBarToolBase; +class WXDLLEXPORT wxImage; // ---------------------------------------------------------------------------- // constants @@ -118,9 +121,9 @@ public: wxToolBarBase *GetToolBar() const { return m_tbar; } // style - int IsButton() const { return m_toolStyle == wxTOOL_STYLE_BUTTON; } - int IsControl() const { return m_toolStyle == wxTOOL_STYLE_CONTROL; } - int IsSeparator() const { return m_toolStyle == wxTOOL_STYLE_SEPARATOR; } + bool IsButton() const { return m_toolStyle == wxTOOL_STYLE_BUTTON; } + bool IsControl() const { return m_toolStyle == wxTOOL_STYLE_CONTROL; } + bool IsSeparator() const { return m_toolStyle == wxTOOL_STYLE_SEPARATOR; } int GetStyle() const { return m_toolStyle; } // state @@ -129,11 +132,13 @@ public: bool CanBeToggled() const { return m_isToggle; } // attributes - const wxBitmap& GetBitmap1() const { return m_bitmap1; } - const wxBitmap& GetBitmap2() const { return m_bitmap2; } + const wxBitmap& GetNormalBitmap() const { return m_bitmap1; } + const wxBitmap& GetDisabledBitmap() const { return m_bitmap2; } const wxBitmap& GetBitmap() const - { return IsToggled() ? m_bitmap2 : m_bitmap1; } + { return IsEnabled() ? GetNormalBitmap() : GetDisabledBitmap(); } + + wxString GetLabel() const { return m_label; } wxString GetShortHelp() const { return m_shortHelpString; } wxString GetLongHelp() const { return m_longHelpString; } @@ -159,8 +164,10 @@ public: void Toggle() { Toggle(!IsToggled()); } - void SetBitmap1(const wxBitmap& bmp) { m_bitmap1 = bmp; } - void SetBitmap2(const wxBitmap& bmp) { m_bitmap2 = bmp; } + void SetNormalBitmap(const wxBitmap& bmp) { m_bitmap1 = bmp; } + void SetDisabledBitmap(const wxBitmap& bmp) { m_bitmap2 = bmp; } + + void SetLabel(const wxString& label) { m_label = label; } void SetClientData(wxObject *clientData) { @@ -178,6 +185,15 @@ public: virtual void Detach() { m_tbar = (wxToolBarBase *)NULL; } virtual void Attach(wxToolBarBase *tbar) { m_tbar = tbar; } + // compatibility only, don't use +#if WXWIN_COMPATIBILITY_2_2 + const wxBitmap& GetBitmap1() const { return GetNormalBitmap(); } + const wxBitmap& GetBitmap2() const { return GetDisabledBitmap(); } + + void SetBitmap1(const wxBitmap& bmp) { SetNormalBitmap(bmp); } + void SetBitmap2(const wxBitmap& bmp) { SetDisabledBitmap(bmp); } +#endif // WXWIN_COMPATIBILITY_2_2 + protected: wxToolBarBase *m_tbar; // the toolbar to which we belong (may be NULL) @@ -196,10 +212,13 @@ protected: bool m_isToggle; bool m_enabled; - // normal and toggles bitmaps + // normal and disabled bitmaps wxBitmap m_bitmap1; wxBitmap m_bitmap2; + // the button label + wxString m_label; + // short and long help strings wxString m_shortHelpString; wxString m_longHelpString; @@ -335,7 +354,7 @@ public: virtual void SetToolSeparation(int separation) { m_toolSeparation = separation; } - virtual wxSize GetToolMargins() { return GetToolMargins(); } + virtual wxSize GetToolMargins() { return GetMargins(); } virtual int GetToolPacking() { return m_toolPacking; } virtual int GetToolSeparation() { return m_toolSeparation; } @@ -371,6 +390,9 @@ public: virtual wxToolBarToolBase *FindToolForPosition(wxCoord x, wxCoord y) const = 0; + // return TRUE if this is a vertical toolbar, otherwise FALSE + bool IsVertical() const { return HasFlag(wxTB_VERTICAL); } + // event handlers // -------------- @@ -410,7 +432,7 @@ public: // Do the toolbar button updates (check for EVT_UPDATE_UI handlers) virtual void DoToolbarUpdates(); - // Don't want toolbars to accept the focus + // don't want toolbars to accept the focus virtual bool AcceptsFocus() const { return FALSE; } protected: @@ -473,6 +495,11 @@ private: DECLARE_CLASS(wxToolBarBase) }; +// Helper function for creating the image for disabled buttons +bool wxCreateGreyedImage(const wxImage& in, wxImage& out) ; + +#endif // wxUSE_TOOLBAR + #endif // _WX_TBARBASE_H_