X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c7e7022c2c800a01e0b95d371fb213b0d25e3214..a81c3c2383f9096ef5e96b708a0f1c1ffe7cc6a8:/wxPython/demo/VirtualListCtrl.py?ds=sidebyside diff --git a/wxPython/demo/VirtualListCtrl.py b/wxPython/demo/VirtualListCtrl.py index 96a20d06b8..b30b4caf4c 100644 --- a/wxPython/demo/VirtualListCtrl.py +++ b/wxPython/demo/VirtualListCtrl.py @@ -19,17 +19,50 @@ class TestVirtualList(wxListCtrl): self.SetItemCount(1000000) + self.attr1 = wxListItemAttr() + self.attr1.SetBackgroundColour("yellow") + self.attr2 = wxListItemAttr() + self.attr2.SetBackgroundColour("light blue") + EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnItemSelected) + EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated) + + def OnItemSelected(self, event): + self.currentItem = event.m_itemIndex + self.log.WriteText('OnItemSelected: "%s", "%s", "%s", "%s"\n' % + (self.currentItem, + self.GetItemText(self.currentItem), + self.getColumnText(self.currentItem, 1), + self.getColumnText(self.currentItem, 2))) + + def OnItemActivated(self, event): + self.currentItem = event.m_itemIndex + self.log.WriteText("OnItemActivated: %s\n" % self.GetItemText(self.currentItem)) + + def getColumnText(self, index, col): + item = self.GetItem(index, col) + return item.GetText() + + #--------------------------------------------------- + # These methods are callbacks for implementing the + # "virtualness" of the list... def OnGetItemText(self, item, col): return "Item %d, column %d" % (item, col) + def OnGetItemImage(self, item): - return 0 + return -1 # if used you should return the index in the ImageList + def OnGetItemAttr(self, item): - return None + if item % 3 == 1: + return self.attr1 + elif item % 3 == 2: + return self.attr2 + else: + return None #----------------------------------------------------------------------