diff options
-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] |