diff options
Diffstat (limited to 'Mac/Tools/macfreeze/macfreezegui.py')
-rw-r--r-- | Mac/Tools/macfreeze/macfreezegui.py | 150 |
1 files changed, 0 insertions, 150 deletions
diff --git a/Mac/Tools/macfreeze/macfreezegui.py b/Mac/Tools/macfreeze/macfreezegui.py deleted file mode 100644 index 41d0ec8..0000000 --- a/Mac/Tools/macfreeze/macfreezegui.py +++ /dev/null @@ -1,150 +0,0 @@ -"""macfreezegui - The GUI for macfreeze""" -from Carbon import Dlg -import macfs -import EasyDialogs -import sys -import os -import string -from Carbon import Res -import macresource - -ID_MAINDIALOG=512 - -ITEM_SCRIPTNAME=2 -ITEM_SCRIPTBROWSE=3 -ITEM_GENSOURCE=4 -ITEM_GENSOURCE_ITEMS=(7,) -ITEM_SOURCEDIRNAME=6 -ITEM_SOURCEDIRBROWSE=7 -ITEM_GENRESOURCE=8 -ITEM_GENRESOURCE_ITEMS=(11,) -ITEM_RESOURCENAME=10 -ITEM_RESOURCEBROWSE=11 -ITEM_GENAPPLET=12 -ITEM_GENAPPLET_ITEMS=(15,) -ITEM_APPLETNAME=14 -ITEM_APPLETBROWSE=15 -ITEM_OK=16 -ITEM_CANCEL=17 -ITEM_DEBUG=19 -ITEM_GENINFO=20 - -RADIO_GROUPING={ - ITEM_GENSOURCE: ITEM_GENSOURCE_ITEMS, - ITEM_GENRESOURCE: ITEM_GENRESOURCE_ITEMS, - ITEM_GENAPPLET: ITEM_GENAPPLET_ITEMS, - ITEM_GENINFO: () -} - -def dialog(script=None): - - # Invent the various names - if not script: - fss, ok = macfs.PromptGetFile("Script?", "TEXT") - if not ok: - sys.exit(0) - script = fss.as_pathname() - basename, ext = os.path.splitext(script) - if ext: - appletname = basename - rsrcname = basename + 'modules.rsrc' - else: - appletname = script + '.applet' - rsrcname = script + 'modules.rsrc' - dirname, basebase = os.path.split(basename) - dirname = os.path.join(dirname, 'build.'+basebase) - - # Get the dialog, possibly opening the resource file (if needed) - macresource.need('DLOG', ID_MAINDIALOG, 'macfreeze.rsrc') - d = Dlg.GetNewDialog(ID_MAINDIALOG, -1) - if d == None: - EasyDialogs.Message("Dialog resource not found or faulty") - sys.exit(1) - - # Fill the dialog - d.SetDialogDefaultItem(ITEM_OK) - d.SetDialogCancelItem(ITEM_CANCEL) - - _dialogsetfile(d, ITEM_SCRIPTNAME, script) - _dialogsetfile(d, ITEM_SOURCEDIRNAME, dirname) - _dialogsetfile(d, ITEM_RESOURCENAME, rsrcname) - _dialogsetfile(d, ITEM_APPLETNAME, appletname) - - gentype = ITEM_GENSOURCE - _dialogradiogroup(d, ITEM_GENSOURCE) - - # Interact - d.GetDialogWindow().SetWTitle("Standalone application creation options") - d.GetDialogWindow().ShowWindow() - d.DrawDialog() - while 1: - item = Dlg.ModalDialog(None) - if item == ITEM_OK: - break - elif item == ITEM_CANCEL: - sys.exit(0) - elif item in RADIO_GROUPING.keys(): - gentype = item - _dialogradiogroup(d, item) - elif item == ITEM_SCRIPTBROWSE: - fss, ok = macfs.PromptGetFile("Script?") - if ok: - script = fss.as_pathname() - _dialogsetfile(d, ITEM_SCRIPTNAME, script) - elif item == ITEM_SOURCEDIRBROWSE: - fss, ok = macfs.StandardPutFile("Output folder name", os.path.split(dirname)[1]) - if ok: - dirname = fss.as_pathname() - _dialogsetfile(d, ITEM_SOURCEDIRNAME, dirname) - elif item == ITEM_RESOURCEBROWSE: - fss, ok = macfs.StandardPutFile("Resource output file", os.path.split(rsrcname)[1]) - if ok: - rsrcname = fss.as_pathname() - _dialogsetfile(d, ITEM_RESOURCENAME, rsrcname) - elif item == ITEM_APPLETBROWSE: - fss, ok = macfs.StandardPutFile("Applet output file", os.path.split(appletname)[1]) - if ok: - appletname = fss.as_pathname() - _dialogsetfile(d, ITEM_APPLETNAME, appletname) - else: - pass - tp, h, rect = d.GetDialogItem(ITEM_DEBUG) - debug = Dlg.GetDialogItemText(h) - try: - debug = string.atoi(string.strip(debug)) - except ValueError: - EasyDialogs.Message("Illegal debug value %r, set to zero."%(debug,)) - debug = 0 - if gentype == ITEM_GENSOURCE: - return 'source', script, dirname, debug - elif gentype == ITEM_GENRESOURCE: - return 'resource', script, rsrcname, debug - elif gentype == ITEM_GENAPPLET: - return 'applet', script, appletname, debug - elif gentype == ITEM_GENINFO: - return 'info', script, '', debug - raise 'Error in gentype', gentype - -def _dialogradiogroup(d, item): - for k in RADIO_GROUPING.keys(): - subitems = RADIO_GROUPING[k] - tp, h, rect = d.GetDialogItem(k) - if k == item: - h.as_Control().SetControlValue(1) - for i2 in subitems: - d.ShowDialogItem(i2) - else: - h.as_Control().SetControlValue(0) - for i2 in subitems: - d.HideDialogItem(i2) - -def _dialogsetfile(d, item, file): - if len(file) > 32: - file = '\311:' + os.path.split(file)[1] - tp, h, rect = d.GetDialogItem(item) - Dlg.SetDialogItemText(h, file) - -if __name__ == '__main__': - type, script, file, debug = dialog() - print type, script, file, 'debug=%d'%debug - sys.exit(1) |