ResourcePack.st
changeset 2 b35336ab0de3
parent 0 48194c26a46c
child 5 e5942fea6925
--- a/ResourcePack.st	Wed Oct 13 01:30:35 1993 +0100
+++ b/ResourcePack.st	Wed Oct 13 01:32:53 1993 +0100
@@ -37,9 +37,10 @@
         ]
     ].
 
+    newPack := self new.
     inStream := Smalltalk systemFileStreamFor:('resources/' , aFileName).
-    inStream isNil ifTrue:[^ self new].
-    newPack := self new readFromResourceStream:inStream.
+    inStream isNil ifTrue:[newPack fileName:aFileName. ^ newPack].
+    newPack readFromResourceStream:inStream.
     newPack fileName:aFileName.
     inStream close.
 
@@ -85,8 +86,8 @@
     dependents := aCollection
 !
 
-at:aKey
-    ^ self at:aKey ifAbsent:[aKey]
+dependents
+    ^ dependents
 !
 
 fileName
@@ -97,14 +98,22 @@
     fileName := aString
 !
 
-dependents
-    ^ dependents
+at:aKey
+    ^ self at:aKey ifAbsent:[aKey]
 !
 
 at:aKey default:default
     ^ self at:aKey ifAbsent:[default]
 !
 
+name:aKey
+    ^ self at:aKey ifAbsent:[aKey]
+!
+
+name:aKey default:default
+    ^ self at:aKey ifAbsent:[default]
+!
+
 array:anArray
     ^ anArray collect:[:r | self at:r default:r]
 !
@@ -134,6 +143,7 @@
             ^ expandedString , (template copyFrom:start to:stop)
         ].
         "found a %"
+	expandedString := expandedString , (template copyFrom:start to:(idx - 1)).
         next := template at:(idx + 1).
         (next == $%) ifTrue:[
             expandedString := expandedString , '%'
@@ -141,7 +151,8 @@
             expandedString := expandedString , (argArray at:(next digitValue)) printString
         ].
         start := idx + 2
-    ]
+    ].
+    ^  expandedString
 ! !
 
 !ResourcePack methodsFor:'file reading'!