Spec questions

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

Spec questions

Torsten Bergmann

Do we have Spec examples for
 - menues
 - lists with icons
 - trees

already? What is the state and overall
plan for the near future.

Thx
T.

Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)

On Jul 10, 2012, at 1:16 PM, Torsten Bergmann wrote:

>
> Do we have Spec examples for
> - menues

Which kind of menus ? If it's about menu on list, yes, if it's about menu on windows, not yet (I just introduce a spec for windows ^^)

> - lists with icons

IconListModel new
                icons: [:e | UITheme current forwardIcon ];
                items: (1 to: 10) asArray;
                openWithSpec

(so I just introduced IconListModel example)

> - trees

TreeModel example

>
> already? What is the state and overall
> plan for the near future.
>

About the battle plan, I introduced dynamic layouts yesterday (so you can add/remove widgets on the fly) and the next step is a UIBuilder



Ben

> Thx
> T.
>


DynamicSpec2.mov (443K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Stéphane Ducasse
In reply to this post by Torsten Bergmann
The plan is the following:

        - focus on really added value:
                - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
               
                - focus on four/five items (buttons, list, trees, text area)
                        - build a first complete UIPainter something that can be used to
                        place widgets on the screen and wire them.
                        - we started to look again at UIBuilder in 1.0 to get what could be reused
                        (for now we will probably drop the event aspect)
                        - ideally the panes for widgets settings should be generated automatically
                        based on some kind of meta description or spec of the widgets so that we can
                        move faster

                - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
                production.

        - continue the chapter.
        - probably some videos.

Now if people want to help, there are welcome.
I think that we need more users. A typical task would be to rewrite the MC tools.


>
> Do we have Spec examples for
> - menues
> - lists with icons
> - trees
>
> already? What is the state and overall
> plan for the near future.
>
> Thx
> T.
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Goubier Thierry
How to participate then ?

Will it be possible to do maybe a simple, but "live" painter ?

My first contact with Morphic to do a few gui elements (such as
rewritting the Nautilus GUI :-P) found the interface to be on the
confusing side (multiple morphs doing the same thing, complex
instantiation interface on average).

Thierry

Le 11/07/2012 14:58, Stéphane Ducasse a écrit :

> The plan is the following:
>
> - focus on really added value:
> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>
> - focus on four/five items (buttons, list, trees, text area)
> - build a first complete UIPainter something that can be used to
> place widgets on the screen and wire them.
> - we started to look again at UIBuilder in 1.0 to get what could be reused
> (for now we will probably drop the event aspect)
> - ideally the panes for widgets settings should be generated automatically
> based on some kind of meta description or spec of the widgets so that we can
> move faster
>
> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
> production.
>
> - continue the chapter.
> - probably some videos.
>
> Now if people want to help, there are welcome.
> I think that we need more users. A typical task would be to rewrite the MC tools.
>
>
>>
>> Do we have Spec examples for
>> - menues
>> - lists with icons
>> - trees
>>
>> already? What is the state and overall
>> plan for the near future.
>>
>> Thx
>> T.
>>
>
>
>


--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)
To participate, you can:
        - take a random tool and rewrite it using Spec :)
        - read the tech report, and tell where it's clear/unclear :)
        - write comments ^^
        - just use it, and share your feedback. Then all together we can improve Spec
        - try to convince other people to participate :D

Thank you in advance,
Ben


On Jul 11, 2012, at 4:22 PM, Goubier Thierry wrote:

> How to participate then ?
>
> Will it be possible to do maybe a simple, but "live" painter ?
>
> My first contact with Morphic to do a few gui elements (such as rewritting the Nautilus GUI :-P) found the interface to be on the confusing side (multiple morphs doing the same thing, complex instantiation interface on average).
>
> Thierry
>
> Le 11/07/2012 14:58, Stéphane Ducasse a écrit :
>> The plan is the following:
>>
>> - focus on really added value:
>> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>>
>> - focus on four/five items (buttons, list, trees, text area)
>> - build a first complete UIPainter something that can be used to
>> place widgets on the screen and wire them.
>> - we started to look again at UIBuilder in 1.0 to get what could be reused
>> (for now we will probably drop the event aspect)
>> - ideally the panes for widgets settings should be generated automatically
>> based on some kind of meta description or spec of the widgets so that we can
>> move faster
>>
>> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
>> production.
>>
>> - continue the chapter.
>> - probably some videos.
>>
>> Now if people want to help, there are welcome.
>> I think that we need more users. A typical task would be to rewrite the MC tools.
>>
>>
>>>
>>> Do we have Spec examples for
>>> - menues
>>> - lists with icons
>>> - trees
>>>
>>> already? What is the state and overall
>>> plan for the near future.
>>>
>>> Thx
>>> T.
>>>
>>
>>
>>
>
>
> --
> Thierry Goubier
> CEA list
> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
> 91191 Gif sur Yvette Cedex
> France
> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Stéphane Ducasse
have a look at the dualChangeSorter as an example.

