Demo updates for new wx namespace, from Jeff Grimmett
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1,24 +1,43 @@
|
||||
# 11/13/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o Updated for wx namespace
|
||||
#
|
||||
|
||||
from wxPython.wx import *
|
||||
import sys
|
||||
import sys
|
||||
|
||||
import wx
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
myEVT_BUTTON_CLICKPOS = wxNewEventType()
|
||||
# This shows the new 'official' way to do custom events as derived
|
||||
# from the wxPython 2.5 migration guide.
|
||||
|
||||
def EVT_BUTTON_CLICKPOS(win, id, func):
|
||||
win.Connect(id, -1, myEVT_BUTTON_CLICKPOS, func)
|
||||
#######################################################\
|
||||
# *** Old and busted *** |
|
||||
# |
|
||||
# myEVT_BUTTON_CLICKPOS = wx.NewEventType() |
|
||||
# |
|
||||
# def EVT_BUTTON_CLICKPOS(win, id, func): |
|
||||
# win.Connect(id, -1, myEVT_BUTTON_CLICKPOS, func) |
|
||||
#######################################################/
|
||||
|
||||
#############################\
|
||||
# *** The new Hottness *** |
|
||||
#############################/
|
||||
myEVT_BUTTON_CLICKPOS = wx.NewEventType()
|
||||
EVT_BUTTON_CLICKPOS = wx.PyEventBinder(myEVT_BUTTON_CLICKPOS, 1)
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
class MyEvent(wxPyCommandEvent):
|
||||
class MyEvent(wx.PyCommandEvent):
|
||||
def __init__(self, evtType, id):
|
||||
wxPyCommandEvent.__init__(self, evtType, id)
|
||||
wx.PyCommandEvent.__init__(self, evtType, id)
|
||||
self.myVal = None
|
||||
|
||||
#def __del__(self):
|
||||
# print '__del__'
|
||||
# wxPyCommandEvent.__del__(self)
|
||||
# wx.PyCommandEvent.__del__(self)
|
||||
|
||||
def SetMyVal(self, val):
|
||||
self.myVal = val
|
||||
@@ -27,11 +46,10 @@ class MyEvent(wxPyCommandEvent):
|
||||
return self.myVal
|
||||
|
||||
|
||||
|
||||
class MyButton(wxButton):
|
||||
class MyButton(wx.Button):
|
||||
def __init__(self, parent, id, txt, pos):
|
||||
wxButton.__init__(self, parent, id, txt, pos)
|
||||
EVT_LEFT_DOWN(self, self.OnLeftDown)
|
||||
wx.Button.__init__(self, parent, id, txt, pos)
|
||||
self.Bind(wx.EVT_LEFT_DOWN, self.OnLeftDown)
|
||||
|
||||
def OnLeftDown(self, event):
|
||||
pt = event.GetPosition()
|
||||
@@ -44,17 +62,21 @@ class MyButton(wxButton):
|
||||
|
||||
|
||||
|
||||
class TestPanel(wxPanel):
|
||||
class TestPanel(wx.Panel):
|
||||
def __init__(self, parent, log):
|
||||
wxPanel.__init__(self, parent, -1)
|
||||
wx.Panel.__init__(self, parent, -1)
|
||||
self.log = log
|
||||
|
||||
b = MyButton(self, -1, " Click me ", wxPoint(30,30))
|
||||
EVT_BUTTON(self, b.GetId(), self.OnClick)
|
||||
EVT_BUTTON_CLICKPOS(self, b.GetId(), self.OnMyEvent)
|
||||
b = MyButton(self, -1, " Click me ", (30,30))
|
||||
self.Bind(wx.EVT_BUTTON, self.OnClick, id=b.GetId())
|
||||
|
||||
# This is our custom event binder created above.
|
||||
self.Bind(EVT_BUTTON_CLICKPOS, self.OnMyEvent, id=b.GetId())
|
||||
|
||||
wxStaticText(self, -1, "Please see the Overview and Demo Code for details...",
|
||||
wxPoint(30, 80))
|
||||
wx.StaticText(
|
||||
self, -1, "Please see the Overview and Demo Code for details...",
|
||||
(30, 80)
|
||||
)
|
||||
|
||||
|
||||
def OnClick(self, event):
|
||||
@@ -74,17 +96,15 @@ def runTest(frame, nb, log):
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
|
||||
overview = """\
|
||||
This demo is a contrived example of defining an event class in wxPython and sending it up the containment hierarchy for processing.
|
||||
This demo is a contrived example of defining an event class in wxPython and
|
||||
sending it up the containment hierarchy for processing.
|
||||
|
||||
V2.5 note: this demo also shows the new style of creating event binders that
|
||||
is required if you used the *.Bind() method of setting up event handlers.
|
||||
"""
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
import sys,os
|
||||
import run
|
||||
|
Reference in New Issue
Block a user