--- a/TypeConv.st Tue Mar 04 02:00:20 1997 +0100
+++ b/TypeConv.st Tue Mar 04 12:33:55 1997 +0100
@@ -54,6 +54,19 @@
!TypeConverter class methodsFor:'instance creation'!
+onDateValue:aValueHolder
+ "create and return a typeConverter, which retrieves
+ a date via #value, and converts
+ a date-string to a date via #value:.
+ Useful as an editFields model, which operates on some
+ date value (or aspectAdaptor, which adapts to a numeric slot)"
+
+ ^ (self on:aValueHolder) dateToText
+
+ "Modified: 21.2.1997 / 18:46:11 / cg"
+ "Created: 4.3.1997 / 12:30:49 / cg"
+!
+
onNumberValue:aValueHolder
"create and return a typeConverter, which retrieves
a values string representation via #value, and converts
@@ -98,6 +111,38 @@
!TypeConverter methodsFor:'initialize-release'!
+dateToText
+ "setup the converter to convert from a string to a date
+ and vice versa."
+
+ self
+ getBlock:[:model |
+ |date|
+
+ (date := model value) isNil ifTrue:[
+ Date today printString
+ ] ifFalse:[
+ date printString
+ ]]
+
+ putBlock:
+ [:model :string |
+
+ |value|
+
+ string isEmpty ifTrue:[
+ value := Date today
+ ] ifFalse:[
+ value := Date readFrom:string onError:Date today
+ ].
+ model value:value]
+
+ updateBlock: [:m :a :p | true]
+
+ "Modified: 21.2.1997 / 18:59:06 / cg"
+ "Created: 4.3.1997 / 12:32:19 / cg"
+!
+
numberOrNil
"setup the converter to convert from a string to a number
and vice versa. Invalid numbers are converted to nil."
@@ -232,5 +277,5 @@
!TypeConverter class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview2/Attic/TypeConv.st,v 1.3 1997-02-24 19:50:19 ca Exp $'
+ ^ '$Header: /cvs/stx/stx/libview2/Attic/TypeConv.st,v 1.4 1997-03-04 11:33:55 cg Exp $'
! !
--- a/TypeConverter.st Tue Mar 04 02:00:20 1997 +0100
+++ b/TypeConverter.st Tue Mar 04 12:33:55 1997 +0100
@@ -54,6 +54,19 @@
!TypeConverter class methodsFor:'instance creation'!
+onDateValue:aValueHolder
+ "create and return a typeConverter, which retrieves
+ a date via #value, and converts
+ a date-string to a date via #value:.
+ Useful as an editFields model, which operates on some
+ date value (or aspectAdaptor, which adapts to a numeric slot)"
+
+ ^ (self on:aValueHolder) dateToText
+
+ "Modified: 21.2.1997 / 18:46:11 / cg"
+ "Created: 4.3.1997 / 12:30:49 / cg"
+!
+
onNumberValue:aValueHolder
"create and return a typeConverter, which retrieves
a values string representation via #value, and converts
@@ -98,6 +111,38 @@
!TypeConverter methodsFor:'initialize-release'!
+dateToText
+ "setup the converter to convert from a string to a date
+ and vice versa."
+
+ self
+ getBlock:[:model |
+ |date|
+
+ (date := model value) isNil ifTrue:[
+ Date today printString
+ ] ifFalse:[
+ date printString
+ ]]
+
+ putBlock:
+ [:model :string |
+
+ |value|
+
+ string isEmpty ifTrue:[
+ value := Date today
+ ] ifFalse:[
+ value := Date readFrom:string onError:Date today
+ ].
+ model value:value]
+
+ updateBlock: [:m :a :p | true]
+
+ "Modified: 21.2.1997 / 18:59:06 / cg"
+ "Created: 4.3.1997 / 12:32:19 / cg"
+!
+
numberOrNil
"setup the converter to convert from a string to a number
and vice versa. Invalid numbers are converted to nil."
@@ -232,5 +277,5 @@
!TypeConverter class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libview2/TypeConverter.st,v 1.3 1997-02-24 19:50:19 ca Exp $'
+ ^ '$Header: /cvs/stx/stx/libview2/TypeConverter.st,v 1.4 1997-03-04 11:33:55 cg Exp $'
! !