1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
function res=m2sci_gui()
// Copyright INRIA
// Scilab Project - V. Couvert
// Call m2sci.tcl to get file or path to convert using M2SCI and user defined options
if ~with_tk() then
error('Tcl/Tk interface not defined')
end
// Default Options and Values
TCL_SetVar("ePathToConvert",getcwd());
TCL_SetVar("eFileToConvert","<enter a file name>");
TCL_SetVar("eResDirName",getcwd());
TCL_SetVar("rRecMode","NO");
TCL_SetVar("rOnlyDouble","NO");
TCL_SetVar("rVerbMode","3");
TCL_SetVar("rPrettyPrint","NO");
TCL_SetVar("rFlagWhatToConvert","0");
TCL_SetVar("rToDo","0");
TCL_SetVar("rWindowKilled","0");
TCL_EvalFile(SCI+"/tcl/m2sci.tcl");
rWindowKilled=TCL_GetVar("rWindowKilled");
rToDo=TCL_GetVar("rToDo");
while rToDo=="0" & rWindowKilled=="0"
rWindowKilled=TCL_GetVar("rWindowKilled");
rToDo=TCL_GetVar("rToDo");
sleep(1);
end
if rToDo=="1" then
DirName=TCL_GetVar("ePathToConvert");
FileName=TCL_GetVar("eFileToConvert");
ResDirName=TCL_GetVar("eResDirName");
RecMode=TCL_GetVar("rRecMode");
OnlyDouble=TCL_GetVar("rOnlyDouble");
VerbMode=TCL_GetVar("rVerbMode");
PrettyPrint=TCL_GetVar("rPrettyPrint");
FlagWhatToConvert=TCL_GetVar("rFlagWhatToConvert");
// Modify Tcl/Tk values
if RecMode=="YES" then
RecMode=%T
else
RecMode=%F
end
if OnlyDouble=="YES" then
OnlyDouble=%T
else
OnlyDouble=%F
end
if PrettyPrint=="YES" then
PrettyPrint=%T
else
PrettyPrint=%F
end
VerbMode=evstr(VerbMode);
if FlagWhatToConvert=="0" then // Convert a whole directory
translatepaths(DirName,ResDirName);
res=0
else
res=mfile2sci(FileName,ResDirName,RecMode,OnlyDouble,VerbMode,PrettyPrint);
end
elseif rToDo=="-1" then
// Cancel button
res=0
else
// Window killed
res=0
end
endfunction
|