checkin from browser
authorcg
Fri, 30 Jan 1998 04:04:26 +0000
changeset 293 294f0a65008a
parent 292 8d68e41fcc19
child 294 ca9870da0ac0
checkin from browser
JavaAppletComponentSpec.st
examples/JavaAppletDemo1.st
--- a/JavaAppletComponentSpec.st	Fri Jan 30 03:34:00 1998 +0000
+++ b/JavaAppletComponentSpec.st	Fri Jan 30 04:04:26 1998 +0000
@@ -11,8 +11,9 @@
 
 addBindingsTo:env for:inst channel:aChannel 
     |nameStringHolder valueStringHolder 
-     paramNameListHolder selectionInParameters|
-
+     paramNameListHolder selectionInParameters
+     indexHolder|
+ 
     super addBindingsTo:env for:inst channel:aChannel.
 
     self 
@@ -33,26 +34,51 @@
     selectionInParameters := SelectionInList new.
     selectionInParameters listHolder:paramNameListHolder.
 
-    env at:#paramNameListHolder put:paramNameListHolder.
+    indexHolder := selectionInParameters indexHolder.
+    indexHolder 
+        onChangeSend:#value 
+        to:[
+            |selectedName selectedValue index|
+
+            index := indexHolder value.
+            index ~~ 0 ifTrue:[
+                selectedName := paramNameListHolder value at:index. 
+                selectedValue := inst parameterDictionary at:selectedName ifAbsent:''.
+                nameStringHolder value:selectedName.
+                valueStringHolder value:selectedValue
+            ]
+           ].
+
+    env at:#paramNameListHolder put:selectionInParameters.
     env at:#paramNameString     put:(nameStringHolder := '' asValue).
     env at:#paramValueString    put:(valueStringHolder := '' asValue).
 
     env at:#addParam    put:[
-                                inst 
-                                    addParameter:nameStringHolder value
-                                    value:valueStringHolder value.
-                                paramNameListHolder 
-                                    value:(inst parameterDictionary keys asSortedCollection)
+                                |newName|
+
+                                newName := nameStringHolder value.
+                                newName notEmpty ifTrue:[
+                                    inst 
+                                        addParameter:newName
+                                        value:valueStringHolder value.
+                                    paramNameListHolder 
+                                        value:(inst parameterDictionary keys asSortedCollection)
+                                ]
                             ].
     env at:#removeParam put:[
-                                inst 
-                                    removeParameter:nameStringHolder value.
-                                paramNameListHolder 
-                                    value:(inst parameterDictionary keys asSortedCollection)
+                                |nameToRemove|
+
+                                nameToRemove := nameStringHolder value.
+                                nameToRemove notEmpty ifTrue:[
+                                    inst removeParameter:nameToRemove.
+                                    paramNameListHolder 
+                                        value:(inst parameterDictionary keys asSortedCollection).
+                                    indexHolder value:0.
+                                ]
                             ].
 
     "Created: / 29.1.1998 / 14:17:39 / cg"
-    "Modified: / 30.1.1998 / 04:21:18 / cg"
+    "Modified: / 30.1.1998 / 05:01:43 / cg"
 !
 
 basicsEditSpec
@@ -237,12 +263,6 @@
            #(#SpecCollection
               #'collection:' 
                #(
-                 #(#DataSetSpec
-                    #'name:' 'dataSet1'
-                    #'layout:' #(#LayoutFrame 0 0.0 3 0 0 1.0 201 0)
-                    #'hasHorizontalScrollBar:' true
-                    #'hasVerticalScrollBar:' true
-                )
                  #(#InputFieldSpec
                     #'name:' 'inputField1'
                     #'layout:' #(#LayoutFrame 80 0 208 0 -2 1 230 0)
@@ -277,11 +297,25 @@
                     #'label:' 'remove'
                     #'model:' #removeParam
                 )
+                 #(#SequenceViewSpec
+                    #'name:' 'sequenceView1'
+                    #'layout:' #(#LayoutFrame 0 0.0 32 0.0 0 1.0 202 0)
+                    #'model:' #paramNameListHolder
+                    #'hasHorizontalScrollBar:' true
+                    #'hasVerticalScrollBar:' true
+                    #'useIndex:' false
+                )
+                 #(#LabelSpec
+                    #'name:' 'label3'
+                    #'layout:' #(#LayoutFrame 2 0 7 0 198 0 29 0)
+                    #'label:' 'Applet Parameters:'
+                    #'adjust:' #left
+                )
               )
           )
       )
 
-    "Modified: / 30.1.1998 / 04:13:16 / cg"
+    "Modified: / 30.1.1998 / 04:59:57 / cg"
 !
 
 slices
@@ -434,6 +468,18 @@
 
 !JavaAppletComponentSpec methodsFor:'converting'!
 
+fromLiteralArrayEncoding:aSpecArray
+    "initialize my values from a specArray"
+
+    super fromLiteralArrayEncoding:aSpecArray.
+
+    parameterDictionary notNil ifTrue:[
+        parameterDictionary := parameterDictionary decodeAsLiteralArray.
+    ].
+
+    "Created: / 30.1.1998 / 04:58:41 / cg"
+!
+
 skippedInLiteralEncoding
     "redefined to skip flags with default values"
 
@@ -452,7 +498,8 @@
     documentURL isNil ifTrue:[
         l add:#documentURL
     ].
-    parameterDictionary isNil ifTrue:[
+    (parameterDictionary isNil 
+    or:[parameterDictionary isEmpty]) ifTrue:[
         l add:#parameterDictionary
     ].
     level isNil ifTrue:[
@@ -462,6 +509,7 @@
     ^ l
 
     "Created: / 29.1.1998 / 20:31:32 / cg"
+    "Modified: / 30.1.1998 / 05:03:22 / cg"
 ! !
 
 !JavaAppletComponentSpec methodsFor:'spec actions'!
@@ -485,5 +533,5 @@
 !JavaAppletComponentSpec class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaAppletComponentSpec.st,v 1.4 1998/01/30 03:34:00 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaAppletComponentSpec.st,v 1.5 1998/01/30 04:04:26 cg Exp $'
 ! !
--- a/examples/JavaAppletDemo1.st	Fri Jan 30 03:34:00 1998 +0000
+++ b/examples/JavaAppletDemo1.st	Fri Jan 30 04:04:26 1998 +0000
@@ -75,11 +75,11 @@
           )
       )
 
-    "Modified: / 30.1.1998 / 03:52:21 / cg"
+    "Modified: / 30.1.1998 / 05:03:29 / cg"
 ! !
 
 !JavaAppletDemo1 class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/examples/JavaAppletDemo1.st,v 1.1 1998/01/30 02:53:06 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/examples/JavaAppletDemo1.st,v 1.2 1998/01/30 04:03:43 cg Exp $'
 ! !