Aw: Re: [Newbies] TextMorph

Mark Volkmann mark at ociweb.com
Tue Nov 4 11:59:41 UTC 2008


I'm not familiar with the borderedPrototype or newContents: methods.
The following works for me without setting the extent. You should see  
the string 'foo' displayed.

t := TextMorph new
	contents: 'foo';
	position: 800 at 400;
	openInWorld;
	yourself

On Nov 4, 2008, at 2:52 AM, pascal.vollmer at nexgo.de wrote:

> Hi Mark,
>
> Thanks for your advice. But the behavior I experience seems not to  
> depend on extent:.
> Let me show an example:
>
> 1.) a := TextMorph borderedPrototype. a openInWorld.
> 2.) b := TextMorph borderedPrototype. b newContents: ''; openInWorld.
>
> 1.) shows a text 'abc' with big font. When getting focus you will  
> see a big cursor. You may start to change it.
> 2.) shows nothing. When getting focus you will see a small cursor.  
> And when you start to change it you will see small font text.
>
> This does not change when you add b extent: 100 at 100.
>
> There is an additional observation. If you take code snippet 1.) and  
> edit it you will loose vertical size of cursor and text when you  
> walk from 1 character to 0 character and 1 character again. But pay  
> attention: this is true for character deletion with the Del-key. It  
> is not true for the Backspace-key.
>
> If anyone can give me a clue on this I would be grateful. You may  
> find my TimesTable app on SqueakSource.
>
> Kind regards
> Pascal
>
>
>
> ----- Original Nachricht ----
> Von:     Mark Volkmann <mark at ociweb.com>
> An:      "A friendly place to get answers to even the most basic  
> questions about
> 	Squeak." <beginners at lists.squeakfoundation.org>
> Datum:   04.11.2008 00:00
> Betreff: Re: [Newbies] TextMorph
>
>> On Nov 3, 2008, at 4:51 PM, pascal.vollmer at nexgo.de wrote:
>>
>>> Hello,
>>>
>>> I write a times table application for children: a question, an
>>> equals sign, an answer. For the answer field I would like to see a
>>> TextMorph. It should be empty, prepared for big size figures and
>>> with a big size cursor waiting for input.
>>>
>>> I tested TextMorph>>borderedPrototype the contents of which is
>>> initialized to 'abc'. Now, when I change 'abc' to an empty string...
>>> cursor size is reduced and the first figure that is typed by the
>>> user will be small size.
>>>
>>> Why this different behavior?
>>
>>
>> I think the issue is that if you want the TextMorph to be larger than
>> the text inside it (in your case none), you have to set its extent.
>> Here's some code that works for me. Note how I set the extent height
>> of "textField" based on the font size of the StringMorph. I set the
>> extent width to a fixed value of 100 pixels.
>>
>> 	spaceBetweenMorphs := 10.
>> 	spaceInsideContainer := 10.
>> 	
>> 	container := Morph new.
>> 	container
>> 		layoutPolicy: TableLayout new;
>> 		listDirection: #leftToRight;
>> 		hResizing: #shrinkWrap;
>> 		vResizing: #shrinkWrap;
>> 		layoutInset: spaceInsideContainer;
>> 		cellInset: spaceBetweenMorphs;
>> 		width: 200.
>>
>> 	label := StringMorph contents: 'I''m a label.'.
>> 	font := label font.
>> 	margin := 4.
>> 	height := font lineGrid + (margin * 2).
>> 	container addMorphBack: label.
>> 	
>> 	textField := TextFieldMorph new.
>> 	textField extent: 100 at height. "text doesn't display if insufficient
>> height"
>> 	container addMorphBack: textField.
>>
>> ---
>> Mark Volkmann
>>
>>
>>
>>
>> _______________________________________________
>> Beginners mailing list
>> Beginners at lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/beginners
>>
>
> Pascal Vollmer
> Email: pascal.vollmer at ieee.org
>
> Jetzt komfortabel bei Arcor-Digital TV einsteigen: Mehr Happy Ends,  
> mehr Herzschmerz, mehr Fernsehen! Erleben Sie 50 digitale TV  
> Programme und optional 60 Pay TV Sender, einen elektronischen  
> Programmführer mit Movie Star Bewertungen von TV Movie. Außerdem,  
> aktuelle Filmhits und spannende Dokus in der Arcor-Videothek. Infos  
> unter www.arcor.de/tv
> _______________________________________________
> Beginners mailing list
> Beginners at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/mailman/listinfo/beginners


---
Mark Volkmann






More information about the Beginners mailing list