from wxPython.wx import *
+import images
#----------------------------------------------------------------------
style=wxLC_REPORT|wxLC_VIRTUAL|wxLC_HRULES|wxLC_VRULES)
self.log = log
+ self.il = wxImageList(16, 16)
+ self.idx1 = self.il.Add(images.getSmilesBitmap())
+ self.SetImageList(self.il, wxIMAGE_LIST_SMALL)
+
+
self.InsertColumn(0, "First")
self.InsertColumn(1, "Second")
self.InsertColumn(2, "Third")
EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnItemSelected)
EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated)
+ EVT_LIST_ITEM_DESELECTED(self, self.GetId(), self.OnItemDeselected)
def OnItemSelected(self, event):
def OnItemActivated(self, event):
self.currentItem = event.m_itemIndex
- self.log.WriteText("OnItemActivated: %s\n" % self.GetItemText(self.currentItem))
+ self.log.WriteText("OnItemActivated: %s\nTopItem: %s\n" %
+ (self.GetItemText(self.currentItem), self.GetTopItem()))
def getColumnText(self, index, col):
item = self.GetItem(index, col)
return item.GetText()
+ def OnItemDeselected(self, evt):
+ self.log.WriteText("OnItemDeselected: %s" % evt.m_itemIndex)
+
+
#---------------------------------------------------
# These methods are callbacks for implementing the
- # "virtualness" of the list...
+ # "virtualness" of the list... Normally you would
+ # determine the text, attributes and/or image based
+ # on values from some external data source, but for
+ # this demo we'll just calculate them
def OnGetItemText(self, item, col):
return "Item %d, column %d" % (item, col)
-
def OnGetItemImage(self, item):
- return -1 # if used you should return the index in the ImageList
-
+ if item % 3 == 0:
+ return self.idx1
+ else:
+ return -1
def OnGetItemAttr(self, item):
if item % 3 == 1: