From: Carl G. <cg...@gm...> - 2005-06-28 17:03:43
|
Hi, [I mailed this originally about 24 hours ago but it doesn't appear to have reached the list. Sorry for the repost if both show up!] I was delighted to discover wxTreeListCtrl the other day. I've integrated it into my application easily. Thanks a lot! I have three comments: 1. If someone goes back over the documentation, alphabetizing it would be a great service. The methods are hard to find since it looks like the wxTreeCtrl methods are first followed by the wxListCtrl-like ones. Or something. 2. For those of us who build with WXWIN_COMPATIBILITY_2_4 turned off, I suggest changing the references to wxSystemSettings::GetSystemColo= =20 ur() to GetColour() since the former form is now deprecated. 3. If you use the style wxTR_HIDE_ROOT, then wxTreeListCtrl::SelectAll() (and perhaps other related methods) doesn't work correctly. The fix is=20 pretty simple. At line 2611 of treelistctrl.cpp, change if (parent->HasChildren() && parent->IsExpanded()) { to if (parent->HasChildren() && (parent->IsExpanded() || HasFlag (wxTR_HIDE_ROOT))) { Thanks again for the useful class, carl |
From: Carl G. <cg...@gm...> - 2005-06-29 05:17:07
|
Hi, I was delighted to discover wxTreeListCtrl the other day. I've integrated it into my application easily. Thanks a lot! I have three comments: 1. If someone goes back over the documentation, alphabetizing it would be a great service. The methods are hard to find since it looks like the wxTreeCtrl methods are first followed by the wxListCtrl-like ones. Or something. 2. For those of us who build with WXWIN_COMPATIBILITY_2_4 turned off, I suggest changing the references to=20 wxSystemSettings::GetSystemColour() to GetColour() since the former form is now deprecated. 3. If you use the style wxTR_HIDE_ROOT, then wxTreeListCtrl::SelectAll() (and perhaps other related methods) doesn't work correctly. The fix is=20 pretty simple. At line 2611 of treelistctrl.cpp, change if (parent->HasChildren() && parent->IsExpanded()) { to if (parent->HasChildren() && (parent->IsExpanded() || HasFlag (wxTR_HIDE_ROOT))) { Thanks again for the useful class, carl |
From: Otto W. <ott...@or...> - 2005-06-28 20:29:32
|
Carl Godkin wrote: > > 1. If someone goes back over the documentation, alphabetizing it would > be > a great service. The methods are hard to find since it looks like the > wxTreeCtrl methods are first followed by the wxListCtrl-like ones. Or > something. > I've though about this too but haven't found the time to change it. > 2. For those of us who build with WXWIN_COMPATIBILITY_2_4 turned > off, I suggest changing the references to > wxSystemSettings::GetSystemColo > ur() > to GetColour() since the former form is now deprecated. > I've put a #if !wxCHECK_VERSION(2,5,0) around each occurence (see the source) so I wonder why it doesn't work with you. I've not problem building it with 2.4 and 2.6. > 3. If you use the style wxTR_HIDE_ROOT, then > wxTreeListCtrl::SelectAll() > (and perhaps other related methods) doesn't work correctly. The fix > is > pretty simple. At line 2611 of treelistctrl.cpp, change > > if (parent->HasChildren() && parent->IsExpanded()) { > to > if (parent->HasChildren() && > (parent->IsExpanded() || HasFlag (wxTR_HIDE_ROOT))) { > I think you don't use the newest version from CVS, do you? I've added this change in TagNextChildren to CVS so please test it from there. Tanks also O. Wyss -- Development of frame buffer drivers: http://linux-fbdev.sf.net Sample code snippets for wxWidgets: http://wxcode.sf.net How to build well-designed applications: http://wyoguide.sf.net Desktop with a consistent look and feel: http://wyodesktop.sf.net |
From: Carl G. <cg...@gm...> - 2005-06-29 14:34:29
|
On 6/28/05, Otto Wyss <ott...@or...> wrote: >=20 >=20 >=20 > > 2. For those of us who build with WXWIN_COMPATIBILITY_2_4 turned > > off, I suggest changing the references to > > wxSystemSettings::GetSystemColo > > ur() > > to GetColour() since the former form is now deprecated. > > > I've put a >=20 > #if !wxCHECK_VERSION(2,5,0) >=20 > around each occurence (see the source) so I wonder why it doesn't work > with you. I've not problem building it with 2.4 and 2.6. I naively just downloaded the version from the Components page.=20 I didn't think about getting the latest from CVS. Thanks a lot for pointing it out! carl |
From: Otto W. <ott...@or...> - 2005-06-29 17:46:33
|
I've thought again about your change and think the following is the right solution if ((parent->HasChildren() && parent->IsExpanded()) || ((parent == (wxTreeListItem*)GetRootItem().m_pItem) && HasFlag(wxTR_HIDE_ROOT))) { I've just made a new file release (see the component list) so you might use this instead of CVS. O. Wyss -- Development of frame buffer drivers: http://linux-fbdev.sf.net Sample code snippets for wxWidgets: http://wxcode.sf.net How to build well-designed applications: http://wyoguide.sf.net Desktop with a consistent look and feel: http://wyodesktop.sf.net |