]> git.saurik.com Git - wxWidgets.git/commitdiff
Add wxRenderer::GetHeaderButtonMargin().
authorVáclav Slavík <vslavik@fastmail.fm>
Sat, 30 Oct 2010 15:57:32 +0000 (15:57 +0000)
committerVáclav Slavík <vslavik@fastmail.fm>
Sat, 30 Oct 2010 15:57:32 +0000 (15:57 +0000)
Used for best size calculations of column width.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/renderer.h
interface/wx/renderer.h
src/generic/renderg.cpp
src/gtk/renderer.cpp
src/msw/renderer.cpp
src/osx/carbon/renderer.cpp

index c1b744ce61de0f0133190782af4f3927943898c6..6a0116d75ab8f4cb646656a2d2253b44c65a551d 100644 (file)
@@ -200,6 +200,9 @@ public:
     // height if available, or a generic height based on the window's font.
     virtual int GetHeaderButtonHeight(wxWindow *win) = 0;
 
+    // Returns the margin on left and right sides of header button's label
+    virtual int GetHeaderButtonMargin(wxWindow *win) = 0;
+
 
     // draw the expanded/collapsed icon for a tree control item
     virtual void DrawTreeItemButton(wxWindow *win,
@@ -401,6 +404,9 @@ public:
     virtual int GetHeaderButtonHeight(wxWindow *win)
         { return m_rendererNative.GetHeaderButtonHeight(win); }
 
+    virtual int GetHeaderButtonMargin(wxWindow *win)
+        { return m_rendererNative.GetHeaderButtonMargin(win); }
+
     virtual void DrawTreeItemButton(wxWindow *win,
                                     wxDC& dc,
                                     const wxRect& rect,
index 96899058bfe0e4c109a1626dd076df7dcd1d0aa2..d7c28320a257cbdcd803436317052fc2d8ded9fc 100644 (file)
@@ -204,6 +204,8 @@ public:
 
     virtual int GetHeaderButtonHeight(wxWindow *win);
 
+    virtual int GetHeaderButtonMargin(wxWindow *win);
+
     virtual void DrawTreeItemButton(wxWindow *win, wxDC& dc,
                                     const wxRect& rect, int flags = 0);
 
@@ -494,6 +496,14 @@ public:
     */
     virtual int GetHeaderButtonHeight(wxWindow* win) = 0;
 
+    /**
+        Returns the horizontal margin on the left and right sides of header
+        button's label.
+
+        @since 2.9.2
+     */
+    virtual int GetHeaderButtonMargin(wxWindow *win) = 0;
+
     /**
         Get the splitter parameters, see wxSplitterRenderParams.
         The @a win parameter should be a wxSplitterWindow.
index 98a217f0f769ca17e34c2a9d59642ef13d0d5e7f..6c0ce55de44a58b374f525f7d7b084d32cf4aa8a 100644 (file)
@@ -67,6 +67,8 @@ public:
 
     virtual int GetHeaderButtonHeight(wxWindow *win);
 
+    virtual int GetHeaderButtonMargin(wxWindow *win);
+
     virtual void DrawTreeItemButton(wxWindow *win,
                                     wxDC& dc,
                                     const wxRect& rect,
@@ -445,6 +447,11 @@ int wxRendererGeneric::GetHeaderButtonHeight(wxWindow *win)
     return h + d + 2 * HEADER_OFFSET_Y + EXTRA_HEIGHT;
 }
 
+int wxRendererGeneric::GetHeaderButtonMargin(wxWindow *WXUNUSED(win))
+{
+    return 5;
+}
+
 
 // draw the plus or minus sign
 void
index c905ae8fc056ec546baa8f5f5801eb1e4a0c5218..70315318dd1e73a29ec7f11868273b9088f2c4e6 100644 (file)
@@ -56,6 +56,8 @@ public:
 
     virtual int GetHeaderButtonHeight(wxWindow *win);
 
+    virtual int GetHeaderButtonMargin(wxWindow *win);
+
 
     // draw the expanded/collapsed icon for a tree control item
     virtual void DrawTreeItemButton(wxWindow *win,
@@ -226,6 +228,12 @@ int wxRendererGTK::GetHeaderButtonHeight(wxWindow *WXUNUSED(win))
     return req.height;
 }
 
+int wxRendererGTK::GetHeaderButtonMargin(wxWindow *WXUNUSED(win))
+{
+    wxFAIL_MSG( "GetHeaderButtonMargin() not implemented" );
+    return -1;
+}
+
 
 // draw a ">" or "v" button
 void
index 4c748fd526a5e2404d534e04240063fbb3049b27..9d1e4d79e448f402e778b014627c1b5481ba0447 100644 (file)
@@ -197,6 +197,8 @@ public:
 
     virtual int GetHeaderButtonHeight(wxWindow *win);
 
+    virtual int GetHeaderButtonMargin(wxWindow *win);
+
 private:
     // wrapper of DrawFrameControl()
     void DoDrawFrameControl(UINT type,
@@ -517,6 +519,11 @@ int wxRendererMSW::GetHeaderButtonHeight(wxWindow * WXUNUSED(win))
     return Header_Layout(hwndHeader, &hdl) ? wp.cy : DEFAULT_HEIGHT;
 }
 
+int wxRendererMSW::GetHeaderButtonMargin(wxWindow *WXUNUSED(win))
+{
+    return 10;
+}
+
 // Uses the theme to draw the border and fill for something like a wxTextCtrl
 void wxRendererMSW::DrawTextCtrl(wxWindow* win, wxDC& dc, const wxRect& rect, int flags)
 {
index 2481dd2242732914376dffed360ca956c7e1a736..9fc1a415bfb27914420bf0506760178b7b6b8d65 100644 (file)
@@ -62,6 +62,8 @@ public:
 
     virtual int GetHeaderButtonHeight(wxWindow *win);
 
+    virtual int GetHeaderButtonMargin(wxWindow *win);
+
     // draw the expanded/collapsed icon for a tree control item
     virtual void DrawTreeItemButton( wxWindow *win,
         wxDC& dc,
@@ -225,6 +227,12 @@ int wxRendererMac::GetHeaderButtonHeight(wxWindow* WXUNUSED(win))
     return -1;
 }
 
+int wxRendererMac::GetHeaderButtonMargin(wxWindow *WXUNUSED(win))
+{
+    wxFAIL_MSG( "GetHeaderButtonMargin() not implemented" );
+    return -1;
+}
+
 void wxRendererMac::DrawTreeItemButton( wxWindow *win,
     wxDC& dc,
     const wxRect& rect,