Get a tcl/tk variable value
value=TCL_GetVar(Varname [,interp])
:varname character string. Contains the name of the tcl/tk variable. : :interp optional character string parameter. Name of the slave tcl
interpreter in which the operation has to be performed. If not provided, it defaults to the main tcl interpreter created by Scilab.
:
When tcl/tk support is enabled in Scilab, this routine can be used to retreive the value of a tcl/tk variable.
More information about Tcl/Tk: http://www.tcl.tk/doc/
`TCL_EvalStr`_("toplevel .tst1");
// creates a toplevel TK window.
`TCL_EvalStr`_("entry .tst1.e -textvariable tvar");
// create an editable entry
`TCL_EvalStr`_("set tvar foobar");
// set the entry value
`TCL_EvalStr`_("pack .tst1.e");
// pack the entry widget. It appears on the screen.
text=TCL_GetVar("tvar")
// retrieve the variable value
// change the entry text and repeat the last command ...
//delete the toplevel TK window.
`TCL_EvalStr`_("destroy .tst1")
//----------------------------------------------------
a=["A","B","C";"D","E","F"];
`TCL_SetVar`_("A",a)
AfromTCL=TCL_GetVar("A")
//----------------------------------------------------
b=[6,4,1;2,3,5];
`TCL_SetVar`_("B",b)
BfromTCL=TCL_GetVar("B")
//----------------------------------------------------
`TCL_SetVar`_("StringTCL","string")
StringFromTCL=TCL_GetVar("StringTCL")
//----------------------------------------------------
`TCL_SetVar`_("ScalarTCL",1.22)
ScalarFromTCL=TCL_GetVar("ScalarTCL")
//----------------------------------------------------
// Examples with a slave interpreter
//----------------------------------------------------
a=['AA','BB','CC';'DD','EE','FF'];
`TCL_CreateSlave`_('SlaveInterp')
`TCL_SetVar`_("A_slave",a,'SlaveInterp')
AfromTCL_slave=TCL_GetVar('A_slave','SlaveInterp')
`TCL_DeleteInterp`_('SlaveInterp')
//----------------------------------------------------
b=[66,44,11;22,33,55];
`TCL_CreateSlave`_('SlaveInterp1')
`TCL_SetVar`_("B_slave",b,'SlaveInterp1')
BfromTCL_slave=TCL_GetVar('B_slave','SlaveInterp1')
`TCL_DeleteInterp`_('SlaveInterp1')
//----------------------------------------------------
`TCL_CreateSlave`_('SlaveInterp2')
`TCL_SetVar`_("StringTCL_slave","string in slave interpreter",'SlaveInterp2')
StringFromTCL_slave=TCL_GetVar("StringTCL_slave",'SlaveInterp2')
`TCL_DeleteInterp`_('SlaveInterp2')
//----------------------------------------------------
`TCL_CreateSlave`_('SlaveInterp3')
`TCL_SetVar`_("ScalarTCL_slave",1.22,'SlaveInterp3')
ScalarFromTCL_slave=TCL_GetVar("ScalarTCL_slave",'SlaveInterp3')
`TCL_DeleteInterp`_('SlaveInterp3')