]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/headerctrl.h
STL build: fix missing const which results in Insert(int, T) being called instead...
[wxWidgets.git] / include / wx / msw / headerctrl.h
index 74919ef11111ed0a7271397626fecd0c65a8b09f..e707cef5f34f3b2f7f3753586f00768f9a5acfdf 100644 (file)
@@ -55,25 +55,38 @@ private:
 
     virtual void DoScrollHorz(int dx);
 
+    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);
 
     // common part of all ctors
     void Init();
 
-    // wrapper around Header_{Set,Insert}Item(): either appends the item to the
-    // end or modifies the existing item by copying information from
-    // GetColumn(idx) to it
-    enum Operation { Set, Insert };
-    void DoSetOrInsertItem(Operation oper, unsigned int idx);
+    // wrapper around Header_InsertItem(): insert the item by using information
+    // from GetColumn(idx) and at the given display position if order != -1
+    void DoInsertItem(unsigned int idx, int order);
+
+    // get the event type corresponding to a click or double click event
+    // (depending on dblclk value) with the specified (using MSW convention)
+    // mouse button
+    wxEventType GetClickEventType(bool dblclk, int button);
 
 
     // the image list: initially NULL, created on demand
     wxImageList *m_imageList;
 
+    // the offset of the window used to emulate scrolling it
+    int m_scrollOffset;
+
     DECLARE_NO_COPY_CLASS(wxHeaderCtrl)
 };