// ----------------------------------------------------------------------------
// 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;
// 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
};
// ----------------------------------------------------------------------------
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
// 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
// ---------------------
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;
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;
// 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