RadioButtonGroup.st
changeset 178 5c28593c2a3b
parent 177 c06d27f8525f
child 198 c0f39f9440a7
--- a/RadioButtonGroup.st	Tue Nov 14 22:44:34 1995 +0100
+++ b/RadioButtonGroup.st	Wed Nov 15 17:20:37 1995 +0100
@@ -36,7 +36,7 @@
 !
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg/RadioButtonGroup.st,v 1.17 1995-11-14 21:44:31 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg/RadioButtonGroup.st,v 1.18 1995-11-15 16:20:34 cg Exp $'
 !
 
 documentation
@@ -74,87 +74,88 @@
 "
     example (using Toggles for 'at most one-on behavior'):
 
-	|top panel toggle b g|
+	|top panel toggle b group|
 
 	top := StandardSystemView new.
 	panel := HorizontalPanelView origin:0.0@0.0 corner:1.0@1.0 in:top.
-	g := RadioButtonGroup new.
+	group := RadioButtonGroup new.
 	b := Toggle label:'one' in:panel.
-	g add:b.
+	group add:b.
 	b := Toggle label:'two' in:panel.
-	g add:b.
+	group add:b.
 	b := Toggle label:'three' in:panel.
-	g add:b.
+	group add:b.
 	top extent:(panel preferredExtent).
 	top open.
 
 
     example (using RadioButtons for 'one-on behavior'):
 
-	|top panel toggle b g|
+	|top panel toggle b group|
 
 	top := StandardSystemView new.
 	panel := HorizontalPanelView origin:0.0@0.0 corner:1.0@1.0 in:top.
-	g := RadioButtonGroup new.
+	group := RadioButtonGroup new.
 	b := RadioButton label:'one' in:panel.
-	g add:b.
+	group add:b.
 	b := RadioButton label:'two' in:panel.
-	g add:b.
+	group add:b.
 	b := RadioButton label:'three' in:panel.
-	g add:b.
+	group add:b.
 	top extent:(panel preferredExtent).
 	top open.
 
 
     example (using Buttons for 'none-on behavior'; but the groups value remembers the last button):
 
-	|top panel toggle b g|
+	|top panel toggle b group|
 
 	top := StandardSystemView new.
 	panel := HorizontalPanelView origin:0.0@0.0 corner:1.0@1.0 in:top.
-	g := RadioButtonGroup new.
+	group := RadioButtonGroup new.
 	b := Button label:'one' in:panel.
-	g add:b.
+	group add:b.
 	b := Button label:'two' in:panel.
-	g add:b.
+	group add:b.
 	b := Button label:'three' in:panel.
-	g add:b.
+	group add:b.
 	top extent:(panel preferredExtent).
 	top open.
-	g valueChannel inspect
+	group valueChannel inspect
 
 
     example (same, with button 'two' initially on):
 
-	|top panel toggle b g|
+	|top panel toggle b group|
 
 	top := StandardSystemView new.
 	panel := HorizontalPanelView origin:0.0@0.0 corner:1.0@1.0 in:top.
-	g := RadioButtonGroup new.
+	group := RadioButtonGroup new.
 	b := RadioButton label:'one' in:panel.
-	g add:b.
+	group add:b.
 	b := RadioButton label:'two' in:panel.
-	g add:b.
-	b turnOn.
+	group add:b.
+	group value:2.
 	b := RadioButton label:'three' in:panel.
-	g add:b.
+	group add:b.
 	top extent:(panel preferredExtent).
 	top open.
 
+
     using checkBoxes (these have a label included):
 
-	|top panel toggle b g|
+	|top panel toggle b group|
 
 	top := StandardSystemView new.
 	panel := VerticalPanelView origin:0.0@0.0 corner:1.0@1.0 in:top.
 	panel horizontalLayout:#left.
-	g := RadioButtonGroup new.
+	group := RadioButtonGroup new.
 	b := CheckBox label:'one' in:panel.
-	g add:b.
+	group add:b.
 	b := CheckBox label:'two' in:panel.
-	g add:b.
+	group add:b.
 	b := CheckBox label:'three' in:panel.
-	g add:b.
+	group add:b.
 	top extent:(panel preferredExtent).
 	top open.
 
@@ -178,6 +179,8 @@
 	    Transcript showCr:'aborted'
 	]
 "
+
+    "Created: 15.11.1995 / 17:14:53 / cg"
 ! !
 
 !RadioButtonGroup methodsFor:'accessing'!
@@ -196,6 +199,14 @@
 
 !RadioButtonGroup methodsFor:'accessing-mvc'!
 
+value
+    ^ valueChannel value
+!
+
+value:anIndex
+    valueChannel value:anIndex
+!
+
 valueChannel
     ^ valueChannel
 !
@@ -206,7 +217,7 @@
     valueChannel notNil ifTrue:[oldValue := valueChannel value].
     valueChannel := aValueHolder.
     (newValue := valueChannel value) ~~ oldValue ifTrue:[
-	(self at:newValue) turnOn
+	(self at:newValue) turnOnWithAction
     ]
 ! !