4) I will also look into this. My problem is the steep learning curve.
If you look at the Scilab tutorials you have the good-old Openeering
LHY_Tutorial - it's incredibly complicated and long. Is LHY_Tutorial
using the Model-Viewer-Controller approach? - Maybe the
Model-Viewer-Controller could be presented in a _simple_ tutorial - is
it possible?
Hmm, that would be a good idea.
I'll see whether I can put something together.
The thing is, MVC approach looks rather silly and overengineered on a small
example.
I have not tried to follow a MWC approach, but here is my attempt at making a
really simple GUI to just show the basics (see below).
It take numbers from two different types of uicontrols (a slider and an edit)
and display the sum in a text uicontrol.
To keep things simple, I positioned and sized the uicontrols manually instead
of using a gridbag.
I also tried to use the fancy syntax for get() and set() that do not require
calling findobj(), as suggested by Samuel.
Hope it helps,
Antoine
f=figure();
/* ---------------- First number from slider ---------------- */
//values
nmin=-5;
nmax=10;
nini=7;
nsmallstep=1;
nsbigstep=2;
//slider position and size
x=10;
y=20;
w=100;
h=25;
//slider uicontrol creation in figure f
hslider=uicontrol(f, ...
"style", "slider", ...
"tag", "slider1", ...
"backgroundcolor", [1 1 1], ...
"position", [x y w h], ...
"value", nini, ...
"min", nmin, ...
"max", nmax, ...
"sliderstep", [nsmallstep, nsbigstep], ...
"callback", "update_values");
/* ------------- Second number from an editable text ------------- */
// initial value
editini="3.14";
//edit position and size
x2=x;
y2=y+h+5;
w2=w;
h2=h;
//edit uicontrol creation in figure f
hedit=uicontrol(f, ...
"style", "edit", ...
"tag", "edit2", ...
"backgroundcolor", [1 1 1], ...
"position", [x2 y2 w2 h2], ...
"string", editini, ...
"callback", "update_values");
/* ------------- Sum displayed in a text uicontrol ------------- */
// initial value
textini="Nothing"
//edit position and size
x3=x+w+5;
y3=y;
w3=w;
h3=2*h+5;
//slider uicontrol creation
htext=uicontrol(f, ...
"style", "text", ...
"tag", "text3", ...
"backgroundcolor", [1 1 1], ...
"position", [x3 y3 w3 h3], ...
"string", textini);
/* -------- callback function for slider and edit uicontrols -------- */
//Whenever user interacts with the slider or the edit uicontrols
// show the sum of both numbers in the text field
function update_values()
//temporarily deactivate the callback (don't want callback calls to stack
up while processing the current one
set(gcbo,"callback_type",-1);
/*
Using the unique tag chosen at the creation time of the uicontrols
to set/get the uicontrol properties
*/
//get both numbers from the slider and the edit uicontrols
number1=get("slider1", "value");
string2=get("edit2", "string");
//do your maths & conversion
string3=string(number1+evstr(string2));
//change the string displayed in the text uicontrol
set("text3", "string", string3);
//reactivate callback
set(gcbo,"callback_type",0);
endfunction
_______________________________________________
users mailing list
users@lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users