From 56502ea46887eecfe91169e414c42273bf44de46 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Thu, 22 Mar 2007 18:49:37 +0000 Subject: [PATCH] add more simple test apps git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@45021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- wxPython/tests/test_buttonKeyHandler.py | 33 +++++++ wxPython/tests/test_mediaCtrl.py | 120 ++++++++++++++++++++++++ 2 files changed, 153 insertions(+) create mode 100644 wxPython/tests/test_buttonKeyHandler.py create mode 100644 wxPython/tests/test_mediaCtrl.py diff --git a/wxPython/tests/test_buttonKeyHandler.py b/wxPython/tests/test_buttonKeyHandler.py new file mode 100644 index 0000000000..19071da84c --- /dev/null +++ b/wxPython/tests/test_buttonKeyHandler.py @@ -0,0 +1,33 @@ +import wx + +BIND_HANDLERS = False +SKIP_EVENT = True + +def OnKeyDown(evt): + print "OnKeyDown", evt.KeyCode + if SKIP_EVENT: + evt.Skip() + +def OnKeyUp(evt): + print "OnKeyUp", evt.KeyCode + if SKIP_EVENT: + evt.Skip() + +def OnChar(evt): + print "OnChar", evt.KeyCode + if SKIP_EVENT: + evt.Skip() + + +app = wx.App(False) +frm = wx.Frame(None, title="test_buttonKeyHandler") +pnl = wx.Panel(frm) + +btn = wx.Button(pnl, label="Focus me and press a key", pos=(20,20)) +if BIND_HANDLERS: + btn.Bind(wx.EVT_KEY_DOWN, OnKeyDown) + btn.Bind(wx.EVT_KEY_UP, OnKeyUp) + btn.Bind(wx.EVT_CHAR, OnChar) + +frm.Show() +app.MainLoop() diff --git a/wxPython/tests/test_mediaCtrl.py b/wxPython/tests/test_mediaCtrl.py new file mode 100644 index 0000000000..d79607919a --- /dev/null +++ b/wxPython/tests/test_mediaCtrl.py @@ -0,0 +1,120 @@ +import wx +import wx.media +from wx.lib.mixins.inspection import InspectableApp + +import os; print os.getpid(); raw_input("press enter...") + +class TestFrame(wx.Frame): + def __init__(self, *args, **kw): + wx.Frame.__init__(self, *args, **kw) + self.CreateStatusBar() + pnl = wx.Panel(self) + + self.mc = wx.media.MediaCtrl(pnl, size=(-1,200)) + #self.fn = "/home/robind/smb4k/BEAST/MyVideos/SageTV/48HoursMystery-6199728-0.mpg" + + self.Bind(wx.media.EVT_MEDIA_PLAY, self.OnMediaPlay, self.mc) + self.Bind(wx.media.EVT_MEDIA_PAUSE, self.OnMediaPause, self.mc) + self.Bind(wx.media.EVT_MEDIA_STOP, self.OnMediaStop, self.mc) + self.Bind(wx.media.EVT_MEDIA_FINISHED, self.OnMediaFinished, self.mc) + self.Bind(wx.media.EVT_MEDIA_LOADED, self.OnMediaLoaded, self.mc) + + selectBtn = wx.Button(pnl, -1, "Select") + loadBtn = wx.Button(pnl, -1, "Load") + playBtn = wx.Button(pnl, -1, "Play") + pauseBtn= wx.Button(pnl, -1, "Pause") + stopBtn = wx.Button(pnl, -1, "Stop") + + self.Bind(wx.EVT_BUTTON, self.OnBtnSelect, selectBtn) + self.Bind(wx.EVT_BUTTON, self.OnBtnLoad, loadBtn) + self.Bind(wx.EVT_BUTTON, self.OnBtnPlay, playBtn) + self.Bind(wx.EVT_BUTTON, self.OnBtnPause, pauseBtn) + self.Bind(wx.EVT_BUTTON, self.OnBtnStop, stopBtn) + + + vbox = wx.BoxSizer(wx.VERTICAL) + vbox.AddF(self.mc, wx.SizerFlags(1).Expand().Border(wx.ALL, 5)) + hbox = wx.BoxSizer(wx.HORIZONTAL) + hbox.AddF(selectBtn, wx.SizerFlags().Border()) + hbox.AddF(loadBtn, wx.SizerFlags().Border()) + hbox.AddF(playBtn, wx.SizerFlags().Border()) + hbox.AddF(pauseBtn, wx.SizerFlags().Border()) + hbox.AddF(stopBtn, wx.SizerFlags().Border()) + vbox.Add(hbox) + pnl.SetSizer(vbox) + + sizer = wx.BoxSizer() + sizer.AddF(pnl, wx.SizerFlags(1).Expand()) + self.SetSizer(sizer) + wx.CallLater(200, self.SetClientSize, pnl.GetBestSize()) + + self.timer = wx.Timer(self) + self.Bind(wx.EVT_TIMER, self.OnShowStatus) + self.timer.Start(500) + + + def OnBtnSelect(self, evt): + name = wx.FileSelector("Choose media file") + if name: + self.fn = name + + def OnBtnLoad(self, evt): + print "Loading %s..." % self.fn + print "Load:", self.mc.Load(self.fn) + + def OnBtnPlay(self, evt): + print "Play:", self.mc.Play() + + def OnBtnPause(self, evt): + print "Pause:", self.mc.Pause() + + def OnBtnStop(self, evt): + print "Stop:", self.mc.Stop() + + + def OnShowStatus(self, evt): + current = self.mc.Tell() + length = self.mc.Length() + + dl_current = self.mc.GetDownloadProgress() + dl_length = self.mc.GetDownloadTotal() + + cw,ch = self.mc.GetSize() + bw,bh = self.mc.GetBestSize() + + vol = self.mc.GetVolume() + + stateMap = { wx.media.MEDIASTATE_PLAYING : "Playing", + wx.media.MEDIASTATE_PAUSED : "Paused", + wx.media.MEDIASTATE_STOPPED : "Stopped", } + state = stateMap.get(self.mc.GetState(), "Other") + + st = "Size:%d,%d BSize:%d,%d Pos:%d/%d DL:%d/%d V:%d %s" % ( + cw,ch, bw,bh, current, length, dl_current, dl_length, vol*100, state) + + self.SetStatusText(st) + + + + def OnMediaPlay(self, evt): + print "OnMediaPlay" + + def OnMediaPause(self, evt): + print "OnMediaPause" + + def OnMediaStop(self, evt): + print "OnMediaStop" + + def OnMediaFinished(self, evt): + print "OnMediaFinished" + + def OnMediaLoaded(self, evt): + print "OnMediaLoaded" + + + +app = InspectableApp(False) +frm = TestFrame(None, title="simple wxMediaCtrl test") +frm.Show() +app.MainLoop() +