]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_renderer.i
fixed deadlock when calling wxPostEvent() from worker thread
[wxWidgets.git] / wxPython / src / _renderer.i
index 705abbba80c1baa9e0439cb8a249d21690e36e5d..c7f100b84fb71d534d07118853af2c860ca440e5 100644 (file)
@@ -26,18 +26,18 @@ enum
     wxCONTROL_DISABLED   = 0x00000001,  // control is disabled
     wxCONTROL_FOCUSED    = 0x00000002,  // currently has keyboard focus
     wxCONTROL_PRESSED    = 0x00000004,  // (button) is pressed
-    wxCONTROL_ISDEFAULT  = 0x00000008,  // only applies to the buttons
-    wxCONTROL_ISSUBMENU  = wxCONTROL_ISDEFAULT, // only for menu items
-    wxCONTROL_EXPANDED   = wxCONTROL_ISDEFAULT, // only for the tree items
+    wxCONTROL_SPECIAL    = 0x00000008,  // control-specific bit:
+    wxCONTROL_ISDEFAULT  = wxCONTROL_SPECIAL, // only for the buttons
+    wxCONTROL_ISSUBMENU  = wxCONTROL_SPECIAL, // only for the menu items
+    wxCONTROL_EXPANDED   = wxCONTROL_SPECIAL, // only for the tree items
+    wxCONTROL_SIZEGRIP   = wxCONTROL_SPECIAL, // only for the status bar panes
     wxCONTROL_CURRENT    = 0x00000010,  // mouse is currently over the control
     wxCONTROL_SELECTED   = 0x00000020,  // selected item in e.g. listbox
     wxCONTROL_CHECKED    = 0x00000040,  // (check/radio button) is checked
     wxCONTROL_CHECKABLE  = 0x00000080,  // (menu) item can be checked
     wxCONTROL_UNDETERMINED = wxCONTROL_CHECKABLE, // (check) undetermined state
-    wxCONTROL_UPICON     = 0x00000100,  // header button has an up arrow icon
-    wxCONTROL_DOWNICON   = 0x00000200,  // header button has a down arrow icon
 
-    wxCONTROL_FLAGS_MASK = 0x000002ff,
+    wxCONTROL_FLAGS_MASK = 0x000000ff,
 
     // this is a pseudo flag not used directly by wxRenderer but rather by some
     // controls internally
@@ -97,6 +97,11 @@ struct wxHeaderButtonParams
     int         m_labelAlignment;
 };
 
+enum wxHeaderSortIconType {
+    wxHDR_SORT_ICON_NONE,        // Header button has no sort arrow
+    wxHDR_SORT_ICON_UP,          // Header button an an up sort arrow icon
+    wxHDR_SORT_ICON_DOWN         // Header button an a down sort arrow icon
+};
 
 
 DocStr(wxRendererVersion,
@@ -151,21 +156,23 @@ public:
 
      
     DocDeclStr(
-        virtual void , DrawHeaderButton(wxWindow *win,
-                                        wxDC& dc,
-                                        const wxRect& rect,
-                                        int flags = 0,
-                                        wxHeaderButtonParams* params=NULL),
-        "Draw the header control button (such as what is used by `wx.ListCtrl`
-in report mode.)", "");
+        virtual int , DrawHeaderButton(wxWindow *win,
+                                       wxDC& dc,
+                                       const wxRect& rect,
+                                       int flags = 0,
+                                       wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE,
+                                       wxHeaderButtonParams* params=NULL),
+        "Draw a header control button (such as what is used by `wx.ListCtrl` in report
+mode.)  The optimal size of the label (text and icons) is returned.", "");
     
 
     DocDeclStr(
-        virtual void , DrawHeaderButtonContents(wxWindow *win,
-                                                wxDC& dc,
-                                                const wxRect& rect,
-                                                int flags = 0,
-                                                wxHeaderButtonParams* params=NULL),
+        virtual int , DrawHeaderButtonContents(wxWindow *win,
+                                               wxDC& dc,
+                                               const wxRect& rect,
+                                               int flags = 0,
+                                               wxHeaderSortIconType sortArrow = wxHDR_SORT_ICON_NONE,
+                                               wxHeaderButtonParams* params=NULL),
         "Draw the contents of a header control button, (label, sort
 arrows, etc.)  Normally this is only called by `DrawHeaderButton`.", "");