Added a workaround for shortcomings in the OSA support: there can be class/property conflicts and passing classes as arguments doesn't work. The package now seems to work.
diff --git a/Mac/Lib/mkcwproject/cwtalker.py b/Mac/Lib/mkcwproject/cwtalker.py
index 3b2d3b4..650fd43 100644
--- a/Mac/Lib/mkcwproject/cwtalker.py
+++ b/Mac/Lib/mkcwproject/cwtalker.py
@@ -1,4 +1,14 @@
import CodeWarrior
+import aetools
+import aetypes
+
+# There is both a class "project document" and a property "project document".
+# We want the class, but the property overrides it.
+#
+##class project_document(aetools.ComponentItem):
+## """project document - a project document """
+## want = 'PRJD'
+project_document=aetypes.Type('PRJD')
class MyCodeWarrior(CodeWarrior.CodeWarrior):
# Bug in the CW OSA dictionary
@@ -23,4 +33,4 @@
return _arguments['----']
def my_mkproject(self, prjfile, xmlfile):
- self.make(new=CodeWarrior.project_document(), with_data=xmlfile, as=prjfile)
+ self.make(new=project_document, with_data=xmlfile, as=prjfile)