packages/AbstractPackageBrowser.st
changeset 1227 ab88e78f027c
child 1268 9dc8d1b8ce9b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/packages/AbstractPackageBrowser.st	Wed Apr 09 13:26:19 2003 +0200
@@ -0,0 +1,89 @@
+"{ Package: 'stx:libbasic3' }"
+
+"{ NameSpace: Packages }"
+
+ApplicationModel subclass:#AbstractPackageBrowser
+	instanceVariableNames:'applicationAspects'
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Package-Application'
+!
+
+
+!AbstractPackageBrowser methodsFor:'accessing'!
+
+applicationAspects
+    applicationAspects ifNil:[
+        applicationAspects := Dictionary new
+    ].
+    ^ applicationAspects
+!
+
+applicationAspects:something
+    "set the value of the instance variable 'applicationAspects' (automatically generated)"
+
+    applicationAspects := something.
+!
+
+declareDependents
+!
+
+masterApplication:aMasterApplication
+    aMasterApplication ifNil:[
+        ^ self.
+    ].
+    
+    self applicationAspects: aMasterApplication applicationAspects.
+    self declareDependents.
+    ^ super masterApplication:aMasterApplication.
+!
+
+packagesNamed:aCollectionOfPackageNamesOrSymbol 
+    |aCollectionOfPackageNames|
+    aCollectionOfPackageNames := aCollectionOfPackageNamesOrSymbol.
+    aCollectionOfPackageNames isSymbol ifTrue:[
+        aCollectionOfPackageNames := Array with:aCollectionOfPackageNamesOrSymbol.
+    ].
+
+    ^ self packageManager packagesNamed:aCollectionOfPackageNames
+!
+
+packagesSelected
+    ^ self packagesSelectedHolder value
+! !
+
+!AbstractPackageBrowser methodsFor:'accessing - shared'!
+
+applicationAspectsAt:anIdentifier ifAbsent:aBlock
+    ^ self applicationAspects at:anIdentifier ifAbsent:aBlock
+!
+
+applicationAspectsAt:aSymbol ifAbsentPut:anObject
+    ^ self applicationAspects at:aSymbol ifAbsentPut:anObject
+!
+
+applicationAspectsAt:anIdentifier put:anObject
+    ^ self applicationAspects at:anIdentifier put:anObject
+!
+
+packageManager
+    ^ self applicationAspectsAt:#packageManager ifAbsent:[nil]
+!
+
+packageManager:aPackageManager
+    ^ self applicationAspectsAt:#packageManager put:aPackageManager
+!
+
+packagesSelectedHolder
+    ^ self applicationAspectsAt:#packagesSelectedHolder ifAbsent:[ValueHolder new]
+!
+
+packagesSelectedHolder:aPackageManager
+    ^ self applicationAspectsAt:#packagesSelectedHolder put:aPackageManager
+! !
+
+!AbstractPackageBrowser class methodsFor:'documentation'!
+
+version
+    ^ '$Header: /cvs/stx/stx/libbasic3/packages/AbstractPackageBrowser.st,v 1.1 2003-04-09 11:25:37 james Exp $'
+! !