]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/tbarbase.h
Window management and sizer layout corrections
[wxWidgets.git] / include / wx / tbarbase.h
index 863264c29048004ff1ccbe5c5b9f5bd3ef7939e1..d57869579bc663dc94675c4490b02af4a0fd39b4 100644 (file)
 
 #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
@@ -221,12 +224,22 @@ public:
     // toolbar construction
     // --------------------
 
+    // the most commonly used version of AddTool()
+    wxToolBarToolBase *AddTool(int id,
+                               const wxBitmap& bitmap,
+                               const wxString& shortHelpString = wxEmptyString,
+                               const wxString& longHelpString = wxEmptyString)
+    {
+        return AddTool(id, bitmap, wxNullBitmap, FALSE, NULL,
+                       shortHelpString, longHelpString);
+    }
+
     // If pushedBitmap is NULL, a reversed version of bitmap is created and
     // used as the pushed/toggled image. If toggle is TRUE, the button toggles
     // between the two states.
     wxToolBarToolBase *AddTool(int id,
                                const wxBitmap& bitmap,
-                               const wxBitmap& pushedBitmap = wxNullBitmap,
+                               const wxBitmap& pushedBitmap,
                                bool toggle = FALSE,
                                wxObject *clientData = NULL,
                                const wxString& shortHelpString = wxEmptyString,
@@ -325,10 +338,13 @@ public:
     virtual void SetToolSeparation(int separation)
         { m_toolSeparation = separation; }
 
-    virtual wxSize GetToolMargins() { return wxSize(m_xMargin, m_yMargin); }
+    virtual wxSize GetToolMargins() { return GetMargins(); }
     virtual int GetToolPacking() { return m_toolPacking; }
     virtual int GetToolSeparation() { return m_toolSeparation; }
 
+    // for compatibility
+    wxSize GetMargins() const { return wxSize(m_xMargin, m_yMargin); }
+
     // toolbar geometry
     // ----------------
 
@@ -397,6 +413,9 @@ public:
     // Do the toolbar button updates (check for EVT_UPDATE_UI handlers)
     virtual void DoToolbarUpdates();
 
+    // don't want toolbars to accept the focus
+    virtual bool AcceptsFocus() const { return FALSE; }
+
 protected:
     // to implement in derived classes
     // -------------------------------
@@ -454,8 +473,14 @@ protected:
 
 private:
     DECLARE_EVENT_TABLE()
+    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_