1
0
Fork 0

Remove the GUI popup from the screen capture C++ code (a request via

IRC wanted this to be scritable) and add it back (as a tip popup) via
a little nasal in the keyboard handler.  Also put the synthesis of
property nodes back into fgcommand(), because I got cold feet.
This commit is contained in:
andy 2007-06-07 16:57:59 +00:00
parent 5a73a46cd0
commit 99885791e9
2 changed files with 10 additions and 14 deletions

View file

@ -506,7 +506,6 @@ void fgHiResDumpWrapper ( puObject *obj ) {
void fgDumpSnapShot () { void fgDumpSnapShot () {
bool show_pu_cursor = false; bool show_pu_cursor = false;
char *filename = new char [24]; char *filename = new char [24];
string message;
static int count = 1; static int count = 1;
static const SGPropertyNode *master_freeze static const SGPropertyNode *master_freeze
@ -543,20 +542,13 @@ void fgDumpSnapShot () {
fclose(fp); fclose(fp);
} }
if ( sg_glDumpWindow( filename, int result = sg_glDumpWindow(filename,
fgGetInt("/sim/startup/xsize"), fgGetInt("/sim/startup/xsize"),
fgGetInt("/sim/startup/ysize")) ) { fgGetInt("/sim/startup/ysize"));
message = "Snapshot saved to \""; fgSetString("/sim/last-screenshot", result ? filename : "");
message += filename;
message += "\".";
} else {
message = "Failed to save to \"";
message += filename;
message += "\".";
}
fgSetBool("/sim/signals/screenshot", false); fgSetBool("/sim/signals/screenshot", false);
mkDialog (message.c_str()); //mkDialog (message.c_str());
delete [] filename; delete [] filename;

View file

@ -256,9 +256,13 @@ static naRef f_fgcommand(naContext c, naRef me, int argc, naRef* args)
naRef props = argc > 1 ? args[1] : naNil(); naRef props = argc > 1 ? args[1] : naNil();
if(!naIsString(cmd) || (!naIsNil(props) && !naIsGhost(props))) if(!naIsString(cmd) || (!naIsNil(props) && !naIsGhost(props)))
naRuntimeError(c, "bad arguments to fgcommand()"); naRuntimeError(c, "bad arguments to fgcommand()");
SGPropertyNode_ptr* node = NULL; SGPropertyNode_ptr tmp, *node;
if(!naIsNil(props)) if(!naIsNil(props))
node = (SGPropertyNode_ptr*)naGhost_ptr(props); node = (SGPropertyNode_ptr*)naGhost_ptr(props);
else {
tmp = new SGPropertyNode();
node = &tmp;
}
return naNum(globals->get_commands()->execute(naStr_data(cmd), *node)); return naNum(globals->get_commands()->execute(naStr_data(cmd), *node));
} }