X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3e4f8ee25683fe9c7ec6e8272608124e332700ac..2ef989c972df0bd023ec3b7252fb91afca55f8ab:/include/wx/generic/treectlg.h diff --git a/include/wx/generic/treectlg.h b/include/wx/generic/treectlg.h index 833cfd1cc7..c21b331fe6 100644 --- a/include/wx/generic/treectlg.h +++ b/include/wx/generic/treectlg.h @@ -21,14 +21,14 @@ // forward declaration // ----------------------------------------------------------------------------- -class WXDLLEXPORT wxGenericTreeItem; +class WXDLLIMPEXP_FWD_CORE wxGenericTreeItem; -class WXDLLEXPORT wxTreeItemData; +class WXDLLIMPEXP_FWD_CORE wxTreeItemData; -class WXDLLEXPORT wxTreeRenameTimer; -class WXDLLEXPORT wxTreeFindTimer; -class WXDLLEXPORT wxTreeTextCtrl; -class WXDLLEXPORT wxTextCtrl; +class WXDLLIMPEXP_FWD_CORE wxTreeRenameTimer; +class WXDLLIMPEXP_FWD_CORE wxTreeFindTimer; +class WXDLLIMPEXP_FWD_CORE wxTreeTextCtrl; +class WXDLLIMPEXP_FWD_CORE wxTextCtrl; // ----------------------------------------------------------------------------- // wxGenericTreeCtrl - the tree control @@ -69,7 +69,7 @@ public: // implement base class pure virtuals // ---------------------------------- - virtual size_t GetCount() const; + virtual unsigned int GetCount() const; virtual unsigned int GetIndent() const { return m_indent; } virtual void SetIndent(unsigned int indent); @@ -112,7 +112,13 @@ public: // ---------- virtual wxTreeItemId GetRootItem() const { return m_anchor; } - virtual wxTreeItemId GetSelection() const { return m_current; } + virtual wxTreeItemId GetSelection() const + { + wxASSERT_MSG( !HasFlag(wxTR_MULTIPLE), + wxT("must use GetSelections() with this control") ); + + return m_current; + } virtual size_t GetSelections(wxArrayTreeItemIds&) const; virtual wxTreeItemId GetItemParent(const wxTreeItemId& item) const; @@ -180,36 +186,18 @@ public: wxTreeItemId GetNext(const wxTreeItemId& item) const; - void ExpandAll(const wxTreeItemId& item); - #if WXWIN_COMPATIBILITY_2_6 // use EditLabel() instead void Edit( const wxTreeItemId& item ) { EditLabel(item); } #endif // WXWIN_COMPATIBILITY_2_6 -#if WXWIN_COMPATIBILITY_2_4 - // deprecated functions: use Set/GetItemImage directly - wxDEPRECATED( int GetItemSelectedImage(const wxTreeItemId& item) const ); - wxDEPRECATED( void SetItemSelectedImage(const wxTreeItemId& item, int image) ); - - // use the versions taking wxTreeItemIdValue cookies (note that - // GetNextChild() is not inside wxDEPRECATED on purpose, as otherwise we - // get twice as many warnings without any added benefit: it is always used - // with GetFirstChild() anyhow) - wxDEPRECATED( wxTreeItemId GetFirstChild(const wxTreeItemId& item, - long& cookie) const ); - wxTreeItemId GetNextChild(const wxTreeItemId& item, - long& cookie) const; -#endif // WXWIN_COMPATIBILITY_2_4 - // implementation only from now on // overridden base class virtuals virtual bool SetBackgroundColour(const wxColour& colour); virtual bool SetForegroundColour(const wxColour& colour); - virtual void Freeze(); - virtual void Thaw(); + virtual void Refresh(bool eraseBackground = true, const wxRect *rect = NULL); virtual bool SetFont( const wxFont &font ); virtual void SetWindowStyle(const long styles); @@ -221,6 +209,7 @@ public: void OnChar( wxKeyEvent &event ); void OnMouse( wxMouseEvent &event ); void OnGetToolTip( wxTreeEvent &event ); + void OnSize( wxSizeEvent &event ); void OnInternalIdle( ); virtual wxVisualAttributes GetDefaultAttributes() const @@ -262,7 +251,6 @@ protected: bool m_lastOnSame; // last click on the same item as prev wxImageList *m_imageListButtons; - int m_freezeCount; int m_dragCount; wxPoint m_dragStart; wxGenericTreeItem *m_dropTarget; @@ -282,6 +270,9 @@ protected: // the common part of all ctors void Init(); + // overridden wxWindow methods + virtual void DoThaw(); + // misc helpers void SendDeleteEvent(wxGenericTreeItem *itemBeingDeleted); @@ -304,7 +295,7 @@ protected: const wxString& text, int image = -1, int selImage = -1, wxTreeItemData *data = NULL); - virtual wxTreeItemId DoHitTest(const wxPoint& point, int& flags); + virtual wxTreeItemId DoTreeHitTest(const wxPoint& point, int& flags) const; // called by wxTextTreeCtrl when it marks itself for deletion void ResetTextControl(); @@ -343,6 +334,10 @@ protected: void UnselectAllChildren( wxGenericTreeItem *item ); void ChildrenClosing(wxGenericTreeItem* item); + void DoDirtyProcessing(); + + virtual wxSize DoGetBestSize() const; + private: DECLARE_EVENT_TABLE() DECLARE_DYNAMIC_CLASS(wxGenericTreeCtrl) @@ -377,4 +372,3 @@ public: #endif // wxUSE_TREECTRL #endif // _GENERIC_TREECTRL_H_ -