Stef

On Jul 11, 2012, at 4:25 PM, Benjamin wrote:

> To participate, you can:
> - take a random tool and rewrite it using Spec :)
> - read the tech report, and tell where it's clear/unclear :)
> - write comments ^^
> - just use it, and share your feedback. Then all together we can improve Spec
> - try to convince other people to participate :D
>
> Thank you in advance,
> Ben
>
>
> On Jul 11, 2012, at 4:22 PM, Goubier Thierry wrote:
>
>> How to participate then ?
>>
>> Will it be possible to do maybe a simple, but "live" painter ?
>>
>> My first contact with Morphic to do a few gui elements (such as rewritting the Nautilus GUI :-P) found the interface to be on the confusing side (multiple morphs doing the same thing, complex instantiation interface on average).
>>
>> Thierry
>>
>> Le 11/07/2012 14:58, Stéphane Ducasse a écrit :
>>> The plan is the following:
>>>
>>> - focus on really added value:
>>> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>>>
>>> - focus on four/five items (buttons, list, trees, text area)
>>> - build a first complete UIPainter something that can be used to
>>> place widgets on the screen and wire them.
>>> - we started to look again at UIBuilder in 1.0 to get what could be reused
>>> (for now we will probably drop the event aspect)
>>> - ideally the panes for widgets settings should be generated automatically
>>> based on some kind of meta description or spec of the widgets so that we can
>>> move faster
>>>
>>> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
>>> production.
>>>
>>> - continue the chapter.
>>> - probably some videos.
>>>
>>> Now if people want to help, there are welcome.
>>> I think that we need more users. A typical task would be to rewrite the MC tools.
>>>
>>>
>>>>
>>>> Do we have Spec examples for
>>>> - menues
>>>> - lists with icons
>>>> - trees
>>>>
>>>> already? What is the state and overall
>>>> plan for the near future.
>>>>
>>>> Thx
>>>> T.
>>>>
>>>
>>>
>>>
>>
>>
>> --
>> Thierry Goubier
>> CEA list
>> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
>> 91191 Gif sur Yvette Cedex
>> France
>> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>>
>>
>>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Stéphane Ducasse
In reply to this post by Benjamin Van Ryseghem (Pharo)
have a look at the dualChangeSorter as an example.

Stef

On Jul 11, 2012, at 4:25 PM, Benjamin wrote:

> To participate, you can:
> - take a random tool and rewrite it using Spec :)
> - read the tech report, and tell where it's clear/unclear :)
> - write comments ^^
> - just use it, and share your feedback. Then all together we can improve Spec
> - try to convince other people to participate :D
>
> Thank you in advance,
> Ben
>
>
> On Jul 11, 2012, at 4:22 PM, Goubier Thierry wrote:
>
>> How to participate then ?
>>
>> Will it be possible to do maybe a simple, but "live" painter ?
>>
>> My first contact with Morphic to do a few gui elements (such as rewritting the Nautilus GUI :-P) found the interface to be on the confusing side (multiple morphs doing the same thing, complex instantiation interface on average).
>>
>> Thierry
>>
>> Le 11/07/2012 14:58, Stéphane Ducasse a écrit :
>>> The plan is the following:
>>>
>>> - focus on really added value:
>>> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>>>
>>> - focus on four/five items (buttons, list, trees, text area)
>>> - build a first complete UIPainter something that can be used to
>>> place widgets on the screen and wire them.
>>> - we started to look again at UIBuilder in 1.0 to get what could be reused
>>> (for now we will probably drop the event aspect)
>>> - ideally the panes for widgets settings should be generated automatically
>>> based on some kind of meta description or spec of the widgets so that we can
>>> move faster
>>>
>>> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
>>> production.
>>>
>>> - continue the chapter.
>>> - probably some videos.
>>>
>>> Now if people want to help, there are welcome.
>>> I think that we need more users. A typical task would be to rewrite the MC tools.
>>>
>>>
>>>>
>>>> Do we have Spec examples for
>>>> - menues
>>>> - lists with icons
>>>> - trees
>>>>
>>>> already? What is the state and overall
>>>> plan for the near future.
>>>>
>>>> Thx
>>>> T.
>>>>
>>>
>>>
>>>
>>
>>
>> --
>> Thierry Goubier
>> CEA list
>> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
>> 91191 Gif sur Yvette Cedex
>> France
>> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>>
>>
>>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Goubier Thierry
In reply to this post by Benjamin Van Ryseghem (Pharo)
Here I come with somme feedback on Spec.

