On 11/06/2013 10:41, Benjamin wrote:
This is the expected behaviour :)
Oh! A bit unorthodox, specially considering the shortcut (CTRL+S)
--I was expecting something like ENTER :-)
There is also acceptOnCr :)
But what you can do (and actually what you wanna do) is to
accept the text at each keyStroke :)
self
instantiateModels: #(
textName TextModel
labelGreeting LabelModel
buttonGreet ButtonModel
).
labelGreeting
text: ''.
buttonGreet label: 'Greet Me!'; disable.
should be turned into:
textName := self newTextInput.
labelGreeting
:= self newLabel.
buttonGreet
:= self newButton.
Would you please explain the RHS of the statements? I don't
understand `self newTextInput`.
It�s equivalent to self instantiateModels: #(textName TextInputFieldModel).
It simply creates a new sub model for you :)
labelGreeting text: ''.
buttonGreet
label: 'Greet Me!'; disable.
textName autoAccept:
true.
It's certainly no big deal but I'm just curious; any special reason
why `autoAccept` doesn't default to true?
That�s actually a good question :)
I guess the answer is historical :)
Ben
Hi
all,
I'm writing a simple graphical version of the legendary
"Hello, world". I have a window with a text field, a
button and a label. What I'm trying to do is to make
the button (which is initially disabled) enabled upon
user entering text. However, it seems that the user
first must "Accept" the text for the action to be fired.
Here's some snippets of code:
<code>
initializePresenter
textName whenTextChanged: [
buttonGreet enable ].
buttonGreet action: [
labelGreeting text: 'Hello, ', textName text,
'!'.
buttonGreet disable ].
initializeWidgets
self instantiateModels: #(
textName TextModel
labelGreeting LabelModel
buttonGreet ButtonModel
).
labelGreeting text: ''.
buttonGreet label: 'Greet Me!'; disable.
</code>
What am I doing wrong?
TIA,
PS: I have tried `whenTextChanged` to no avail --it
shows the same behaviour.
--
Bahman Movaqar (http://BahmanM.com)
ERP Evaluation, Implementation & Deployment Consultant
PGP Key ID: 0x6AB5BD68 (keyserver2.pgp.com)