]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/headerctrl.h
Fix wxPropertyGrid::GetPropertyRect when the last item is collapsed.
[wxWidgets.git] / include / wx / msw / headerctrl.h
index 38bf952f543fceefa8ed04125c5e8f108c675c98..db702c5a1906c33cfaa23a1bfbe79bf8ae4ccc49 100644 (file)
@@ -3,7 +3,6 @@
 // Purpose:     wxMSW native wxHeaderCtrl
 // Author:      Vadim Zeitlin
 // Created:     2008-12-01
 // Purpose:     wxMSW native wxHeaderCtrl
 // Author:      Vadim Zeitlin
 // Created:     2008-12-01
-// RCS-ID:      $Id$
 // Copyright:   (c) 2008 Vadim Zeitlin <vadim@wxwidgets.org>
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 // Copyright:   (c) 2008 Vadim Zeitlin <vadim@wxwidgets.org>
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
@@ -46,7 +45,14 @@ public:
 
     virtual ~wxHeaderCtrl();
 
 
     virtual ~wxHeaderCtrl();
 
-
+    
+protected:
+    // override wxWindow methods which must be implemented by a new control
+    virtual wxSize DoGetBestSize() const;
+    virtual void DoSetSize(int x, int y,
+                           int width, int height,
+                           int sizeFlags = wxSIZE_AUTO);
+    
 private:
     // implement base class pure virtuals
     virtual void DoSetCount(unsigned int count);
 private:
     // implement base class pure virtuals
     virtual void DoSetCount(unsigned int count);
@@ -58,12 +64,6 @@ private:
     virtual void DoSetColumnsOrder(const wxArrayInt& order);
     virtual wxArrayInt DoGetColumnsOrder() const;
 
     virtual void DoSetColumnsOrder(const wxArrayInt& order);
     virtual wxArrayInt DoGetColumnsOrder() const;
 
-    // override wxWindow methods which must be implemented by a new control
-    virtual wxSize DoGetBestSize() const;
-    virtual void DoSetSize(int x, int y,
-                           int width, int height,
-                           int sizeFlags = wxSIZE_AUTO);
-
     // override MSW-specific methods needed for new control
     virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
     virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
     // override MSW-specific methods needed for new control
     virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const;
     virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
@@ -90,6 +90,7 @@ private:
     int MSWFromNativeIdx(int item);
 
     // this is the same as above but for order, not index
     int MSWFromNativeIdx(int item);
 
     // this is the same as above but for order, not index
+    int MSWToNativeOrder(int order);
     int MSWFromNativeOrder(int order);
 
     // get the event type corresponding to a click or double click event
     int MSWFromNativeOrder(int order);
 
     // get the event type corresponding to a click or double click event
@@ -125,7 +126,10 @@ private:
     // the offset of the window used to emulate scrolling it
     int m_scrollOffset;
 
     // the offset of the window used to emulate scrolling it
     int m_scrollOffset;
 
-    DECLARE_NO_COPY_CLASS(wxHeaderCtrl)
+    // actual column we are dragging or -1 if not dragging anything
+    int m_colBeingDragged;
+
+    wxDECLARE_NO_COPY_CLASS(wxHeaderCtrl);
 };
 
 #endif // _WX_MSW_HEADERCTRL_H_
 };
 
 #endif // _WX_MSW_HEADERCTRL_H_