X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/18882aa834feadfdfb592059d1eeeee54f6d7838..b4eecebd423df0c6efe86d7658cd3df818d67ed8:/wxPython/demo/PopupWindow.py diff --git a/wxPython/demo/PopupWindow.py b/wxPython/demo/PopupWindow.py index 238f715f86..cc2de54b36 100644 --- a/wxPython/demo/PopupWindow.py +++ b/wxPython/demo/PopupWindow.py @@ -118,6 +118,7 @@ class TestPanel(wx.Panel): def OnShowPopup(self, evt): win = TestPopup(self, wx.SIMPLE_BORDER) + #win = TestPopupWithListbox(self, wx.SIMPLE_BORDER, self.log) # Show the popup right below or above the button # depending on available screen space... @@ -156,6 +157,8 @@ class TestPanel(wx.Panel): win.Show(True) + + # This class is currently not implemented in the demo. It does not # behave the way it should, so for the time being it's only here # for show. If you figure out how to make it work, please send @@ -163,31 +166,25 @@ class TestPanel(wx.Panel): class TestPopupWithListbox(wx.PopupWindow): def __init__(self, parent, style, log): wx.PopupWindow.__init__(self, parent, style) - + self.log = log import keyword - self.lb = wx.ListBox(self, -1, choices = keyword.kwlist) #sz = self.lb.GetBestSize() self.SetSize((150, 75)) #sz) self.lb.SetSize(self.GetClientSize()) self.lb.SetFocus() self.Bind(wx.EVT_LISTBOX, self.OnListBox) - self.lb.Bind(wx.EVT_LEFT_DOWN, self.OnLeft) - - def OnLeft(self, evt): - obj = evt.GetEventObject() - print "OnLeft", obj - print 'Selected: %s' % obj.GetStringSelection() - obj.Show(False) - evt.Skip() + self.Bind(wx.EVT_LISTBOX_DCLICK, self.OnListBoxDClick) def OnListBox(self, evt): obj = evt.GetEventObject() - print "OnListBox", obj - print 'Selected: %s' % obj.GetString() + self.log.write("OnListBox: %s\n" % obj) + self.log.write('Selected: %s\n' % obj.GetString(evt.GetInt())) evt.Skip() - + def OnListBoxDClick(self, evt): + self.Hide() + self.Destroy() #---------------------------------------------------------------------------