]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/toolbar.h
rearranging contentview, adding toolbar
[wxWidgets.git] / include / wx / msw / toolbar.h
index 92fcfd7bcd76d82b5dee6e113aefcce0fe2515e8..4de16f718040e50708271994408423a5ba21206f 100644 (file)
@@ -17,7 +17,7 @@
 #include "wx/dynarray.h"
 #include "wx/imaglist.h"
 
-class WXDLLEXPORT wxToolBar : public wxToolBarBase
+class WXDLLIMPEXP_CORE wxToolBar : public wxToolBarBase
 {
 public:
     // ctors and dtor
@@ -116,7 +116,9 @@ protected:
 
     // handlers for various events
     bool HandleSize(WXWPARAM wParam, WXLPARAM lParam);
+#ifndef __WXWINCE__
     bool HandlePaint(WXWPARAM wParam, WXLPARAM lParam);
+#endif // __WXWINCE__
     void HandleMouseMove(WXWPARAM wParam, WXLPARAM lParam);
 
     // should be called whenever the toolbar size changes
@@ -140,13 +142,31 @@ protected:
     // the total number of toolbar elements
     size_t m_nButtons;
 
+    // the sum of the sizes of the fixed items (i.e. excluding stretchable
+    // spaces) in the toolbar direction
+    int m_totalFixedSize;
+
     // the tool the cursor is in
     wxToolBarToolBase *m_pInTool;
 
 private:
+    // makes sure tool bitmap size is sufficient for all tools
+    void AdjustToolBitmapSize();
+
+    // update the sizes of stretchable spacers to consume all extra space we
+    // have
+    void UpdateStretchableSpacersSize();
+
+    // redraw the background of the given part of the window (or entire window
+    // if the parameter is NULL) to erase separator drawn in it
+    //
+    // return true if the background was erased using DrawThemeBackground()
+    bool MSWEraseRect(wxDC& dc, const wxRect *rectItem = NULL);
+
+
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxToolBar)
-    DECLARE_NO_COPY_CLASS(wxToolBar)
+    wxDECLARE_NO_COPY_CLASS(wxToolBar);
 };
 
 #endif // wxUSE_TOOLBAR