Hi Michal,
Ok, you want the canvas to display a choice parameter like
order: {7, 8, 9}
instead of
order: 7
One issue is that {7, 8, 9} is an array of three elements in the Ptolemy
expression language.
There is ptolemy.data.expr.ChoiceParameter, which would be a start.
However, that parameter has only one constructor, and that constructor
requires that a class be added. So, you would need to add a two
argument constructor and then a way to read in an array and use that as
its choices. So, perhaps ChoiceStyle is better.
The next step would be to modify how the canvas shows the parameter.
Probably the best thing would be to add a new type to the type lattice,
which was a enumeration type. This would be quite a bit of work.
Another idea would be find where the canvas shows the parameter and hack
something in to show the choices if the parameter is a ChoiceParameter.
ptolemy.actor.vergil.icon.ValueIcon is where the parameters are
displayed on the canvas.
The code calls getExpression(), which would return the value of the
choice, which would be 7 in this case.
The code would need to be hacked to print something different for the
ChoiceParameter or ChoiceStyle.
_Christopher
On 9/24/14 12:57 PM, Michal Owsiak wrote:
Hello Christopher,
I may be confused here, but doesn't ChoiceStyle do this?
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII8.0/ptII/doc/codeDoc/ptolemy/actor/gui/style/ChoiceStyle.html
(BTW - About dynamic comboboxes, see:
https://lists.eecs.berkeley.edu/sympa/arc/ptolemy-hackers/2008-07/msg00010.html)
This is something I am looking for, I will investigate it further!
Thanks for sharing this one.
$PTII/bin/vergil
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII8.0/ptII/doc/codeDoc/ptolemy/actor/gui/style/ChoiceStyle.html
uses it in the AudioCapture actor:
When it comes to your sample file. In your png file, take a look at
"orred" parameter on the right to SDF director. This is exactly the
place I want to have values {7, 8, 9 } instead of just 7.
And I want to make sure that user will be able to choose from
predefined list instead of being forced to type the value.
Cheers
Michal
SoundSpectrum.xml contains:
<entity name="AudioCapture"
class="ptolemy.actor.lib.javasound.AudioCapture">
<property name="sampleRate"
class="ptolemy.actor.parameters.SharedParameter" value="8000">
<property name="style"
class="ptolemy.actor.gui.style.ChoiceStyle">
<property name="8000"
class="ptolemy.kernel.util.StringAttribute" value="8000">
</property>
<property name="11025"
class="ptolemy.kernel.util.StringAttribute" value="11025">
</property>
<property name="22050"
class="ptolemy.kernel.util.StringAttribute" value="22050">
</property>
<property name="44100"
class="ptolemy.kernel.util.StringAttribute" value="44100">
</property>
<property name="48000"
class="ptolemy.kernel.util.StringAttribute" value="48000">
</property>
</property>
</property>
The way this appears in the model is that
$PTII/ptolemy/actor/lib/javasound/javasound.xml has similar code so
that in
Vergil, when the actor is dragged in, the choices appear.
I'm not sure how this would work in Kepler.
_Christopher
On 9/24/14 11:36 AM, Ben Leinfelder wrote:
Hi Michal,
For use at runtime, you can present a combobox dialog that prompts
for a selection and then outputs the selected value. Take a look at
the Python examples distributed with Kepler to see if this will be
useful for you.
-ben
On Sep 24, 2014, at 11:28 AM, Michal
Owsiak<michal.ows...@man.poznan.pl> wrote:
Hello Kepler team,
I am looking for something that resembles combo box inside workflow.
The idea here is that I define the parameter with values: {"a",
"b", "c" } and then, I choose from one of these by right-click or
click.
Question here is. Do we have something like this in Kepler.
Our approach, now, follows:
a = "some value"
b = "some value b"
c = "some completely different value"
actual_parameter = a|b|c
This way, we can determine the value of the parameter while still
making everything pretty much consistent.
However, this requires to edit the value and requires numerous
parameters on canvas. If you have few of them with lots of options
they can consume most of the workflow canvas.
So, question is: do we have some sort of combo box as parameter
inside Kepler.
Thanks for the info
Michal
--
Michal Owsiak<michal.ows...@man.poznan.pl>
Institute of Bioorganic Chemistry PAS
Poznan Supercomputing and Networking Center
Noskowskiego 12/14, 61-704 Poznan, POLAND
Phone: 00 48 61 858 21 81
http://www.man.poznan.pl
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
--
Christopher Brooks, PMP University of California
Academic Program Manager & Software Engineer US Mail: 337 Cory Hall
CHESS/iCyPhy/Ptolemy/TerraSwarm Berkeley, CA 94720-1774
c...@eecs.berkeley.edu, 707.332.0670 (Office: 545Q Cory)
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users
--
Christopher Brooks, PMP University of California
Academic Program Manager & Software Engineer US Mail: 337 Cory Hall
CHESS/iCyPhy/Ptolemy/TerraSwarm Berkeley, CA 94720-1774
c...@eecs.berkeley.edu, 707.332.0670 (Office: 545Q Cory)
_______________________________________________
Kepler-users mailing list
Kepler-users@kepler-project.org
http://lists.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-users