--- a/AbstractSettingsApplication.st Tue Mar 29 08:40:07 2016 +0100
+++ b/AbstractSettingsApplication.st Wed Mar 30 06:50:02 2016 +0200
@@ -1343,7 +1343,7 @@
readPackageList
"self basicNew readPackageList"
- |packageDirPath list|
+ |packageDirPath list setOfPackages setOfAlreadySelectedPckages|
packageDirPath := Smalltalk getSystemFileName:'packages'.
packageDirPath isNil ifTrue:[
@@ -1351,6 +1351,8 @@
].
list := OrderedCollection new.
+ setOfPackages := Set new.
+ setOfAlreadySelectedPckages := UserPreferences current autoloadedPackages asSet.
packageDirPath asFilename directoryContentsAsFilenames sort do:[:fn |
|item base nm path parentPath parent isLibrary isApplication isAlreadyLoaded
@@ -1382,16 +1384,21 @@
ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
ifFalse:[ path first ].
- isAlreadyLoaded :=
- (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
- and:[ defClass isLoaded
- and:[ defClass isFullyLoaded ]].
-
- isAlreadyLoaded ifTrue:[
- list add:(packageID,(' (currently loaded)' colorizeAllWith:Color grey))
- ] ifFalse:[
- list add:packageID
- ]
+ (setOfPackages includes:packageID) ifFalse:[
+ (setOfAlreadySelectedPckages includes:packageID) ifFalse:[
+ setOfPackages add:packageID.
+ isAlreadyLoaded :=
+ (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
+ and:[ defClass isLoaded
+ and:[ defClass isFullyLoaded ]].
+
+ isAlreadyLoaded ifTrue:[
+ list add:(packageID,(' (currently loaded)' colorizeAllWith:Color grey))
+ ] ifFalse:[
+ list add:packageID
+ ]
+ ].
+ ].
].
].
list sort.
--- a/resources/de.rs Tue Mar 29 08:40:07 2016 +0100
+++ b/resources/de.rs Wed Mar 30 06:50:02 2016 +0200
@@ -3384,3 +3384,17 @@
'windows printer' 'Windows Drucker'
'writeback changeFile' 'Zurückschreiben (in ChangeDatei)'
'your display does not offer any %1-encoded font.\\Change the language anyway ?\ (texts will probably be unreadable then)' 'Ihr System stellt keinen %1-kodierten Zeichensatz zur Verfügung.\\Dennoch ändern ?\(Texte werden dann vermutlich nicht lesbar sein)'
+
+'Block Local' 'Lokal in Block'
+'Method Local Variable' 'Lokal in Methode'
+'Instance Variable' 'Instanzvariable'
+'New Class' 'Neue Klasse'
+'Global' 'Globale'
+'NameSpace' 'Namensraum'
+'Class Instance Variable' 'Klasseninstanz-Variable'
+'Class Variable (= Pool Constant)' 'Klassenvariable (= Poolkonstante)'
+'Class Variable' 'Klassenvariable'
+'Private Class' 'Private Klasse'
+'Workspace Variable' 'Workspace-Variable'
+'DoIt Temporary' 'Temporär in DoIt'
+