In the following browser, whatever is selected in the list, if I press
Modifier-i I get an inspect on 5.
===========================================
|browser|
browser := GLMTabulator new.
browser row: #list.
browser transmit to: #list; andShow: [:a |
a list
display: [:v | v to: 10 * v];
selectionAct: [:pres :selection | selection inspect] on: $i
entitled: 'Inspect'
].
browser openOn: 5
===========================================
How can I get an inspect on what is really selected?
--
Damien Cassou
http://damiencassou.seasidehosting.st
"Lambdas are relegated to relative obscurity until Java makes them
popular by not having them." James Iry
Hi!
The famoors workshop will be held in the small room at esug.
A program is now online:
http://www.moosetechnology.org/events/famoosr2011
Cheers,
Alexandre & Jannik
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Comment #2 on issue 693 by tudor.gi...(a)gmail.com: JSON import / export for
Moose
http://code.google.com/p/moose-technology/issues/detail?id=693
No concrete scenario. But, we have JSON support (Lukas implemented one on
top of PetitParser even) and there are plenty of other systems that know
how to consume and produce one.
I just think that it would be nice selling point to say that we can
serialize in JSON.
Status: New
Owner: ----
Labels: Type-Enhancement Priority-Medium Component-Fame
New issue 693 by tudor.gi...(a)gmail.com: JSON import / export for Moose
http://code.google.com/p/moose-technology/issues/detail?id=693
Due to the increase of JSON usage, we should provide a JSON alternative to
the MSE file format.
Status: New
Owner: tudor.gi...(a)gmail.com
Labels: Type-Defect Priority-Medium Component-Glamour Milestone-4.6
New issue 692 by tudor.gi...(a)gmail.com: Listing Presentations do not
respond to shortcuts in Morphic
http://code.google.com/p/moose-technology/issues/detail?id=692
Execute
GLMBasicExamples new treeWithMenu openOn: #(($a $b $c $d) ($e $f) ($g $h $i
$j $l)).
Select an item and press CMD+i.
Nothing happens
Hi guys
I will start a new development phase for RPackage and I would love to know if the version 3.3 when loaded in Moose is working.
I would like to know if we can use this one as stable so that I can work on 3.4 (as dev branch)
tx
Stef
Hi!
We have released a new version of Fuel-core. According to my benchmarks with
Moose models, there is an improvement of 15-20% in export time. However,
import time and file size is almost the same than in current version.
There is a drawback if we adopt new version in Moose: saved files would
become obsolete since the new format is incompatible.
So maybe it is better to do not adopt the new version and keep the current
one until we reach a better improvement.
What do you think?
Does anyone use the FL export/import option? Does it work fine?
Bests,
Martin
Hi Fabrizio,
MooseJEE fails to build now due to some apparent problem in the configuration:
'Name not found: Moose-JEE-Tests-Importers-JSP'
http://ci.moosetechnology.org/job/moosejee-latest-dev/139/console
Cheers,
Doru
--
www.tudorgirba.com
"We can create beautiful models in a vacuum.
But, to get them effective we have to deal with the inconvenience of reality."
Hi,
The bleeding edge version of Filesystem is unloadable in Pharo 1.3 (see the attached debug log).
To test it, try:
Gofer new
squeaksource: 'fs';
package: 'ConfigurationOfFilesystem';
load.
(Smalltalk at: #ConfigurationOfFilesystem) loadBleedingEdge
Cheers,
Doru
--
www.tudorgirba.com
"From an abstract enough point of view, any two things are similar."
Dear Fellow,
We will organize Famoosr at esug this year. The event will be half a day, either on Sunday or on Tuesday morning. If you are using Moose and plan to attend esug, then submit your 10-lines description.
-==-=-=-=-==-=-=-=-==-=-=-=-==-=-=-=
FAMOOSr'11
Goal: Make people aware of what is happening on Moose. The event is demo oriented. You will have 5 minutes of demonstration.
How to participate: you need to send a 10-lines description before Monday 15 August, to Jannik Laval <jannik.laval(a)inria.fr> and Alexandre Bergel <alexandre.bergel(a)me.com>
What the event will look like: it will be heavily demo and discussion oriented. Participants are required to be concise and short on their presentation.
-==-=-=-=-==-=-=-=-==-=-=-=-==-=-=-=
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
I want to reimplement software engineering metrics using moose chef instead of moose cook.
for example to compute cohesion I would do (among other things):
self queryAllOutgoingDependencies atClassScope withinMyPackage
i.e. :
1- from a package (self)
2- get all its "outgoingdependencies" (outgoing does not mean going outside the package, this includes dependencies within th package)
3- put that at class level (because we are interested in dependencies between classes within or outside the package)
4- and filter those that are inside self
I want the result to be all dependencies from classes within package self going to classes within package self .
but (from the moose chef documentation):
"The scope operators exclude self loops by default (this was also the default in Moose Cook). That is, the query result will not contain the receiver scope itself: you will not get something like PackageX -> PackageX in the result (the reason for this is that in general algorithms do not like graphs with self loops)."
So:
- should we change that default?
- should I change my query?
I believe if there is a method to exclude self loops (withoutSelfLoop), it should not be done automatically in some case let those who want it do it themselves.
What say you?
nicolas
I'm trying to customize some charts in EyeSee.
First, can I change the font size of labels in a chart? I tried #defaultFontSize: without success.
Second, can I change the fill color of my bars? In particular, I would like to pass a custom block as a parameter, as in Mondrian #fillColor:
I found script helpers like #setColoredFill or #coloredFill: but again, no success.
--
Simon Denier
Hi Camillo,
> I quickly hacked (with a lot of tests) support for omit in PetitParser.
> This should simplify some parsing efforts as an additional filtering step could be avoided.
>
> parser := ($" asParser omit, $" asParser negate star flatten, $" asParser omit)
> parser parse: '"asdfsd"' "yields directly #('asdfsd') "
>
> vs
>
> parser := ($" asParser, $" asParser negate star flatten, $" asParser)
> parser parse: '"asdfsd"'
>
> which yields #($" 'asdfsd' $")
I don't really see use of #omit. The element is still in a collection
and you need to extract it from there. What is the benefit other than
it is now at index 1 instead of 2?
Also the implementation has some problems:
1. #omit makes it really hard to compose grammars, because parsers
suddenly get very asymmetric and start to affect each others behavior
depending on how you compose them.
2. For the same reason grammar transformation becomes impossible, one
of the design goals of PetitParser.
3. #omit makes a typical grammar (the smalltalk one) roughly 15%
slower without even using the new feature.
4. There are various methods (#-, #match..., #copy..., ...) that need
to be fixed when you add state to a parser.
5. There is no need for eager (#initialize) as well as lazy
initialization (kills the possibility for a quick invocation).
6. Please do not remove PPParser class>>new and do not change how
initialization works, otherwise you break GemStone, VisualWorks, and
GNU Smalltalk. The Seaside wiki has some nice documentation of how to
correctly initialize objects (basically following the pattern of
Objective-C).
I think, problems 1, 3 (!), 4, 5 and to some extent also 2 could be
solved if the implementation was a bit more object-oriented. That is,
if you added a PPOmitParser that would dispatch from #parseOn: to some
other parsing method #parseOmittedOn: you wouldn't need all those
#ifTrue:ifFalse:.
> I pushed my solution to the petitparser repos. I didn't add full support for flatten.
Did you see #map: and #permutation:? Both allow you do the same in a
less invasive way:
parser := ($" asParser , $" asParser negate star flatten, $" asParser).
parser map: [ :begin :inner :end | inner ]
or
parser := ($" asParser , $" asParser negate star flatten, $" asParser).
parser permutation: #(2)
Additionally, did you see the experimental binding/capturing
functionality in PetitBeta? This kind of provides something much more
general and (I believe) much more powerful without the above
drawbacks. Bind-Capture allows you to bind certain parse results
anywhere down the tree to names and directly access them later on in a
capture block. It also deals with unpacking and reshuffling
collections automatically, check the tests for that.
Your example would look like:
parser := ($" asParser , ($" asParser negate star flatten bind:
#inner) , $" asParser).
parser capture: [ :inner | inner ]
Cheers,
Lukas
--
Lukas Renggli
www.lukas-renggli.ch
Hello ,
I started to work on a 'actAndOpen' mechanism.
The idea would be to allow glamour to encapsulate the action of opening a
new glamour browser (the use case i have in mind for now is to open a
GLMWizard).
The model store those sepecific actions (like actions , selectionActions and
now openBrowserActions and selectionOpenBrowserActions) , then each renderer
now how to deal with them.
What I did for now is to provide a similar interface than for other actions:
aBrowser actAndOpen: [ ... ] entitled: '..'.
The requirement is that the block return a browser.
For now selectionActAndOpen: works fine
Does this looks correct ? Am I taking the good direction ?
Hi,
Is anyone (Nicolas :)) interested in investigating how difficult would it be to have Java 7 support in VerveineJ?
Cheers,
Doru
--
www.tudorgirba.com
"Be rather willing to give than demanding to get."
Hello,
I'm looking to have the selection right-click menu working with
glamour-seaside (which is currently not implemented ?).
Does somoene already woked on this or have any suggestions about how to do
that ?
After looking a bit, maybe it is possible to reuse the scripts used for the
actions menu of a presentation (?)
The "optional" below crashes my Pharo 1.2.2 image, and user interrupt has no
effect...
categoryName := $- asParser negate plus flatten, ($- asParser, #any asParser
star flatten) optional star.
categoryName parse: 'SuperMe'.
Sean
--
View this message in context: http://forum.world.st/PetitParser-crash-tp3725129p3725129.html
Sent from the Moose mailing list archive at Nabble.com.
Hi,
I would like to release 4.6. We use it since quite a while now and it is stable. The main reason for the release is to provide users with the fixes related to Glamour and FAMIX.
Cheers,
Doru
--
www.tudorgirba.com
"If you interrupt the barber while he is cutting your hair,
you will end up with a messy haircut."
Status: Started
Owner: damien.c...(a)gmail.com
CC: tudor.gi...(a)gmail.com
Labels: Type-Defect Priority-Medium Component-Glamour Difficulty-Easy
New issue 688 by damien.c...(a)gmail.com: Trait browser #build3StackerBis
dynamic presentation does not work
http://code.google.com/p/moose-technology/issues/detail?id=688
I can't make the dynamic presentation in #build3StackerBis to work. Doru
asked for simple example with numbers to show the problem.
Hi,
The examples from the thesis of Philipp are out of date. The up-to-date documentation is in The Moose Book.
If you want to discuss Glamour, I would suggest to use the moose-dev(a)iam.unibe.ch mailing list - follow the registration from:
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Further examples can be found in the built-in example browser (also done in Glamour):
GLMBasicExamples open
Regarding your first question, the current way to integrate a Workspace is by using something like:
...
a text
forSmalltalk.
Cheers,
Doru
On 4 Aug 2011, at 16:56, Offray Vladimir Luna Cárdenas wrote:
> Hi all,
>
> Following with my idea of Tree like workspace I have started to see Glamour to find my way to the problem. After trying to install it on Pharo and getting some error message I tried the preinstalled version of Moose and followed the Moose Book example[1]. It worked well, and I like the flexibility of glamour to define browsers, but you loose some of the most important characteristic in the Workspace is interactivity (auto-completion, syntax highlighting and so on) So I have some questions:
>
> [1] http://www.themoosebook.org/book/internals/glamour/glimpse
>
> * ¿There is any way to make the details panel contain a Workspace?.
>
> * When I try the first example in the Bunge's Thesis tutorial:
>
> browser := TableLayoutBrowser new.
>
> I don't get full autocompletion on TableLayoutBrowser only until TableLayout. This is because this Class is not supported on Moose Glamour, another reason or Am I misunderstanding something else?
>
> Cheers,
>
> Offray
>
--
www.tudorgirba.com
"From an abstract enough point of view, any two things are similar."
Hi,
If you are a member of IEEE Computer Society you are now entitled to vote for the Chair of Technical Council on Software Engineering.
Here is my endorsement: Please vote for Hausi Müller.
The reasons:
- He has a software analysis background which, if nothing else, can serve the interest of our community, and
- He is a very nice person :)
If you want to vote, you can use the instructions below.
Cheers,
Doru
Begin forwarded message:
> Hausi A. Muller, PhD, PEng
> Professor, Department of Computer Science
> Associate Dean Research, Faculty of Engineering
> Department of Computer Science
> Faculty of Engineering
> University of Victoria
> P.O. Box 3055, STN CSC
> Victoria, BC V8W 3P6 Canada
> Voice: 1-250-472-5719
> Fax: 1-250-472-5708
> E-mail: hausi(a)cs.uvic.ca
> Homepage: http://webhome.cs.uvic.ca/~hausi/
> BSENG: http://www.bseng.uvic.ca
> Engineering: http://www.engr.uvic.ca
>
> =====================
> Dear IEEE Computer Society Technical Council on Software Engineering (TCSE) ExCom Members,
>
> The 2011 TCSE Chair and Member-At-Large election is now open. The Chair's term will run from October 1, 2011 through September 30, 2013.
>
> Polls close August 15, 2011, at 5 pm Pacific time.
>
> Before entering the poll, please read the following:
> Please take a few moments to review candidate Biosketches and Position Statements in advance of voting here:
> http://www.computer.org/portal/web/tandc/tcse
>
> To cast your vote, you will need your IEEE CS Member number--to obtain a misplaced number, please
> visit: https://sbwsweb.ieee.org/ecustomercme_enu/start.swe?SWECmd=Login&SWECM=S&SW…
>
> You may vote only one time.
>
> **Only CS Members can vote. **
>
> VOTE here:
> http://www.surveymonkey.com/s/XC6Z6QY
>
> If you have trouble voting, please contact T&C Sr. Program Specialist, Carrie Walsh (ccwalsh(a)computer.org).
>
> *To ensure your TC membership is valid and up to date, please log in to TECA and update your contact information
> and TC affiliation: (https://cima.computer.org/TECA_Login.htm - this requires an IEEE Web account,
> which is available free: http://www.ieee.org/go/create_web_account).
>
> Thank you for your participation in this election.
>
> Sincerely yours,
>
> Carrie
> Carrie Clark Walsh
> Sr. Program Specialist
> IEEE Computer Society
> 10662 Los Vaqueros Circle
> Los Alamitos, CA 90720
> Tel: 714/816-2118
> Fax: 714/821-4010
> URL: http://www.computer.org
>
> IEEE: Advancing Technology for Humanity
--
www.tudorgirba.com
"It's not how it is, it is how we see it."
Status: New
Owner: ----
CC: alexandr...(a)gmail.com
Labels: Type-Defect Priority-Medium Component-Mondrian Milestone-4.4
New issue 574 by tudor.gi...(a)gmail.com: Nodes with complex shapes do not
position the children nodes with complex shapes properly
http://code.google.com/p/moose-technology/issues/detail?id=574
Another issue related to complex shapes. Try the following code:
view shape umlClass.
view node: 'hello' forIt: [
view shape umlClass.
view nodes: (1 to: 5).
view verticalLineLayout
]
You will see that the children now move properly with the parent node, but
they are not positioned correctly. However, it works well with simple
shapes for the children.
A more complex example can be seen below:
view shape umlClass.
view node: 'hello' forIt: [
view shape umlClass.
view nodes: (1 to: 5) forEach: [:each |
view shape umlClass.
view nodes: (1 to: each ).
view verticalLineLayout ].
view verticalLineLayout
]
Hi
I've been using Glamour to create a browser for a project that I am working
on.
I have encountered a weird rendering issue when using
GLMCompositePresentation>>accordionArrangement.
The GLMPresentations that I want to display get cut off at the bottom of the
window. The image below shows the problem.
http://forum.world.st/file/n3707211/accordion.png
I have two GLMTextPresentations being displayed in the "Projecting" pane.
One of
them is called "Context Checking" and the other is "Definition". "Context
Checking" and "Definition" are displayed using
GLMCompositePresentation>>accordionArrangement. When I try to expand both of
them, the one at the bottom runs off the screen and it gets cut off. I would
have expected the renderer to space both GLMTextPresentations evenly in the
available vertical space and add scroll bars to them when both are expanded.
I am not sure which part of the code is causing the problem. I am not
intimately
familiar with how Glamour does its layout so any pointers to the cause or
solution to the problem would be appreciated.
A temporary fix that might work would be to set a minimal size for the
window. I
noticed that if the window is big enough i.e. half the screen then the text
does
not get cut off. How can I specify a minimal size for a GLMBrowser window?
Thanks!
--
Nick
--
View this message in context: http://forum.world.st/Glamour-tp3707211p3707211.html
Sent from the Moose mailing list archive at Nabble.com.
I have a grammar that is quite ambiguous. Ambiguities aren't solved easily because the grammar is quite complex and the task of resolving ambiguity is probably not possible. Ambiguities are supposed to be solved later after establishing some context in which it can be resolved.
The biggest source of parsing failures I have because in the alignment of the matching rules a short match often prevents a long match from being found. And I wonder if I can look for the longest match with petit parser. Combining parsers with / always finds the first matching and | does not find anything if more than one rule matches.
Any advize how to do this with petit?
Norbert