diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2003-02-12 15:39:56 (GMT) |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2003-02-12 15:39:56 (GMT) |
commit | ffb8fef6d56e50fcf3dfb3b0a3c037356db9e8a9 (patch) | |
tree | 5c9134ccd66a32c91d4eec56a0b9aff78a594480 /Mac | |
parent | a359a3d0ac42cb9720af41c1b99fce9422eb0ad3 (diff) | |
download | cpython-ffb8fef6d56e50fcf3dfb3b0a3c037356db9e8a9.zip cpython-ffb8fef6d56e50fcf3dfb3b0a3c037356db9e8a9.tar.gz cpython-ffb8fef6d56e50fcf3dfb3b0a3c037356db9e8a9.tar.bz2 |
Allow this to run both standalone and as a window in the IDE.
Diffstat (limited to 'Mac')
-rwxr-xr-x | Mac/Tools/IDE/PackageManager.py | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/Mac/Tools/IDE/PackageManager.py b/Mac/Tools/IDE/PackageManager.py index a93d683..6b83e1c 100755 --- a/Mac/Tools/IDE/PackageManager.py +++ b/Mac/Tools/IDE/PackageManager.py @@ -1,3 +1,37 @@ +# Prelude to allow running this as a main program +def _init(): + import macresource + import sys, os + macresource.need('DITL', 468, "PythonIDE.rsrc") + widgetrespathsegs = [sys.exec_prefix, "Mac", "Tools", "IDE", "Widgets.rsrc"] + widgetresfile = os.path.join(*widgetrespathsegs) + if not os.path.exists(widgetresfile): + widgetrespathsegs = [os.pardir, "Tools", "IDE", "Widgets.rsrc"] + widgetresfile = os.path.join(*widgetrespathsegs) + refno = macresource.need('CURS', 468, widgetresfile) + if os.environ.has_key('PYTHONIDEPATH'): + # For development set this environment variable + ide_path = os.environ['PYTHONIDEPATH'] + elif refno: + # We're not a fullblown application + idepathsegs = [sys.exec_prefix, "Mac", "Tools", "IDE"] + ide_path = os.path.join(*idepathsegs) + if not os.path.exists(ide_path): + idepathsegs = [os.pardir, "Tools", "IDE"] + for p in sys.path: + ide_path = os.path.join(*([p]+idepathsegs)) + if os.path.exists(ide_path): + break + + else: + # We are a fully frozen application + ide_path = sys.argv[0] + if ide_path not in sys.path: + sys.path.insert(0, ide_path) + +if __name__ == '__main__': + _init() + import W import Wapplication from Carbon import Evt @@ -69,7 +103,7 @@ class PackageManagerMain(Wapplication.Application): self.openwindowsmenu = Wapplication.Menu(self.menubar, 'Windows') self.makeopenwindowsmenu() - self._menustocheck = [closeitem, saveasitem, + self._menustocheck = [closeitem, undoitem, cutitem, copyitem, pasteitem, selallitem, runitem, homepageitem] |