]>
git.saurik.com Git - wxWidgets.git/blob - wxPython/wx/py/PyShell.py
   1 """PyShell is a python shell application.""" 
   3 # The next two lines, and the other code below that makes use of 
   4 # ``__main__`` and ``original``, serve the purpose of cleaning up the 
   5 # main namespace to look as much as possible like the regular Python 
   8 original 
= __main__
.__dict
__.keys() 
  10 __author__ 
= "Patrick K. O'Brien <pobrien@orbtech.com>" 
  12 __revision__ 
= "$Revision$"[11:-2] 
  17     """PyShell standalone application.""" 
  24         self
.SetAppName("pyshell") 
  25         confDir 
= wx
.StandardPaths
.Get().GetUserDataDir() 
  26         if not os
.path
.exists(confDir
): 
  28         fileName 
= os
.path
.join(confDir
, 'config') 
  29         self
.config 
= wx
.FileConfig(localFilename
=fileName
) 
  30         self
.config
.SetRecordDefaults(True) 
  32         self
.frame 
= py
.shell
.ShellFrame(config
=self
.config
, dataDir
=confDir
) 
  34         self
.SetTopWindow(self
.frame
) 
  38 The main() function needs to handle being imported, such as with the 
  39 pyshell script that wxPython installs: 
  43     from wx.py.PyShell import main 
  48     """The main function for the PyShell program.""" 
  49     # Cleanup the main namespace, leaving the App class. 
  51     md 
= __main__
.__dict
__ 
  55         if key 
not in keepers
: 
  57     # Create an application instance. 
  59     # Cleanup the main namespace some more. 
  60     if md
.has_key('App') and md
['App'] is App
: 
  62     if md
.has_key('__main__') and md
['__main__'] is __main__
: 
  64     # Mimic the contents of the standard Python shell's sys.path. 
  68     # Add the application object to the sys module's namespace. 
  69     # This allows a shell user to do: 
  71     # >>> sys.app.whatever 
  74     # Start the wxPython event loop. 
  77 if __name__ 
== '__main__':