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.
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.
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.
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.
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.
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.
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.
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.
1 more vote for 1.4... 2012/7/16 Benjamin <benjamin.vanryseghem.pharo@gmail.com>
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: phil@highoctane.be| Web: http://philippeback.eu | Blog: http://philippeback.be High Octane SPRL rue cour Boisacq 101 1301 Bierges Belgium
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.
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.
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. -- View this message in context: http://forum.world.st/Spec-questions-tp4639349p4666936.html Sent from the Pharo Smalltalk mailing list archive at Nabble.com.
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.
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
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
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
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
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
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
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
participants (6)
-
Benjamin -
Goubier Thierry -
phil@highoctane.be -
Sean P. DeNigris -
Stéphane Ducasse -
Torsten Bergmann