X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a08cbc01686c6acf8260a230ccdae38290dbfd20..f786a3b23d3f0a77c2039ed539623b1e0cfd2efb:/utils/wxPython/demo/wxListCtrl.py diff --git a/utils/wxPython/demo/wxListCtrl.py b/utils/wxPython/demo/wxListCtrl.py index df3a9f53d2..790a88ce23 100644 --- a/utils/wxPython/demo/wxListCtrl.py +++ b/utils/wxPython/demo/wxListCtrl.py @@ -48,38 +48,51 @@ class TestListCtrlPanel(wxPanel): self.currentItem = 0 EVT_LIST_ITEM_SELECTED(self, tID, self.OnItemSelected) + EVT_LIST_DELETE_ITEM(self, tID, self.OnItemDelete) EVT_LEFT_DCLICK(self.list, self.OnDoubleClick) - EVT_COMMAND_RIGHT_CLICK(self.list, tID, self.OnRightClick) EVT_RIGHT_DOWN(self.list, self.OnRightDown) + # for wxMSW + EVT_COMMAND_RIGHT_CLICK(self.list, tID, self.OnRightClick) + + # for wxGTK + EVT_RIGHT_UP(self.list, self.OnRightClick) + def OnRightDown(self, event): self.x = event.GetX() - self.log.WriteText("x = %d\n" % self.x) + self.y = event.GetY() + self.log.WriteText("x, y = %s\n" % str((self.x, self.y))) event.Skip() def OnItemSelected(self, event): self.currentItem = event.m_itemIndex self.log.WriteText("OnItemSelected: %s\n" % self.list.GetItemText(self.currentItem)) + def OnItemDelete(self, event): + self.log.WriteText("OnItemDelete\n") + + def OnDoubleClick(self, event): self.log.WriteText("OnDoubleClick item %s\n" % self.list.GetItemText(self.currentItem)) def OnRightClick(self, event): self.log.WriteText("OnRightClick %s\n" % self.list.GetItemText(self.currentItem)) - menu = wxPyMenu() + self.menu = wxMenu() tPopupID1 = 0 tPopupID2 = 1 tPopupID3 = 2 - menu.Append(tPopupID1, "One") - menu.Append(tPopupID2, "Two") - menu.Append(tPopupID3, "Three") + tPopupID4 = 3 + self.menu.Append(tPopupID1, "One") + self.menu.Append(tPopupID2, "Two") + self.menu.Append(tPopupID3, "Three") + self.menu.Append(tPopupID4, "DeleteAllItems") EVT_MENU(self, tPopupID1, self.OnPopupOne) EVT_MENU(self, tPopupID2, self.OnPopupTwo) EVT_MENU(self, tPopupID3, self.OnPopupThree) - pos = self.list.GetItemPosition(self.currentItem) - self.PopupMenu(menu, self.x, pos.y) + EVT_MENU(self, tPopupID4, self.OnPopupFour) + self.PopupMenu(self.menu, wxPoint(self.x, self.y)) def OnPopupOne(self, event): self.log.WriteText("Popup one\n") @@ -90,6 +103,9 @@ class TestListCtrlPanel(wxPanel): def OnPopupThree(self, event): self.log.WriteText("Popup three\n") + def OnPopupFour(self, event): + self.list.DeleteAllItems() + def OnSize(self, event): w,h = self.GetClientSizeTuple() self.list.SetDimensions(0, 0, w, h)