On 11/06/2013 20:35, Benjamin wrote:
Ok :)
These methods only exists in Pharo 3.0 :)
Hmm...I don't understand. Please correct me if I'm wrong but I
thought Spec is a UI library, so it doesn't matter if I'm using it
in Pharo 2.0 or 3.0 as long as I have the correct version of Spec.
On 11/06/2013 11:07, Benjamin
wrote:
In which version of Pharo are you working ?
Pharo2.0
Latest update: #20607
On 11/06/2013 10:56, Benjamin
wrote:
On 06 Nov 2013, at 08:21,
Bahman Movaqar <Bahman@BahmanM.com
<mailto:Bahman@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 :)
That clearly shows I have to work on my
"exploration" skills :-)
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 :)
Hmm...Pharo rejects those lines, e.g. with "Unknown
select
newTextInput". I guess I'm sub-classing the wrong
class. Here's my
class definition:
<code>
ComposableModel subclass: #FirstSpec
instanceVariableNames: 'textName labelGreeting
buttonGreet'
classVariableNames: ''
poolDictionaries: ''
category: 'Bahman-Spec'
</code>
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 :)
Ancestral remains, huh? :-)
On 06 Nov 2013, at
06:05, Bahman Movaqar <Bahman@BahmanM.com
<mailto:Bahman@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)