diff options
Diffstat (limited to 'lib/python2.7/site-packages/wx-3.0-msw/wx/py/PyWrap.py')
-rw-r--r-- | lib/python2.7/site-packages/wx-3.0-msw/wx/py/PyWrap.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/lib/python2.7/site-packages/wx-3.0-msw/wx/py/PyWrap.py b/lib/python2.7/site-packages/wx-3.0-msw/wx/py/PyWrap.py new file mode 100644 index 0000000..fafa382 --- /dev/null +++ b/lib/python2.7/site-packages/wx-3.0-msw/wx/py/PyWrap.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python2 +"""PyWrap is a command line utility that runs a wxPython program with +additional runtime-tools, such as PyCrust.""" + +__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>" +__cvsid__ = "$Id$" +__revision__ = "$Revision$"[11:-2] + +import wx +from wx import py + +import os +import sys + +def wrap(app): + wx.InitAllImageHandlers() + frame = py.crust.CrustFrame() + frame.SetSize((750, 525)) + frame.Show(True) + frame.shell.interp.locals['app'] = app + app.MainLoop() + +def main(modulename=None): + sys.path.insert(0, os.curdir) + if not modulename: + if len(sys.argv) < 2: + print "Please specify a module name." + raise SystemExit + modulename = sys.argv[1] + if modulename.endswith('.py'): + modulename = modulename[:-3] + module = __import__(modulename) + # Find the App class. + App = None + d = module.__dict__ + for item in d.keys(): + try: + if issubclass(d[item], wx.App): + App = d[item] + except (NameError, TypeError): + pass + if App is None: + print "No App class was found." + raise SystemExit + app = App() + wrap(app) + +if __name__ == '__main__': + main() |