I tried to rebuilt an example using a tree view using spec this
week-end, and it went fairly well (after a few misunderstandings).

So, if I summarize what Spec is :

* A herarchical view of models (a model is composed of submodels, where
submodels may themselves be composite), up to elementary models provided
by Spec.
* A related hierarchy of views, which are created by specs.
* Each model provides a defaultSpec to create the display.
* Each model, even a composite, must implement the following methods :
initializePresenter, initializeWidgets. And use instantiateModels:!
* Models are linked to one another by appropriate "trigger" blocks.

Good points :

* Creating a window is very easy; just call openWithSpec.
* The declarative aspect of Spec methods seems nice for a GUI painter.
* There are enough models for a good start.

A bit confusing so far with Spec:

* Some examples have twice the submodels initialization
(ClassMethodBrowser, in initialize and initializeWidgets)
* Two syntaxes are available in xSpec methods
* Two syntaxes are available in calls to instantiateModels:
* I don't know yet how an existing application would connect to a
Spec-based GUI (i.e. I don't know how to do a M-MVC app with it).
* I haven't found a declarative way of setting up relations between models.
* The spec and instantiateModels syntax isn't detailed.
* I don't know how to integrate a non-spec morph and model.
* The level of customization is frightening (TreeModel defaultSpec) but
this seems to be a Morphic problem overall.
* Exploring the generated morph hierarchy doesn't help much, due to the
complexity linked with each morph object.
* Why isn't there is a bit of info in the HelpBrowser ? It's easier to
read the doc this way instead of toggling between a Pharo window and a
pdf reader.

I'll show you soon my results with spec!

Thierry

Le 11/07/2012 16:25, Benjamin a écrit :

> To participate, you can:
> - take a random tool and rewrite it using Spec :)
> - read the tech report, and tell where it's clear/unclear :)
> - write comments ^^
> - just use it, and share your feedback. Then all together we can improve Spec
> - try to convince other people to participate :D
>
> Thank you in advance,
> Ben
>
>
> On Jul 11, 2012, at 4:22 PM, Goubier Thierry wrote:
>
>> How to participate then ?
>>
>> Will it be possible to do maybe a simple, but "live" painter ?
>>
>> My first contact with Morphic to do a few gui elements (such as rewritting the Nautilus GUI :-P) found the interface to be on the confusing side (multiple morphs doing the same thing, complex instantiation interface on average).
>>
>> Thierry
>>
>> Le 11/07/2012 14:58, Stéphane Ducasse a écrit :
>>> The plan is the following:
>>>
>>> - focus on really added value:
>>> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>>>
>>> - focus on four/five items (buttons, list, trees, text area)
>>> - build a first complete UIPainter something that can be used to
>>> place widgets on the screen and wire them.
>>> - we started to look again at UIBuilder in 1.0 to get what could be reused
>>> (for now we will probably drop the event aspect)
>>> - ideally the panes for widgets settings should be generated automatically
>>> based on some kind of meta description or spec of the widgets so that we can
>>> move faster
>>>
>>> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
>>> production.
>>>
>>> - continue the chapter.
>>> - probably some videos.
>>>
>>> Now if people want to help, there are welcome.
>>> I think that we need more users. A typical task would be to rewrite the MC tools.
>>>
>>>
>>>>
>>>> Do we have Spec examples for
>>>> - menues
>>>> - lists with icons
>>>> - trees
>>>>
>>>> already? What is the state and overall
>>>> plan for the near future.
>>>>
>>>> Thx
>>>> T.
>>>>
>>>
>>>
>>>
>>
>>
>> --
>> Thierry Goubier
>> CEA list
>> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
>> 91191 Gif sur Yvette Cedex
>> France
>> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>>
>>
>>
>
>
>
>


