]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/treectrl.h
added wxSYS_COLOUR_LISTBOX
[wxWidgets.git] / include / wx / msw / treectrl.h
index 97078b53e44515c61d5ff611e082c77b3c582532..f27f7bea4baa02086219e755105f83a37ac2d0f1 100644 (file)
@@ -34,6 +34,7 @@ typedef long wxDataType;
 
 // fwd decl
 class  WXDLLEXPORT wxImageList;
+class  WXDLLEXPORT wxDragImage;
 struct WXDLLEXPORT wxTreeViewItem;
 
 // a callback function used for sorting tree items, it should return -1 if the
@@ -319,6 +320,13 @@ public:
                             int image = -1, int selectedImage = -1,
                             wxTreeItemData *data = NULL);
 
+        // insert a new item before the one with the given index
+    wxTreeItemId InsertItem(const wxTreeItemId& parent,
+                            size_t index,
+                            const wxString& text,
+                            int image = -1, int selectedImage = -1,
+                            wxTreeItemData *data = NULL);
+
         // insert a new item in as the last child of the parent
     wxTreeItemId AppendItem(const wxTreeItemId& parent,
                             const wxString& text,
@@ -432,9 +440,14 @@ public:
 
     // implementation
     // --------------
+    virtual long MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
     virtual bool MSWCommand(WXUINT param, WXWORD id);
     virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
 
+    // override some base class virtuals
+    virtual bool SetBackgroundColour(const wxColour &colour);
+    virtual bool SetForegroundColour(const wxColour &colour);
+
     // get/set the check state for the item (only for wxTR_MULTIPLE)
     bool IsItemChecked(const wxTreeItemId& item) const;
     void SetItemCheck(const wxTreeItemId& item, bool check = TRUE);
@@ -478,8 +491,18 @@ private:
                              wxTreeItemIndirectData *data);
     bool HasIndirectData(const wxTreeItemId& item) const;
 
+    // the array storing all item ids which have indirect data
     wxArrayTreeItemIds m_itemsWithIndirectData;
 
+    // the hash storing the items attributes (indexed by items ids)
+    wxHashTable m_attrs;
+
+    // TRUE if the hash above is not empty
+    bool m_hasAnyAttr;
+
+    // used for dragging
+    wxDragImage *m_dragImage;
+
     DECLARE_DYNAMIC_CLASS(wxTreeCtrl)
 };