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."