2015-10-30 19:30 GMT+01:00 Andrei Chis <[email protected]>:

> Cool example.
> I slightly modified it and added it to the glamour examples :)
>
> | browser morph |
>    morph := StringMorph new.
>    morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
>    browser := GLMTabulator new.
>    browser
>     row: #main;
> row: #preview.
>    browser transmit
>       to: #main;
>       andShow: [ :a | a text
>         onChangeOfPort: #text act: [ :text  |
>             morph contents:text text] ].
>    browser transmit
> to: #preview;
> andShow: [ :a | a morph
> title: 'Preview';
>                        display: [ morph ] ].
>
>   ^ browser openOn: 'some text'
>
>
cool!



> On Fri, Oct 30, 2015 at 11:47 AM, Nicolai Hess <[email protected]>
> wrote:
>
>>
>>
>> 2015-10-30 16:32 GMT+01:00 Andrei Chis <[email protected]>:
>>
>>> Hi,
>>>
>>> You can try this:
>>>
>>> composite := GLMCompositePresentation new.
>>> composite pharoPlayground
>>>      title: 'Script';
>>>      variableBindings: [ { #x -> 1. #y -> 2 } ].
>>> composite
>>>  openOn: 'x+y'.
>>>
>>> For the moment only script presentations can have variables.
>>>
>>> Btw  #pharoPlayground  and #rubricText will be deprecated in the latest
>>> version in favour of #pharoScript and #text
>>>
>>> Cheers,
>>> Andrei
>>>
>>> On Fri, Oct 30, 2015 at 11:14 AM, Torsten Bergmann <[email protected]>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> if one has an inspector extension that shows a textual iVar of an object
>>>> representing code (using #rubricText, #pharoMethod or  #pharoPlayground)
>>>> as in this example:
>>>>
>>>>  gtInspectorSourceIn: composite
>>>>         <gtInspectorPresentationOrder: 30>
>>>>         ^ composite pharoMethod
>>>>                 title: 'Source';
>>>>                 smalltalkClass: [ self methodClass ];
>>>>                 display: [ self getSource ];
>>>>                 act: [ self browse ] icon: GLMUIThemeExtraIcons
>>>> glamorousBrowse entitled: 'Browse'
>>>>
>>>> What is the best/correct way to set the iVar when the text is typed so
>>>> the
>>>> state of the iVar represents the lively editing in the inspector
>>>> extension?
>>>>
>>>> Or is there a way to realize this somehow with Glamour ports using the
>>>> #text port?
>>>>
>>>
>>
>> you can define an action on a port change:
>> onChangeOfPort:act:
>>
>> | browser morph |
>>    morph := StringMorph new openInWorld.
>>    morph font:(LogicalFont familyName: 'Source Code Pro' pointSize: 30).
>>     browser := GLMTabulator new.
>>     browser
>>         row: #main.
>>     (browser transmit)
>>         to: #main;
>>         andShow: [ :a | a rubricText
>>             onChangeOfPort: #text act: [ :text  |
>>             morph contents:text text] ].
>>
>>     ^ browser openOn:'type some text'
>>
>> This will open a StringMorph and a GlamourBrowser.
>> If you change the text in the browser, it will change the contents of the
>> string morph.
>>
>>
>>
>>>> Thanks
>>>> T.
>>>>
>>>
>>>
>>
>

Reply via email to