mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-05 03:20:08 +01:00
Merge item hiding to CustomTreeCtrl
Move item hiding from HyperTreeList to CustomTreeCtrl so that both trees can have the feature. Add a HideItemWindows() method to hide windows only for a specific item and its children. This is much faster than calling HideWindows(). Add context menu options to the CustomTreeCtrl demo so that Hiding can be tested.
This commit is contained in:
@@ -1621,6 +1621,9 @@ class CustomTreeCtrl(CT.CustomTreeCtrl):
|
||||
|
||||
item7 = menu.Append(wx.ID_ANY, "Disable item")
|
||||
|
||||
menu.AppendSeparator()
|
||||
item14 = menu.Append(wx.ID_ANY, "Hide Item")
|
||||
item15 = menu.Append(wx.ID_ANY, "Unhide All Items")
|
||||
menu.AppendSeparator()
|
||||
item8 = menu.Append(wx.ID_ANY, "Change item icons")
|
||||
menu.AppendSeparator()
|
||||
@@ -1648,6 +1651,8 @@ class CustomTreeCtrl(CT.CustomTreeCtrl):
|
||||
self.Bind(wx.EVT_MENU, self.OnItemPrepend, item11)
|
||||
self.Bind(wx.EVT_MENU, self.OnItemAppend, item12)
|
||||
self.Bind(wx.EVT_MENU, self.OnSeparatorInsert, item13)
|
||||
self.Bind(wx.EVT_MENU, self.OnHideItem, item14)
|
||||
self.Bind(wx.EVT_MENU, self.OnUnhideItems, item15)
|
||||
|
||||
self.PopupMenu(menu)
|
||||
menu.Destroy()
|
||||
@@ -1724,6 +1729,22 @@ class CustomTreeCtrl(CT.CustomTreeCtrl):
|
||||
self.EnableItem(self.current, False)
|
||||
|
||||
|
||||
def OnHideItem(self, event):
|
||||
|
||||
self.HideItem(self.current)
|
||||
event.Skip()
|
||||
|
||||
|
||||
def OnUnhideItems(self, event):
|
||||
|
||||
item = self.GetRootItem()
|
||||
while item:
|
||||
if item.IsHidden():
|
||||
self.HideItem(item, False)
|
||||
item = self.GetNext(item)
|
||||
event.Skip()
|
||||
|
||||
|
||||
def OnItemIcons(self, event):
|
||||
|
||||
bitmaps = [self.itemdict["normal"], self.itemdict["selected"],
|
||||
|
||||
Reference in New Issue
Block a user