--- a/ProjectBrowser.st Sat Apr 24 17:46:36 1999 +0200
+++ b/ProjectBrowser.st Tue Apr 27 09:42:31 1999 +0200
@@ -1396,35 +1396,37 @@
<resource: #menu>
- ^
-
- #(#Menu
-
- #(
- #(#MenuItem
- #label: 'New...'
- #translateLabel: true
- #isButton: true
- #value: #newProject
- #labelImage: #(#ResourceRetriever #Icon #newIcon)
- )
- #(#MenuItem
- #label: 'Open...'
- #translateLabel: true
- #isButton: true
- #value: #openProject
- #labelImage: #(#ResourceRetriever #Icon #loadIcon)
- )
- #(#MenuItem
- #label: 'SaveAs...'
- #translateLabel: true
- #isButton: true
- #value: #saveProject
- #labelImage: #(#ResourceRetriever #Icon #saveIcon)
- )
- ) nil
- nil
+ ^
+ #(#Menu
+ #(
+ #(#MenuItem
+ #label: 'New...'
+ #translateLabel: true
+ #isButton: true
+ #value: #newProject
+ #labelImage: #(#ResourceRetriever #Icon #newIcon)
+ )
+ #(#MenuItem
+ #label: 'Open...'
+ #translateLabel: true
+ #isButton: true
+ #value: #openProject
+ #labelImage: #(#ResourceRetriever #Icon #loadIcon)
+ )
+ #(#MenuItem
+ #label: 'SaveAs...'
+ #translateLabel: true
+ #isButton: true
+ #value: #saveProject
+ #enabled: #hasProjectSelectedHolder
+ #labelImage: #(#ResourceRetriever #Icon #saveIcon)
+ )
+ )
+ nil
+ nil
)
+
+ "Modified: / 26.4.1999 / 22:45:25 / cg"
!
noItemMenu
@@ -1869,9 +1871,15 @@
!
hasProjectSelectedHolder
- ^ [
- self hasProjectNodeSelected
- ]
+ |holder|
+
+ (holder := builder bindingAt:#hasProjectSelectedHolder) isNil ifTrue:[
+ holder := false asValue.
+ builder aspectAt:#hasProjectSelectedHolder put:holder.
+ ].
+ ^ holder.
+
+ "Modified: / 26.4.1999 / 22:47:33 / cg"
!
hasSubProjectsSelectedHolder
@@ -2188,8 +2196,9 @@
changedObject == self currentProject ifTrue:[
self readAspectsFromProject.
- self halt.
].
+
+ "Modified: / 26.4.1999 / 23:39:04 / cg"
! !
!ProjectBrowser methodsFor:'initialization'!
@@ -2504,7 +2513,7 @@
!
readAspectsFromProject
- |p|
+ |p l|
p := self currentProject.
p notNil ifTrue:[
@@ -2529,6 +2538,20 @@
self installDirectory value:(p propertyAt:#installDirectory) ? '/opt'.
+ l := p prerequisitePackages collect:[:entry |
+ |pName|
+
+ entry isString ifTrue:[
+ pName := entry
+ ] ifFalse:[
+ entry isArray ifTrue:[
+ pName := entry at:1
+ ] ifFalse:[
+ pName := entry name
+ ]
+ ]
+ ].
+ self listOfRequiredProjectsInPrerequisites value:(l sort).
self listOfRequiredClassesInPrerequisites value:(p prerequisiteClasses copy sort).
modifiedChannel value:false.
@@ -2536,7 +2559,7 @@
].
"Created: / 23.3.1999 / 14:16:12 / cg"
- "Modified: / 23.3.1999 / 14:18:38 / cg"
+ "Modified: / 26.4.1999 / 23:38:14 / cg"
!
saveAspectsIntoProject
@@ -2786,7 +2809,11 @@
action value:item.
].
- self valueOfInfoLabel value: item info
+ self valueOfInfoLabel value: item info.
+
+ self hasProjectSelectedHolder value:self hasProjectNodeSelected.
+
+ "Modified: / 26.4.1999 / 22:49:20 / cg"
!
loadClassesFromDirectory
@@ -2926,6 +2953,10 @@
].
p := self currentProject.
+ p isNil ifTrue:[
+ self information:'Selet a project first.'.
+ ^self
+ ].
p directory isNil ifTrue:[
d := (Dialog request:'Project Directory:').
d size == 0 ifTrue:[
@@ -2935,6 +2966,8 @@
].
p saveAsProjectFile.
+
+ "Modified: / 26.4.1999 / 22:43:57 / cg"
!
selectionChangeAllowed:newNode