setting command line args via Tcl

This commit is contained in:
Joachim Schöberl 2019-08-04 18:59:01 +02:00
parent b1ea81b401
commit dace165496

View File

@ -1263,6 +1263,28 @@ namespace netgen
int Ng_SetCommandLineParameter (ClientData clientData,
Tcl_Interp * interp,
int argc, tcl_const char *argv[])
{
if (argc != 2)
{
Tcl_SetResult (interp, (char*)"Ng_SetCommandLineParameter needs 1 parameter",
TCL_STATIC);
return TCL_ERROR;
}
if (argv[1][0] == '-')
parameters.SetCommandLineFlag (argv[1]);
else
{
if (strstr(argv[1], ".py"))
parameters.SetFlag ("py", argv[1]);
else
parameters.SetFlag ("geofile", argv[1]);
}
return TCL_OK;
}
int Ng_GetCommandLineParameter (ClientData clientData, int Ng_GetCommandLineParameter (ClientData clientData,
@ -3032,6 +3054,11 @@ void PlayAnimFile(const char* name, int speed, int maxcnt)
(ClientData)NULL, (ClientData)NULL,
(Tcl_CmdDeleteProc*) NULL); (Tcl_CmdDeleteProc*) NULL);
Tcl_CreateCommand (interp, "Ng_SetCommandLineParameter",
Ng_SetCommandLineParameter,
(ClientData)NULL,
(Tcl_CmdDeleteProc*) NULL);
Tcl_CreateCommand (interp, "Ng_GetCommandLineParameter", Tcl_CreateCommand (interp, "Ng_GetCommandLineParameter",
Ng_GetCommandLineParameter, Ng_GetCommandLineParameter,
(ClientData)NULL, (ClientData)NULL,