includes several new tools. As part of the change the location of the pacakge has changed as well, it is now accessible as "from wxPython import py" (or "from wx import py" using the new namespace.) There are still some transition moudules in the wxPython.lib.PyCrust mackage that will issue a warning and then import what is needed from the new package. These will be removed in a future release. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@20104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
58 lines
1.2 KiB
Python
Executable File
58 lines
1.2 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
"""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 os
|
|
import sys
|
|
from wxPython import wx
|
|
from crust import CrustFrame as Frame
|
|
|
|
try:
|
|
True
|
|
except NameError:
|
|
True = 1==1
|
|
False = 1==0
|
|
|
|
|
|
def wrap(app):
|
|
wx.wxInitAllImageHandlers()
|
|
frame = Frame()
|
|
frame.SetSize((750, 525))
|
|
frame.Show(True)
|
|
frame.shell.interp.locals['app'] = app
|
|
app.MainLoop()
|
|
|
|
|
|
def main(argv):
|
|
if len(argv) < 2:
|
|
print "Please specify a module name."
|
|
raise SystemExit
|
|
name = argv[1]
|
|
if name[-3:] == '.py':
|
|
name = name[:-3]
|
|
module = __import__(name)
|
|
# Find the App class.
|
|
App = None
|
|
d = module.__dict__
|
|
for item in d.keys():
|
|
try:
|
|
if issubclass(d[item], wx.wxApp):
|
|
App = d[item]
|
|
except (NameError, TypeError):
|
|
pass
|
|
if App is None:
|
|
print "No App class found."
|
|
raise SystemExit
|
|
app = App()
|
|
wrap(app)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.path.insert(0, os.curdir)
|
|
main(sys.argv)
|