--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Sean P. DeNigris
Administrator
In reply to this post by Benjamin Van Ryseghem (Pharo)
Benjamin Van Ryseghem-2 wrote
I introduced dynamic layouts yesterday (so you can add/remove widgets on the fly)
What do I load to play with this?
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)
It's already in the Pharo 2.0 image :)

I will provide examples soon :)

Basically you can have your living ComposableModel, send

self needRebuild: false. "To specify not to rebuild the widget but to update it, maybe the name sucks :)"
self buildWithSpec "if you use the same layout"
or more interesting
self buildWithSpecLayout: aLayout "where a Layout is a SpecLayout"

So you can dynamically create a spec layout, and rebuild your view with it


Ben



On Jul 16, 2012, at 4:15 PM, Sean P. DeNigris wrote:

>
> Benjamin Van Ryseghem-2 wrote
>>
>> I introduced dynamic layouts yesterday (so you can add/remove widgets on
>> the fly)
>
> What do I load to play with this?
>
> --
> View this message in context: http://forum.world.st/Spec-questions-tp4639349p4640203.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Sean P. DeNigris
Administrator
Benjamin Van Ryseghem-2 wrote
It's already in the Pharo 2.0 image :)
Cool! Can it be loaded in 1.4?
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)
I think so :) Actually I haven't try, but it should work :)

Ben

On Jul 16, 2012, at 4:41 PM, Sean P. DeNigris wrote:

>
> Benjamin Van Ryseghem-2 wrote
>>
>> It's already in the Pharo 2.0 image :)
>>
>
> Cool! Can it be loaded in 1.4?
>
> --
> View this message in context: http://forum.world.st/Spec-questions-tp4639349p4640206.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Sean P. DeNigris
Administrator
Benjamin Van Ryseghem-2 wrote
I think so :) Actually I haven't try, but it should work :)

On Jul 16, 2012, at 4:41 PM, Sean P. DeNigris wrote:
> Cool! Can it be loaded in 1.4?
What do I have to load on top of Spec 1.0? Should I just try to update all the spec packages to latest?
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)
If you load the configuration, it's not here ?

Ben

On Jul 16, 2012, at 4:53 PM, Sean P. DeNigris wrote:

>
> Benjamin Van Ryseghem-2 wrote
>>
>> I think so :) Actually I haven't try, but it should work :)
>>
>> On Jul 16, 2012, at 4:41 PM, Sean P. DeNigris wrote:
>>> Cool! Can it be loaded in 1.4?
>>
>
> What do I have to load on top of Spec 1.0? Should I just try to update all
> the spec packages to latest?
>
> --
> View this message in context: http://forum.world.st/Spec-questions-tp4639349p4640209.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

philippeback
In reply to this post by Benjamin Van Ryseghem (Pharo)
1 more vote for 1.4...

2012/7/16 Benjamin <[hidden email]>
I think so :) Actually I haven't try, but it should work :)

Ben

On Jul 16, 2012, at 4:41 PM, Sean P. DeNigris wrote:

>
> Benjamin Van Ryseghem-2 wrote
>>
>> It's already in the Pharo 2.0 image :)
>>
>
> Cool! Can it be loaded in 1.4?
>
> --
> View this message in context: http://forum.world.st/Spec-questions-tp4639349p4640206.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>





--
Philippe Back
Dramatic Performance Improvements
Mob: +32(0) 478 650 140 | Fax: +32 (0) 70 408 027 Mail: [hidden email] | Web: http://philippeback.eu | Blog: http://philippeback.be

High Octane SPRL
rue cour Boisacq 101
1301 Bierges
Belgium
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Stéphane Ducasse
In reply to this post by Goubier Thierry
this is a good summary
Ben willcertainly comment it.

