macostools.copy() now has an optional forcetype flag, which sets the filetype. This is used by various tools to set the type to APPL when copying interpreter template files (Atmp filetype).

This commit is contained in:
Jack Jansen 2001-03-06 22:46:25 +00:00
parent bb74f95821
commit c1463c9870
3 changed files with 5 additions and 3 deletions

View file

@ -78,7 +78,7 @@ def touched_ae(dst):
dir_fss = macfs.FSSpec((vRefNum, dirID, ''))
f.update(dir_fss)
def copy(src, dst, createpath=0, copydates=1):
def copy(src, dst, createpath=0, copydates=1, forcetype=None):
"""Copy a file, including finder info, resource fork, etc"""
if createpath:
mkdirs(os.path.split(dst)[0])
@ -106,6 +106,8 @@ def copy(src, dst, createpath=0, copydates=1):
sf = srcfss.GetFInfo()
df = dstfss.GetFInfo()
df.Creator, df.Type = sf.Creator, sf.Type
if forcetype != None:
df.Type = forcetype
df.Flags = (sf.Flags & (kIsStationary|kNameLocked|kHasBundle|kIsInvisible|kIsAlias))
dstfss.SetFInfo(df)
if copydates:

View file

@ -102,7 +102,7 @@ def buildcopy(top, dummy, list):
for src, dst in list:
src = os.path.join(top, src)
dst = os.path.join(top, dst)
macostools.copy(src, dst)
macostools.copy(src, dst, forcetype="APPL")
def main():
verbose = 0

View file

@ -167,7 +167,7 @@ def buildcopy(top, dummy, list):
for src, dst in list:
src = os.path.join(top, src)
dst = os.path.join(top, dst)
macostools.copy(src, dst)
macostools.copy(src, dst, forcetype="APPL")
def handle_dialog(filename):
"""Handle selection dialog, return list of selected items"""