On 06 Nov 2013, at 08:21, Bahman Movaqar <bah...@bahmanm.com> wrote: > 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 :) >> >>> initializePresenter >> >>> self instantiateModels: #( >>> textName TextModel >>> labelGreeting LabelModel >>> buttonGreet ButtonModel >>> ). >>> labelGreeting text: ''. >>> buttonGreet label: 'Greet Me!'; disable. >> >> should be turned into: >> >> #initializePresenter >> 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 > >> On 06 Nov 2013, at 06:05, Bahman Movaqar <bah...@bahmanm.com> wrote: >> >>> 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)