> Here I come with somme feedback on Spec.
>
> I tried to rebuilt an example using a tree view using spec this week-end, and it went fairly well (after a few misunderstandings).
>
> So, if I summarize what Spec is :
>
> * A herarchical view of models (a model is composed of submodels, where submodels may themselves be composite), up to elementary models provided by Spec.
> * A related hierarchy of views, which are created by specs.
> * Each model provides a defaultSpec to create the display.
> * Each model, even a composite, must implement the following methods : initializePresenter, initializeWidgets. And use instantiateModels:!
> * Models are linked to one another by appropriate "trigger" blocks.
>
> Good points :
>
> * Creating a window is very easy; just call openWithSpec.
> * The declarative aspect of Spec methods seems nice for a GUI painter.
> * There are enough models for a good start.
>
> A bit confusing so far with Spec:
>
> * Some examples have twice the submodels initialization (ClassMethodBrowser, in initialize and initializeWidgets)
> * Two syntaxes are available in xSpec methods
> * Two syntaxes are available in calls to instantiateModels:
this will be fixed.

> * I don't know yet how an existing application would connect to a Spec-based GUI (i.e. I don't know how to do a M-MVC app with it).
indeed for now not clear if we will handle that

> * I haven't found a declarative way of setting up relations between models.
How would it be possible?

> * The spec and instantiateModels syntax isn't detailed.
> * I don't know how to integrate a non-spec morph and model.
> * The level of customization is frightening (TreeModel defaultSpec) but this seems to be a Morphic problem overall.
> * Exploring the generated morph hierarchy doesn't help much, due to the complexity linked with each morph object.
I imagine that it often depend on the base widgetry

> * Why isn't there is a bit of info in the HelpBrowser ? It's easier to read the doc this way instead of toggling between a Pharo window and a pdf reader.

Because there is no need to duplicate documentation for an evolving system.

>
> I'll show you soon my results with spec!
>
> Thierry
>
> Le 11/07/2012 16:25, Benjamin a écrit :
>> To participate, you can:
>> - take a random tool and rewrite it using Spec :)
>> - read the tech report, and tell where it's clear/unclear :)
>> - write comments ^^
>> - just use it, and share your feedback. Then all together we can improve Spec
>> - try to convince other people to participate :D
>>
>> Thank you in advance,
>> Ben
>>
>>
>> On Jul 11, 2012, at 4:22 PM, Goubier Thierry wrote:
>>
>>> How to participate then ?
>>>
>>> Will it be possible to do maybe a simple, but "live" painter ?
>>>
>>> My first contact with Morphic to do a few gui elements (such as rewritting the Nautilus GUI :-P) found the interface to be on the confusing side (multiple morphs doing the same thing, complex instantiation interface on average).
>>>
>>> Thierry
>>>
>>> Le 11/07/2012 14:58, Stéphane Ducasse a écrit :
>>>> The plan is the following:
>>>>
>>>> - focus on really added value:
>>>> - dynamic spec (and ben did it already). We should be able to build mac os x like finder engine
>>>>
>>>> - focus on four/five items (buttons, list, trees, text area)
>>>> - build a first complete UIPainter something that can be used to
>>>> place widgets on the screen and wire them.
>>>> - we started to look again at UIBuilder in 1.0 to get what could be reused
>>>> (for now we will probably drop the event aspect)
>>>> - ideally the panes for widgets settings should be generated automatically
>>>> based on some kind of meta description or spec of the widgets so that we can
>>>> move faster
>>>>
>>>> - continue to rewrite all the tools with Spec. ChangeSorter and dualChangeSorter got into
>>>> production.
>>>>
>>>> - continue the chapter.
>>>> - probably some videos.
>>>>
>>>> Now if people want to help, there are welcome.
>>>> I think that we need more users. A typical task would be to rewrite the MC tools.
>>>>
>>>>
>>>>>
>>>>> Do we have Spec examples for
>>>>> - menues
>>>>> - lists with icons
>>>>> - trees
>>>>>
>>>>> already? What is the state and overall
>>>>> plan for the near future.
>>>>>
>>>>> Thx
>>>>> T.
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> Thierry Goubier
>>> CEA list
>>> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
>>> 91191 Gif sur Yvette Cedex
>>> France
>>> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>>>
>>>
>>>
>>
>>
>>
>>
>
>
> --
> Thierry Goubier
> CEA list
> Laboratoire des Fondations des Systèmes Temps Réel Embarqués
> 91191 Gif sur Yvette Cedex
> France
> Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Goubier Thierry
Le 18/07/2012 07:26, Stéphane Ducasse a écrit :
> this is a good summary
> Ben willcertainly comment it.

