]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/treectrl.h
Corrected wxlistBox, wxRadioBox, wxComboBox and
[wxWidgets.git] / include / wx / msw / treectrl.h
index 4bae54274352e84253a93ec3d78a4bc2e760fd10..b9b401cdbc52c3608afaf96061d6a1c61a11e61e 100644 (file)
 // ----------------------------------------------------------------------------
 // headers
 // ----------------------------------------------------------------------------
+
 #ifdef __GNUG__
     #pragma interface "treectrl.h"
 #endif
 
 #include "wx/control.h"
 #include "wx/event.h"
+#include "wx/textctrl.h"
 
 #ifdef __GNUWIN32__
-#  ifdef GetFirstChild
-#    undef GetFirstChild
-#  endif
-
-#  ifdef GetNextSibling
-#    undef GetNextSibling
-#  endif
-#endif
+    // Cygwin windows.h defines these identifiers
+    #undef GetFirstChild
+    #undef GetNextSibling
+#endif // Cygwin
 
 // the type for "untyped" data
 typedef long wxDataType;
@@ -150,7 +148,11 @@ public:
 
     // accessors: set/get the item associated with this node
     void SetId(const wxTreeItemId& id) { m_itemId = id; }
+#ifdef __WATCOMC__
+    const wxTreeItemId GetId() const { return m_itemId; }
+#else
     const wxTreeItemId& GetId() const { return (wxTreeItemId&) m_itemId; }
+#endif
 };
 
 // ----------------------------------------------------------------------------
@@ -194,6 +196,11 @@ public:
     unsigned int GetIndent() const;
     void SetIndent(unsigned int indent);
 
+       // spacing is the number of pixels between the start and the Text
+       // not implemented under wxMSW
+    unsigned int GetSpacing() const { return 18; } // return wxGTK default
+    void SetSpacing(unsigned int ) {}
+
         // image list: these functions allow to associate an image list with
         // the control and retrieve it. Note that the control does _not_ delete
         // the associated image list when it's deleted in order to allow image
@@ -248,6 +255,9 @@ public:
         // the item will be shown in bold
     void SetItemBold(const wxTreeItemId& item, bool bold = TRUE);
 
+        // the item will be shown with a drop highlight
+    void SetItemDropHighlight(const wxTreeItemId& item, bool highlight = TRUE);
+
     // item status inquiries
     // ---------------------
 
@@ -294,6 +304,8 @@ public:
     wxTreeItemId GetFirstChild(const wxTreeItemId& item, long& _cookie) const;
         // get the next child
     wxTreeItemId GetNextChild(const wxTreeItemId& item, long& _cookie) const;
+        // get the last child of this item - this method doesn't use cookies
+    wxTreeItemId GetLastChild(const wxTreeItemId& item) const;
 
         // get the next sibling of this item
     wxTreeItemId GetNextSibling(const wxTreeItemId& item) const;
@@ -403,8 +415,7 @@ public:
     wxTreeItemId HitTest(const wxPoint& point, int& flags);
 
         // get the bounding rectangle of the item (or of its label only)
-        // @@@ do we really need to expose this functions to the application?
-    void GetBoundingRect(const wxTreeItemId& item,
+    bool GetBoundingRect(const wxTreeItemId& item,
                          wxRect& rect,
                          bool textOnly = FALSE) const;
 
@@ -433,9 +444,8 @@ public:
 
     // implementation
     // --------------
-    void Command(wxCommandEvent& event) { ProcessCommand(event); };
     virtual bool MSWCommand(WXUINT param, WXWORD id);
-    virtual bool MSWNotify(WXWPARAM wParam, WXLPARAM lParam, WXLPARAM *result);
+    virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
 
 protected:
     // SetImageList helper