ResourcePack.st
changeset 4634 d57ba003bba4
parent 4623 81241ac5d815
child 4643 2f1b2d98d0b5
--- a/ResourcePack.st	Fri Oct 06 11:55:58 2006 +0200
+++ b/ResourcePack.st	Mon Oct 09 11:19:01 2006 +0200
@@ -9,7 +9,6 @@
  other person.  No title to or ownership of the software is
  hereby transferred.
 "
-
 "{ Package: 'stx:libview' }"
 
 Dictionary subclass:#ResourcePack
@@ -709,39 +708,50 @@
             ].
         ].
 
+        (aKey endsWith:' ...') ifTrue:[
+            usedKey := aKey copyWithoutLast:4.
+
+            val := self localAt:usedKey.        "/ recursion
+            val notNil ifTrue:[^ val , '...'].
+        ].
+        (aKey endsWith:'...') ifTrue:[
+            usedKey := aKey copyWithoutLast:3.
+
+            val := self localAt:usedKey.        "/ recursion
+            val notNil ifTrue:[^ val , '...'].
+        ].
+
         (':=.?!!' includes:aKey last) ifTrue:[
-            rest := aKey last.
-            usedKey := aKey copyWithoutLast:1.
+            aKey size > 2 ifTrue:[
+                rest := aKey last.
+                usedKey := aKey copyWithoutLast:1.
 
-            val := super at:usedKey ifAbsent:nil.        "/ recursion
-            val notNil ifTrue:[^ val , rest].
+                val := self localAt:usedKey.        "/ recursion
+                val notNil ifTrue:[^ val , rest].
+            ].
+        ].
+        (':=.?!!' includes:aKey first) ifTrue:[
+            aKey size > 2 ifTrue:[
+                rest := aKey first.
+                usedKey := aKey copyFrom:2.
+
+                val := self localAt:usedKey.        "/ recursion
+                val notNil ifTrue:[^ rest asString , val].
+            ].
         ].
 
         ((aKey startsWith:'(') and:[(aKey endsWith:')')]) ifTrue:[
             usedKey := aKey copyFrom:2 to:(aKey size - 1).
 
-            val := super at:usedKey ifAbsent:nil.        "/ recursion
+            val := self localAt:usedKey.        "/ recursion
             val notNil ifTrue:[^ '(' , val , ')'].
         ].
         (aKey endsWith:' ') ifTrue:[
             usedKey := aKey withoutSeparators.
 
-            val := super at:usedKey ifAbsent:nil.        "/ recursion
+            val := self localAt:usedKey.        "/ recursion
             val notNil ifTrue:[^ val].
         ].
-        (aKey endsWith:' ...') ifTrue:[
-            usedKey := aKey copyWithoutLast:4.
-
-            val := super at:usedKey ifAbsent:nil.        "/ recursion
-            val notNil ifTrue:[^ val , '...'].
-        ].
-
-        (aKey endsWith:'...') ifTrue:[
-            usedKey := aKey copyWithoutLast:3.
-
-            val := super at:usedKey ifAbsent:nil.        "/ recursion
-            val notNil ifTrue:[^ val , '...'].
-        ].
 
         (idx := aKey indexOf:$&) ~~ 0 ifTrue:[
             (aKey at:idx+1 ifAbsent:nil) ~~ $& ifTrue:[
@@ -754,6 +764,7 @@
     ^ nil.
 
     "Created: / 18-09-2006 / 17:33:27 / cg"
+    "Modified: / 07-10-2006 / 15:38:35 / cg"
 !
 
 name:aKey default:default
@@ -1239,7 +1250,7 @@
 !ResourcePack class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/ResourcePack.st,v 1.116 2006-09-18 19:51:16 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/ResourcePack.st,v 1.117 2006-10-09 09:19:01 cg Exp $'
 ! !
 
 ResourcePack initialize!