Project.st
changeset 4792 8e50b8218546
parent 4791 c2cdad0ab823
child 4796 eee167a75fcd
--- a/Project.st	Wed Sep 22 18:48:34 1999 +0200
+++ b/Project.st	Wed Sep 22 21:08:32 1999 +0200
@@ -976,7 +976,7 @@
         properties at:#'sourcesDirectory' put:sourcesSubDir.
     ].
     methodsFile := pack at:'methodsFile' ifAbsent:nil.
-    methodsFile notNil ifTrue:[
+    methodsFile size > 0 ifTrue:[
         properties at:#'methodsFile' put:methodsFile.
     ].
     files := pack at:'files' ifAbsent:nil.
@@ -1315,7 +1315,7 @@
     ].
 
     methodsFile := properties at:#methodsFile ifAbsent:nil.
-    methodsFile notNil ifTrue:[
+    methodsFile size > 0 ifTrue:[
         s cr; nextPutLine:';'; nextPutLine:'; methods above are stored in:'; nextPutLine:';'.
         s nextPutLine:';'.
         s nextPutAll:'methodsFile'; tab; nextPutLine:'''' , methodsFile , ''''.
@@ -1448,7 +1448,7 @@
          out nextPutAll:'.st'''.
          out cr.
     ].
-    (methodsFile := self propertyAt:#methodsFile) notNil ifTrue:[
+    (methodsFile := self propertyAt:#methodsFile) size > 0 ifTrue:[
          out 
             nextPutAll:'  ''';
             nextPutAll:methodsFile;
@@ -1466,8 +1466,8 @@
         loaded := Set new:(handle classes size).
         handle classes do:[:c| c isMeta ifFalse:[loaded add:c classFilename]].
 '.
-    methodsFile notNil ifTrue:[
-    out nextPutAll:
+    methodsFile size > 0 ifTrue:[
+        out nextPutAll:
 '        loaded add:''' , methodsFile , '''.'.
     ].
     out nextPutAll:'
@@ -1737,7 +1737,7 @@
         abbrev := Smalltalk fileNameForClass:aClass name.
         s nextPutAll:'  '; nextPutAll:abbrev; nextPutAll:'.$(O)'.
     ].
-    (methodsFile := self propertyAt:#methodsFile) notNil ifTrue:[
+    (methodsFile := self propertyAt:#methodsFile) size > 0 ifTrue:[
          s nextPutAll:' \'. s cr.
          s nextPutAll:'  '; 
            nextPutAll:(methodsFile asFilename withoutSuffix baseName);
@@ -2117,6 +2117,23 @@
     "Created: / 23.3.1999 / 14:21:11 / cg"
 !
 
+removeClass:classOrClassName
+    "remove a class from the project"
+
+    |infoCollection index className|
+
+    (infoCollection := self classInfo) isNil ifTrue:[^ self].
+
+    (className := classOrClassName) isBehavior ifTrue:[
+        className := classOrClassName name
+    ].
+
+    index := infoCollection findFirst:[:i | i className = className.].
+    index ~~ 0 ifTrue:[
+        infoCollection removeIndex:index
+    ]
+!
+
 type
     "return the type of project (one of #application, #library, #smalltalk)"
 
@@ -2634,6 +2651,6 @@
 !Project class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Project.st,v 1.105 1999-09-22 16:48:34 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Project.st,v 1.106 1999-09-22 19:08:32 cg Exp $'
 ! !
 Project initialize!