Thanks. My small attempt at documenting it :-)

>> Here I come with somme feedback on Spec.
>>
>> I tried to rebuilt an example using a tree view using spec this week-end, and it went fairly well (after a few misunderstandings).
>>
>> So, if I summarize what Spec is :
>>
>> * A herarchical view of models (a model is composed of submodels, where submodels may themselves be composite), up to elementary models provided by Spec.
>> * A related hierarchy of views, which are created by specs.
>> * Each model provides a defaultSpec to create the display.
>> * Each model, even a composite, must implement the following methods : initializePresenter, initializeWidgets. And use instantiateModels:!
>> * Models are linked to one another by appropriate "trigger" blocks.
>>
>> Good points :
>>
>> * Creating a window is very easy; just call openWithSpec.
>> * The declarative aspect of Spec methods seems nice for a GUI painter.
>> * There are enough models for a good start.
>>
>> A bit confusing so far with Spec:
>>
>> * Some examples have twice the submodels initialization (ClassMethodBrowser, in initialize and initializeWidgets)
>> * Two syntaxes are available in xSpec methods
>> * Two syntaxes are available in calls to instantiateModels:
> this will be fixed.

Maybe documenting both is enough; the array-based one is good for future
tools (easy to manipulate), the code-based one is better for programmers
(especially since the RB formatter doesn't do well, IMO, with dynamic
arrays).

>> * I don't know yet how an existing application would connect to a Spec-based GUI (i.e. I don't know how to do a M-MVC app with it).
> indeed for now not clear if we will handle that

Ok.

>> * I haven't found a declarative way of setting up relations between models.
> How would it be possible?

A few objects defining more or less standard interactions (share,
transform two-ways), with a bit of customisation and a painter for
composite views... no ?

In it's current state, Spec is already interesting. Good work !

Thierry
--
Thierry Goubier
CEA list
Laboratoire des Fondations des Systèmes Temps Réel Embarqués
91191 Gif sur Yvette Cedex
France
Phone/Fax: +33 (0) 1 69 08 32 92 / 83 95



Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Sean P. DeNigris
Administrator
In reply to this post by Benjamin Van Ryseghem (Pharo)
Benjamin Van Ryseghem-2 wrote
I will provide examples soon :)
...
So you can dynamically create a spec layout, and rebuild your view with it

On Jul 16, 2012, at 4:15 PM, Sean P. DeNigris wrote:
> Benjamin Van Ryseghem-2 wrote
>>
>> I introduced dynamic layouts yesterday (so you can add/remove widgets on
>> the fly)
Bump :) I looked through the methods you described earlier in the thread, but don't know where to start. Is any code currently using the dynamic layout that I can look through? Didn't find anything that looked relevant via senders...

Thanks,
Sean
Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Benjamin Van Ryseghem (Pharo)
Euh, I do not know :)

You can have a look at SpecInspector.

If you need more, I will write more :)


Ben

On Jan 26, 2013, at 12:41 AM, Sean P. DeNigris wrote:

> Benjamin Van Ryseghem-2 wrote
>> I will provide examples soon :)
>> ...
>> So you can dynamically create a spec layout, and rebuild your view with it
>>
>> On Jul 16, 2012, at 4:15 PM, Sean P. DeNigris wrote:
>>> Benjamin Van Ryseghem-2 wrote
>>>>
>>>> I introduced dynamic layouts yesterday (so you can add/remove widgets on
>>>> the fly)
>
> Bump :) I looked through the methods you described earlier in the thread,
> but don't know where to start. Is any code currently using the dynamic
> layout that I can look through? Didn't find anything that looked relevant
> via senders...
>
> Thanks,
> Sean
>
>
>
> --
> View this message in context: http://forum.world.st/Spec-questions-tp4639349p4665462.html
> Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
>


Reply | Threaded
Open this post in threaded view
|

Re: Spec questions

Sean P. DeNigris
Administrator
Benjamin Van Ryseghem-2 wrote
You can have a look at SpecInspector.

If you need more, I will write more :)
SpecInspector seems to cover the dynamic "showing and hiding" behavior, but I think an example of "adding and removing arbitrary widgets on the fly", like the one we discussed, would be very helpful.
Cheers,
Sean