From: Julian Smart Date: Mon, 7 Aug 2000 14:42:48 +0000 (+0000) Subject: Added first stab at GetBoundingRect for generic tree control X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/8fb3bfe20f221dcb868d685d705c5fddb2deef11 Added first stab at GetBoundingRect for generic tree control git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/generic/treectlg.h b/include/wx/generic/treectlg.h index 6b661d238b..17e4e295ed 100644 --- a/include/wx/generic/treectlg.h +++ b/include/wx/generic/treectlg.h @@ -281,6 +281,11 @@ public: { int dummy; return HitTest(point, dummy); } wxTreeItemId HitTest(const wxPoint& point, int& flags); + // get the bounding rectangle of the item (or of its label only) + bool GetBoundingRect(const wxTreeItemId& item, + wxRect& rect, + bool textOnly = FALSE) const; + // Start editing the item label: this (temporarily) replaces the item // with a one line edit control. The item will be selected if it hadn't // been before. diff --git a/src/generic/treectlg.cpp b/src/generic/treectlg.cpp index 5a7c1c4c58..76bf9030ab 100644 --- a/src/generic/treectlg.cpp +++ b/src/generic/treectlg.cpp @@ -2109,6 +2109,27 @@ wxTreeItemId wxGenericTreeCtrl::HitTest(const wxPoint& point, int& flags) return m_anchor->HitTest( wxPoint(x, y), this, flags); } +// get the bounding rectangle of the item (or of its label only) +bool wxGenericTreeCtrl::GetBoundingRect(const wxTreeItemId& item, + wxRect& rect, + bool textOnly) const +{ + wxCHECK2_MSG( item.IsOk(), FALSE, _T("invalid item in wxGenericTreeCtrl::GetBoundingRect") ); + + wxGenericTreeItem *i = (wxGenericTreeItem*) item.m_pItem; + + int startX, startY; + GetViewStart(& startX, & startY); + + rect.x = i->GetX() - startX*PIXELS_PER_UNIT; rect.y = i->GetY()*PIXELS_PER_UNIT; + rect.width = i->GetWidth(); rect.height = i->GetHeight(); + + return TRUE; + + // wxFAIL_MSG(wxT("GetBoundingRect unimplemented")); + // return FALSE; +} + /* **** */ void wxGenericTreeCtrl::Edit( const wxTreeItemId& item )