Hi,
We are happy to announce the first version of Glamour on Seaside. This work was carried out by Andrei Vasile Chis and was sponsored by ESUG. The project offers a Seaside-based rendering of Glamour browsers. In other words, once you have a browser in Glamour, you can now simply display it on the web.
You can obtain the code in two ways: - Nightly built image: http://hudson.moosetechnology.org/job/moose-with-glamour-seaside/lastSuccess... - Metacello configuration loadable in Pharo 1.1 (not Core) Gofer new squeaksource: 'Glamour'; package: 'ConfigurationOfGlamourSeaside'; load. (Smalltalk at: #ConfigurationOfGlamourSeaside) loadDefault.
A couple of examples are available on the Moose server: http://online.moosetechnology.org/glamour/basicExamples (a number of example browsers) http://online.moosetechnology.org/moose/metaBrowser (a browser for the meta-model of Moose)
Several developments are planned for the near future, so stay tuned for more news.
We would highly appreciate any kind of feedback.
Cheers, Andrei and Doru
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This work was carried out by Andrei Vasile Chis and was sponsored by ESUG. The project offers a Seaside-based rendering of Glamour browsers. In other words, once you have a browser in Glamour, you can now simply display it on the web.
You can obtain the code in two ways:
- Nightly built image:
http://hudson.moosetechnology.org/job/moose-with-glamour-seaside/lastSuccess...
- Metacello configuration loadable in Pharo 1.1 (not Core)
Gofer new squeaksource: 'Glamour'; package: 'ConfigurationOfGlamourSeaside'; load. (Smalltalk at: #ConfigurationOfGlamourSeaside) loadDefault.
A couple of examples are available on the Moose server: http://online.moosetechnology.org/glamour/basicExamples (a number of example browsers) http://online.moosetechnology.org/moose/metaBrowser (a browser for the meta-model of Moose)
Several developments are planned for the near future, so stay tuned for more news.
We would highly appreciate any kind of feedback.
Cheers, Andrei and Doru
Thank you.
Where do I find the Seaside web server panel?
gives no answer. On which port does Seaside run?
Regards --Hannes
Hi Hannes,
I do not think Seaside is started by default. You can start it by executing WAKom startOn: 8080.
Cheers, Andrei
On Mon, Sep 27, 2010 at 4:28 PM, Hannes Hirzel hannes.hirzel@gmail.comwrote:
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This
work
was carried out by Andrei Vasile Chis and was sponsored by ESUG. The
project
offers a Seaside-based rendering of Glamour browsers. In other words,
once
you have a browser in Glamour, you can now simply display it on the web.
You can obtain the code in two ways:
- Nightly built image:
http://hudson.moosetechnology.org/job/moose-with-glamour-seaside/lastSuccess...
- Metacello configuration loadable in Pharo 1.1 (not Core)
Gofer new squeaksource: 'Glamour'; package: 'ConfigurationOfGlamourSeaside'; load. (Smalltalk at: #ConfigurationOfGlamourSeaside) loadDefault.
A couple of examples are available on the Moose server: http://online.moosetechnology.org/glamour/basicExamples (a number of
example
browsers) http://online.moosetechnology.org/moose/metaBrowser (a browser for the meta-model of Moose)
Several developments are planned for the near future, so stay tuned for
more
news.
We would highly appreciate any kind of feedback.
Cheers, Andrei and Doru
Thank you.
Where do I find the Seaside web server panel?
gives no answer. On which port does Seaside run?
Regards --Hannes _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Yes, this works. Thank you --Hannes
On 9/27/10, Andrei Vasile Chis chisvasileandrei@gmail.com wrote:
Hi Hannes,
I do not think Seaside is started by default. You can start it by executing WAKom startOn: 8080.
Cheers, Andrei
On Mon, Sep 27, 2010 at 4:28 PM, Hannes Hirzel hannes.hirzel@gmail.comwrote:
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This
work
was carried out by Andrei Vasile Chis and was sponsored by ESUG. The
project
offers a Seaside-based rendering of Glamour browsers. In other words,
once
you have a browser in Glamour, you can now simply display it on the web.
You can obtain the code in two ways:
- Nightly built image:
http://hudson.moosetechnology.org/job/moose-with-glamour-seaside/lastSuccess...
- Metacello configuration loadable in Pharo 1.1 (not Core)
Gofer new squeaksource: 'Glamour'; package: 'ConfigurationOfGlamourSeaside'; load. (Smalltalk at: #ConfigurationOfGlamourSeaside) loadDefault.
A couple of examples are available on the Moose server: http://online.moosetechnology.org/glamour/basicExamples (a number of
example
browsers) http://online.moosetechnology.org/moose/metaBrowser (a browser for the meta-model of Moose)
Several developments are planned for the near future, so stay tuned for
more
news.
We would highly appreciate any kind of feedback.
Cheers, Andrei and Doru
Thank you.
Where do I find the Seaside web server panel?
gives no answer. On which port does Seaside run?
Regards --Hannes _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hello Tudor and Andrei
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This work was carried out by Andrei Vasile Chis and was sponsored by ESUG. The project offers a Seaside-based rendering of Glamour browsers. In other words, once you have a browser in Glamour, you can now simply display it on the web.
....
We would highly appreciate any kind of feedback.
The basic browsers work fine http://localhost:8080/glamour/basicExamples
But in the developer Examples some do not work, e.g. http://localhost:8080/glamour/devExamples
Class listing - only an empty browser shows up.
The next choice: http://localhost:8080/glamour/otherExamples The code browser with the Mondrian view is amazing. Where can I change the code there e.g. to see the hierarchy of Morph?
What is the meaning of the pragma? <glmBrowser: 'Code Browser' input: 'Collection'>
Thank you in any case for this amazing work.....
--Hannes
Hello again,
I found the place, it was easy.
And another question, see below
--Hannes
SGLExamples subclass: #SGLOtherExamples instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'Glamour-Seaside-Examples'
I just did
codeBrowser " self new codeBrowser openOn: Morph " <glmBrowser: 'Code Browser' input: 'Morph'>
and now I have the Morph hierarchy
Originally I was thinking it should be possible to edit the source code through the browser.
Another question: Layout
I would like to have the hierarchy view span the whole width; the selectors list can me much smaller and the selection of the browser type could easily reside on top of the selector list. (Or it could be spread out horizontally as four tabs..)
How do I do that?
In the code I do not see size related issues.
codeBrowser " self new codeBrowser openOn: Morph " <glmBrowser: 'Code Browser' input: 'Morph'> | browser | browser := GLMTabulator new.
browser row: [ :row | row column: #classes; column: #selectors ]. browser row: #source.
browser showOn: #classes; using: [ browser tree title: 'Tree'; children: [ :class | class subclasses ]. browser mondrian title: 'Mondrian'; painting: [ :view :class | view nodeShape size: 10. view nodes: class withAllSubclasses. view edgesFrom: #superclass. view treeLayout ] ]. browser showOn: #selectors; from: #classes; using: [ browser list display: [ :class | class selectors asSortedCollection ] ].
browser showOn: #source; from: #classes; from: #selectors; using: [ browser text title: 'Source'; when: [ :class :selector | class notNil and: [ selector notNil ] ]; display: [ :class :selector | class sourceCodeAt: selector ]. browser text title: 'Comment'; display: [ :class :selector | class comment ] ]. ^ browser
On 9/27/10, Hannes Hirzel hannes.hirzel@gmail.com wrote:
Hello Tudor and Andrei
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This work was carried out by Andrei Vasile Chis and was sponsored by ESUG. The project offers a Seaside-based rendering of Glamour browsers. In other words, once you have a browser in Glamour, you can now simply display it on the web.
....
We would highly appreciate any kind of feedback.
The basic browsers work fine http://localhost:8080/glamour/basicExamples
But in the developer Examples some do not work, e.g. http://localhost:8080/glamour/devExamples
Class listing - only an empty browser shows up.
The next choice: http://localhost:8080/glamour/otherExamples The code browser with the Mondrian view is amazing. Where can I change the code there e.g. to see the hierarchy of Morph?
What is the meaning of the pragma? <glmBrowser: 'Code Browser' input: 'Collection'>
Thank you in any case for this amazing work.....
--Hannes
...
Another question: Layout
I would like to have the hierarchy view span the whole width; the selectors list can me much smaller and the selection of the browser type could easily reside on top of the selector list. (Or it could be spread out horizontally as four tabs..)
A screenshot to illustrate the point. A lot of space is unused....
HJH
And (within the same example http://localhost:8080/glamour/otherExamples) code browser.
I browse the Morph hierarchy and I want to expand StringMorph in the tree view. It is not possible but StringMorph has 15 subclasses
StringMorph allSubclasses size 15
HJH
P.S. An unrelated question regarding command expansion
I type StringMorph allSub
and then I correctly see 'allSubclasses' proposed - how do I accept it * ctrl-space does not work * enter does not work * mouse click does not work
I use this on WinXP SP3
On 9/27/10, Hannes Hirzel hannes.hirzel@gmail.com wrote:
...
Another question: Layout
I would like to have the hierarchy view span the whole width; the selectors list can me much smaller and the selection of the browser type could easily reside on top of the selector list. (Or it could be spread out horizontally as four tabs..)
A screenshot to illustrate the point. A lot of space is unused....
HJH
On Mon, Sep 27, 2010 at 8:57 PM, Hannes Hirzel hannes.hirzel@gmail.comwrote:
And (within the same example http://localhost:8080/glamour/otherExamples) code browser.
I browse the Morph hierarchy and I want to expand StringMorph in the tree view. It is not possible but StringMorph has 15 subclasses
StringMorph allSubclasses size 15
I just tried it with a clean image and I was able to browse the subclasses of StringMorph. In my case the StringMorph is the fifth entry in the tree list after expanding Morph. Also could you execute the commented code from the begining of SGLOtherExamples>>codeBrowser and see if in the resulting browser you can browse the subclasses.
HJH
P.S. An unrelated question regarding command expansion
I type StringMorph allSub
and then I correctly see 'allSubclasses' proposed - how do I accept it
- ctrl-space does not work
- enter does not work
- mouse click does not work
I use this on WinXP SP3
Press TAB to accept the proposal.
Cheers, Andrei
On Mon, Sep 27, 2010 at 8:50 PM, Hannes Hirzel hannes.hirzel@gmail.comwrote:
Hello again,
I found the place, it was easy.
And another question, see below
--Hannes
SGLExamples subclass: #SGLOtherExamples instanceVariableNames: '' classVariableNames: '' poolDictionaries: '' category: 'Glamour-Seaside-Examples'
I just did
codeBrowser " self new codeBrowser openOn: Morph " <glmBrowser: 'Code Browser' input: 'Morph'>
and now I have the Morph hierarchy
Originally I was thinking it should be possible to edit the source code through the browser.
This browser only shows the code. I haven't tried it but I believe it could be modified to also change the code.
Another question: Layout
I would like to have the hierarchy view span the whole width; the selectors list can me much smaller and the selection of the browser type could easily reside on top of the selector list. (Or it could be spread out horizontally as four tabs..)
How do I do that?
In the code I do not see size related issues.
Using the available space in the best way is an issue we plan to address in the next version. For now your options are limited to using GLMTabulator>>addRow:span: and GLMTabulator>>addColumn:span:. For now in order to achive a better distribution of the available space replace
browser row: [ :row | row column: #classes; column: #selectors ].
with
browser row: [ :row | row column: #classes span: 10; column: #selectors ] span: 4.
You can further modify the span attribute but at the moment this is the only solution. Of course you can create a new browser that uses tabs or displays the information in a different way.
codeBrowser " self new codeBrowser openOn: Morph " <glmBrowser: 'Code Browser' input: 'Morph'> | browser | browser := GLMTabulator new.
browser row: [ :row | row column: #classes; column: #selectors ]. browser row: #source. browser showOn: #classes; using: [ browser tree title: 'Tree'; children: [ :class | class subclasses ]. browser mondrian title: 'Mondrian'; painting: [ :view :class | view nodeShape size: 10. view nodes: class withAllSubclasses. view edgesFrom: #superclass. view treeLayout ] ]. browser showOn: #selectors; from: #classes; using: [ browser list display: [ :class | class selectors
asSortedCollection ] ].
browser showOn: #source; from: #classes; from: #selectors; using: [ browser text title: 'Source'; when: [ :class :selector | class notNil and: [
selector notNil ] ]; display: [ :class :selector | class sourceCodeAt: selector ]. browser text title: 'Comment'; display: [ :class :selector | class comment ] ].
^ browser
On 9/27/10, Hannes Hirzel hannes.hirzel@gmail.com wrote:
Hello Tudor and Andrei
On 9/26/10, Tudor Girba tudor.girba@gmail.com wrote:
Hi,
We are happy to announce the first version of Glamour on Seaside. This work was carried out by Andrei Vasile Chis and was sponsored by ESUG. The project offers a Seaside-based rendering of Glamour browsers. In other words, once you have a browser in Glamour, you can now simply display it on the web.
....
We would highly appreciate any kind of feedback.
The basic browsers work fine http://localhost:8080/glamour/basicExamples
But in the developer Examples some do not work, e.g. http://localhost:8080/glamour/devExamples
Class listing - only an empty browser shows up.
The next choice: http://localhost:8080/glamour/otherExamples The code browser with the Mondrian view is amazing. Where can I change the code there e.g. to see the hierarchy of Morph?
What is the meaning of the pragma? <glmBrowser: 'Code Browser' input: 'Collection'>
Thank you in any case for this amazing work.....
--Hannes
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
The basic browsers work fine http://localhost:8080/glamour/basicExamples
But in the developer Examples some do not work, e.g. http://localhost:8080/glamour/devExamples
Class listing - only an empty browser shows up.
The examples in this category are mainly for development to check if things work well. Some of them(like Class listing) require a moose model to be loaded in order to work correctly. Informations about how to load such a model can be found in the moose book(www.themoosebook.org) chapters 2 and 3.
The next choice: http://localhost:8080/glamour/otherExamples The code browser with the Mondrian view is amazing. Where can I change the code there e.g. to see the hierarchy of Morph?
In SGLOtherExamples>>codeBrowser change <glmBrowser: 'Code Browser' input: 'Collection'> to <glmBrowser: 'Code Browser' input: 'Morph'>
What is the meaning of the pragma? <glmBrowser: 'Code Browser' input: 'Collection'>
This pragmas are used to build the three browsers you specified above. Their general form is <glmBrowser: 'Browser title' input: 'input value'>. For example in order to build the browser at http://localhost:8080/glamour/basicExamples all the methods in SGLBasicExamples containing this pragma are taken into account and for each one an entry in the new browser is created with the given title. When you select for example 'Accumulator' from the right panel the method SGLBasicExamples >>accumulator is invoked and the returned browser is open on the input value specified by the pragma <glmBrowser: 'Accumulator' input: '42'>. I hope this explanation makes sense.
Cheers, Andrei