ToolBuilder / Squeak 4.1 changes

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

ToolBuilder / Squeak 4.1 changes

Andreas.Raab
Hi -

As a first step for merging, here are the changes that are in Squeak 4.1
relative to the latest versions in the repository at
http://www.squeaksource.com/ToolBuilder. The following is a pretty much
complete set of changes that happened since (there are a few more minor
edits but they're pretty much irrelevant for our purposes here):

Package: ToolBuilder-Kernel
---------------------------
- PluggableAlternateMultiSelectionListSpec
This class was added as an 'alternative' multi-selection list (used only
by MessageTrace; perhaps Chris can comment)

- PluggableCodePaneSpec
This class was added to distinguish code-editing panes from others. It
implies syntax highlighting any other goodies you'd like to see in code.

- PluggableListSpec
   * doubleClick - selector to handle double click events
   * keystrokePreview - selector to handle key events for filtering

- PluggableTextSpec
   * askBeforeDiscardingEdits - whether to ask before discarding changes

- PluggableWindowSpec
   * isDialog - if the window should behave like a dialog

- UIManager:
   * chooseFont:for:setSelector:getSelector: - font selector dialog
   * confirm:label: - confirm dialog w/ both message text and label
   * request:initialAnswer:centerAt: - positioned #request: message

All of these changes are pretty straightforward and should not cause
much of an issue.

Package: ToolBuilder-Morphic
----------------------------
- ListChooser
This class was added to implement the chooser dialog in Morphic.

- PluggableDialogWindow
This class was added for dialog windows in Cobalt.

- PluggableTextMorphPlus:
   * styler - PTMPlus has been extended to support Shout directly.

- MorphicUIManager:
   * chooseFont: - usage of FontChooser
   * chooseFrom: - usage of ListChooser
   * confirm: - usage of UserDialogBoxMorph
   * informUserDuring: - usage of SystemProgressMorph

There is obviously more of an issue here. Various classes have only
emerged in Squeak 4.1 and won't exist in Pharo. Not sure what to do
here, because it's as much of an issue between 3.x and 4.1.

I'll review the Pharo changes next.

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] ToolBuilder / Squeak 4.1 changes

Stéphane Ducasse
Thanks

On Apr 23, 2010, at 5:37 AM, Andreas Raab wrote:

> Hi -
>
> As a first step for merging, here are the changes that are in Squeak 4.1 relative to the latest versions in the repository at http://www.squeaksource.com/ToolBuilder. The following is a pretty much complete set of changes that happened since (there are a few more minor edits but they're pretty much irrelevant for our purposes here):

OK

>
> Package: ToolBuilder-Kernel
> ---------------------------
> - PluggableAlternateMultiSelectionListSpec
> This class was added as an 'alternative' multi-selection list (used only by MessageTrace; perhaps Chris can comment)

I do not understand what it means from a spec perspective to have an alternate spec.
Don't we simply want a
         PluggableMultiSelectionListSpec with a property that changes it behavior?

> - PluggableCodePaneSpec
> This class was added to distinguish code-editing panes from others. It implies syntax highlighting any other goodies you'd like to see in code.
>
> - PluggableListSpec
>  * doubleClick - selector to handle double click events
>  * keystrokePreview - selector to handle key events for filtering
>
> - PluggableTextSpec
>  * askBeforeDiscardingEdits - whether to ask before discarding changes
>
> - PluggableWindowSpec
>  * isDialog - if the window should behave like a dialog
>
> - UIManager:
>  * chooseFont:for:setSelector:getSelector: - font selector dialog
>  * confirm:label: - confirm dialog w/ both message text and label
>  * request:initialAnswer:centerAt: - positioned #request: message
>
> All of these changes are pretty straightforward and should not cause much of an issue.
>
> Package: ToolBuilder-Morphic
> ----------------------------
> - ListChooser
> This class was added to implement the chooser dialog in Morphic.
>
> - PluggableDialogWindow
> This class was added for dialog windows in Cobalt.
>
> - PluggableTextMorphPlus:
>  * styler - PTMPlus has been extended to support Shout directly.
>
> - MorphicUIManager:
>  * chooseFont: - usage of FontChooser
>  * chooseFrom: - usage of ListChooser
>  * confirm: - usage of UserDialogBoxMorph
>  * informUserDuring: - usage of SystemProgressMorph
>
> There is obviously more of an issue here. Various classes have only emerged in Squeak 4.1 and won't exist in Pharo. Not sure what to do here, because it's as much of an issue between 3.x and 4.1.
>
> I'll review the Pharo changes next.
>
> Cheers,
>  - Andreas
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] ToolBuilder / Squeak 4.1 changes

Chris Muller-3
>> - PluggableAlternateMultiSelectionListSpec
>> This class was added as an 'alternative' multi-selection list (used only by MessageTrace; perhaps Chris can comment)
>
> I do not understand what it means from a spec perspective to have an alternate spec.
> Don't we simply want a
>         PluggableMultiSelectionListSpec with a property that changes it behavior?
>

Hi, the PluggableAlternateMultiSelectionListSpec is a move toward a
more windows-like operation of a multi-select list.  The standard
PluggableMultiSelectionListSpec does not allow rapid swipes of ranges,
nor does it allow using the Shift modifier to do range-selection.
Alternate does.

The only reason Alternate has not yet completely replaced the legacy
in Squeak is because we have not yet found a way to allow
Control+selection to not bring up the halos.

Ha!  I wonder if, in Pharo, it would actually work because doesn't
Pharo pretty much hide the halos now?

Currently, Alternate is only used for one tool in Squeak
(MessageTrace) and that tool does not exist in Pharo.  So, probably
you could omit it, but I would suggest, if possible, to at least
consider omitting the *other* legacy one,
PluggableMultiSelectionListSpec, because I hope that it will be
replaced by Alternate someday (and renamed to take its place).

Whichever is easier..

 - Chris



>> - PluggableCodePaneSpec
>> This class was added to distinguish code-editing panes from others. It implies syntax highlighting any other goodies you'd like to see in code.
>>
>> - PluggableListSpec
>>  * doubleClick - selector to handle double click events
>>  * keystrokePreview - selector to handle key events for filtering
>>
>> - PluggableTextSpec
>>  * askBeforeDiscardingEdits - whether to ask before discarding changes
>>
>> - PluggableWindowSpec
>>  * isDialog - if the window should behave like a dialog
>>
>> - UIManager:
>>  * chooseFont:for:setSelector:getSelector: - font selector dialog
>>  * confirm:label: - confirm dialog w/ both message text and label
>>  * request:initialAnswer:centerAt: - positioned #request: message
>>
>> All of these changes are pretty straightforward and should not cause much of an issue.
>>
>> Package: ToolBuilder-Morphic
>> ----------------------------
>> - ListChooser
>> This class was added to implement the chooser dialog in Morphic.
>>
>> - PluggableDialogWindow
>> This class was added for dialog windows in Cobalt.
>>
>> - PluggableTextMorphPlus:
>>  * styler - PTMPlus has been extended to support Shout directly.
>>
>> - MorphicUIManager:
>>  * chooseFont: - usage of FontChooser
>>  * chooseFrom: - usage of ListChooser
>>  * confirm: - usage of UserDialogBoxMorph
>>  * informUserDuring: - usage of SystemProgressMorph
>>
>> There is obviously more of an issue here. Various classes have only emerged in Squeak 4.1 and won't exist in Pharo. Not sure what to do here, because it's as much of an issue between 3.x and 4.1.
>>
>> I'll review the Pharo changes next.
>>
>> Cheers,
>>  - Andreas
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>
>