diff options
| -rw-r--r-- | Mac/Demo/example0/checktext.py | 6 | ||||
| -rw-r--r-- | Mac/scripts/BuildApplet.py | 5 | ||||
| -rw-r--r-- | Mac/scripts/gensuitemodule.py | 62 | 
3 files changed, 34 insertions, 39 deletions
| diff --git a/Mac/Demo/example0/checktext.py b/Mac/Demo/example0/checktext.py index 93a814df04..a5943a65dd 100644 --- a/Mac/Demo/example0/checktext.py +++ b/Mac/Demo/example0/checktext.py @@ -1,15 +1,13 @@  """checktext - Check that a text file has macintosh-style newlines""" -import macfs  import sys  import EasyDialogs  import string  def main(): -	fsspec, ok = macfs.PromptGetFile('File to check end-of-lines in:', 'TEXT') -	if not ok: +	pathname = EasyDialogs.AskFileForOpen(message='File to check end-of-lines in:') +	if not pathname:  		sys.exit(0) -	pathname = fsspec.as_pathname()  	fp = open(pathname, 'rb')  	try:  		data = fp.read() diff --git a/Mac/scripts/BuildApplet.py b/Mac/scripts/BuildApplet.py index 3134650fcf..52a7d0ff56 100644 --- a/Mac/scripts/BuildApplet.py +++ b/Mac/scripts/BuildApplet.py @@ -11,7 +11,6 @@ import sys  sys.stdout = sys.stderr  import os -import macfs  import MacOS  import EasyDialogs  import buildtools @@ -36,7 +35,7 @@ def buildapplet():  	if not sys.argv[1:]:  		filename = EasyDialogs.AskFileForOpen(message='Select Python source or applet:',  -			fileTypes=('TEXT', 'APPL')) +			typeList=('TEXT', 'APPL'))  		if not filename:  			return  		tp, tf = os.path.split(filename) @@ -86,7 +85,7 @@ def buildapplet():  			verbose = 'default'  		# Loop over all files to be processed  		for filename in args: -			cr, tp = MacOS.GetCreatorAndType(macfs.FSRef(filename)) +			cr, tp = MacOS.GetCreatorAndType(filename)  			if tp == 'APPL':  				buildtools.update(template, filename, dstfilename)  			else: diff --git a/Mac/scripts/gensuitemodule.py b/Mac/scripts/gensuitemodule.py index f08a4be6f3..f72a50b29b 100644 --- a/Mac/scripts/gensuitemodule.py +++ b/Mac/scripts/gensuitemodule.py @@ -7,29 +7,29 @@ Reading and understanding this code is left as an exercise to the reader.  """  import MacOS +import EasyDialogs  import os  import string  import sys  import types  import StringIO -import macfs  import keyword  import macresource  from aetools import unpack  from Carbon.Res import * -DEFAULT_PACKAGEFOLDER=os.path.join(sys.prefix, 'Mac', 'Lib', 'lib-scriptpackages') +DEFAULT_PACKAGEFOLDER=os.path.join(sys.prefix, 'Lib', 'plat-mac', 'lib-scriptpackages')  def main():  	if len(sys.argv) > 1:  		for filename in sys.argv[1:]:  			processfile(filename)  	else: -		fss, ok = macfs.PromptGetFile('Select file with aeut/aete resource:') -		if not ok: +		filename = EasyDialogs.AskFileForOpen(message='Select file with aeut/aete resource:') +		if not filename:  			sys.exit(0) -		processfile(fss.as_pathname()) +		processfile(filename)  def processfile(fullname):  	"""Process all resources in a single file""" @@ -231,8 +231,7 @@ def compileaete(aete, resinfo, fname):  	"""Generate code for a full aete resource. fname passed for doc purposes"""  	[version, language, script, suites] = aete  	major, minor = divmod(version, 256) -	fss = macfs.FSSpec(fname) -	creatorsignature, dummy = fss.GetCreatorType() +	creatorsignature, dummy = MacOS.GetCreatorAndType(fname)  	packagename = identify(os.path.splitext(os.path.basename(fname))[0])  	if language:  		packagename = packagename+'_lang%d'%language @@ -240,39 +239,39 @@ def compileaete(aete, resinfo, fname):  		packagename = packagename+'_script%d'%script  	if len(packagename) > 27:  		packagename = packagename[:27] -	macfs.SetFolder(DEFAULT_PACKAGEFOLDER) -	fss, ok = macfs.GetDirectory('Create and select package folder for %s'%packagename) -	if not ok: +	pathname = EasyDialogs.AskFolder(message='Create and select package folder for %s'%packagename, +		defaultLocation=DEFAULT_PACKAGEFOLDER) +	if not pathname:  		return -	pathname = fss.as_pathname()  	packagename = os.path.split(os.path.normpath(pathname))[1] -	fss, ok = macfs.GetDirectory('Package folder for base suite (usually StdSuites)') -	if ok: -		dirname, basepkgname = os.path.split(os.path.normpath(fss.as_pathname())) +	basepkgname = EasyDialogs.AskFolder(message='Package folder for base suite (usually StdSuites)', +		defaultLocation=DEFAULT_PACKAGEFOLDER) +	if basepkgname: +		dirname, basepkgname = os.path.split(os.path.normpath(basepkgname))  		if not dirname in sys.path:  			sys.path.insert(0, dirname)  		basepackage = __import__(basepkgname)  	else:  		basepackage = None -	macfs.SetFolder(pathname)  	suitelist = []  	allprecompinfo = []  	allsuites = []  	for suite in suites: -		code, suite, fss, modname, precompinfo = precompilesuite(suite, basepackage) +		code, suite, pathname, modname, precompinfo = precompilesuite(suite, basepackage)  		if not code:  			continue  		allprecompinfo = allprecompinfo + precompinfo -		suiteinfo = suite, fss, modname +		suiteinfo = suite, pathname, modname  		suitelist.append((code, modname))  		allsuites.append(suiteinfo)  	for suiteinfo in allsuites:  		compilesuite(suiteinfo, major, minor, language, script, fname, basepackage, allprecompinfo) -	fss, ok = macfs.StandardPutFile('Package module', '__init__.py') -	if not ok: +	initfilename = EasyDialogs.AskFileForSave(message='Package module',  +		savedFileName='__init__.py') +	if not initfilename:  		return -	fp = open(fss.as_pathname(), 'w') -	fss.SetCreatorType('Pyth', 'TEXT') +	fp = open(initfilename, 'w') +	MacOS.SetCreatorAndType(initfilename, 'Pyth', 'TEXT')  	fp.write('"""\n')  	fp.write("Package generated from %s\n"%fname)  	if resinfo: @@ -339,11 +338,11 @@ def precompilesuite(suite, basepackage=None):  	modname = identify(name)  	if len(modname) > 28:  		modname = modname[:27] -	fss, ok = macfs.StandardPutFile('Python output file', modname+'.py') -	if not ok: +	pathname = EasyDialogs.AskFileForSave(message='Python output file', +		savedFileName=modname+'.py') +	if not pathname:  		return None, None, None, None, None -	pathname = fss.as_pathname()  	modname = os.path.splitext(os.path.split(pathname)[1])[0]  	if basepackage and basepackage._code_to_module.has_key(code): @@ -375,15 +374,14 @@ def precompilesuite(suite, basepackage=None):  	precompinfo = objc.getprecompinfo(modname) -	return code, suite, fss, modname, precompinfo +	return code, suite, pathname, modname, precompinfo -def compilesuite((suite, fss, modname), major, minor, language, script, fname, basepackage, precompinfo): +def compilesuite((suite, pathname, modname), major, minor, language, script, fname, basepackage, precompinfo):  	"""Generate code for a single suite"""  	[name, desc, code, level, version, events, classes, comps, enums] = suite -	pathname = fss.as_pathname() -	fp = open(fss.as_pathname(), 'w') -	fss.SetCreatorType('Pyth', 'TEXT') +	fp = open(pathname, 'w') +	MacOS.SetCreatorAndType(pathname, 'Pyth', 'TEXT')  	fp.write('"""Suite %s: %s\n' % (ascii(name), ascii(desc)))  	fp.write("Level %d, version %d\n\n" % (level, version)) @@ -676,9 +674,9 @@ class ObjectCompiler:  				self.namemappers.append(mapper)  	def askdefinitionmodule(self, type, code): -		fss, ok = macfs.PromptGetFile('Where is %s %s declared?'%(type, code)) -		if not ok: return -		path, file = os.path.split(fss.as_pathname()) +		path = EasyDialogs.AskFileForSave(message='Where is %s %s declared?'%(type, code)) +		if not path: return +		path, file = os.path.split(path)  		modname = os.path.splitext(file)[0]  		if not path in sys.path:  			sys.path.insert(0, path) | 
