]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/toolbar.h
Make wxGCDC::GetGraphicsContext() const.
[wxWidgets.git] / include / wx / msw / toolbar.h
index eadf5217c4f4d2adbc60f31237e48bd2ba35dc3b..4f45e4038437c106f924ab8e2c9fb30e560c5ac8 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wx/msw/tbar95.h
+// Name:        wx/msw/toolbar.h
 // Purpose:     wxToolBar (Windows 95 toolbar) class
 // Author:      Julian Smart
 // Modified by:
@@ -80,6 +80,11 @@ public:
     // returns true if the platform should explicitly apply a theme border
     virtual bool CanApplyThemeBorder() const { return false; }
 
+#ifdef wxHAS_MSW_BACKGROUND_ERASE_HOOK
+    virtual bool MSWEraseBgHook(WXHDC hDC);
+    virtual WXHBRUSH MSWGetBgBrushForChild(WXHDC hDC, wxWindowMSW *child);
+#endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
+
 protected:
     // common part of all ctors
     void Init();
@@ -115,9 +120,9 @@ protected:
 
     // handlers for various events
     bool HandleSize(WXWPARAM wParam, WXLPARAM lParam);
-#ifndef __WXWINCE__
+#ifdef wxHAS_MSW_BACKGROUND_ERASE_HOOK
     bool HandlePaint(WXWPARAM wParam, WXLPARAM lParam);
-#endif // __WXWINCE__
+#endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
     void HandleMouseMove(WXWPARAM wParam, WXLPARAM lParam);
 
     // should be called whenever the toolbar size changes
@@ -156,11 +161,15 @@ private:
     // have
     void UpdateStretchableSpacersSize();
 
-#ifndef __WXWINCE__
-    // redraw the background of the given part of the window to erase separator
-    // drawn in it
-    void MSWEraseRect(wxDC& dc, const wxRect& rectItem);
-#endif // !__WXWINCE__
+#ifdef wxHAS_MSW_BACKGROUND_ERASE_HOOK
+    // do erase the toolbar background, always do it for the entire control as
+    // the caller sets the clipping region correctly to exclude parts which
+    // should not be erased
+    void MSWDoEraseBackground(WXHDC hDC);
+
+    // return the brush to use for erasing the toolbar background
+    WXHBRUSH MSWGetToolbarBgBrush();
+#endif // wxHAS_MSW_BACKGROUND_ERASE_HOOK
 
     DECLARE_EVENT_TABLE()
     DECLARE_DYNAMIC_CLASS(wxToolBar)