diff --git a/Common/Context.h b/Common/Context.h index 6b392906bf1c181193e0ec6800094cd970403db6..c507956b6c3d951854ff299feebc573a7d67962f 100644 --- a/Common/Context.h +++ b/Common/Context.h @@ -242,7 +242,7 @@ class CTX { std::string socketName; std::string name[NUM_SOLVERS], executable[NUM_SOLVERS], remoteLogin[NUM_SOLVERS]; int autoSaveDatabase, autoArchiveOutputFiles, autoMesh, autoMergeFile; - int autoHideNewViews, autoShowLastStep, autoCheck, showInvisibleParameters; + int autoShowViews, autoShowLastStep, autoCheck, showInvisibleParameters; }solver; // print options struct{ diff --git a/Common/DefaultOptions.h b/Common/DefaultOptions.h index 51a8df661afe56397a5af840de5100b0ac6f51c7..4fd4a7b80f9162a0f464aa4e7dc71a82e8cbd992 100644 --- a/Common/DefaultOptions.h +++ b/Common/DefaultOptions.h @@ -1213,8 +1213,8 @@ StringXNumber SolverOptions_Number[] = { "Automatically mesh if necesssary" }, { F|O, "AutoMergeFile" , opt_solver_auto_merge_file , 1. , "Automatically merge result files" }, - { F|O, "AutoHideNewViews" , opt_solver_auto_hide_new_views , 0. , - "Automcatically hide newly merged results" }, + { F|O, "AutoShowViews" , opt_solver_auto_show_views , 2. , + "Automcatically show newly merged results (0: none; 1: all; 2: last one)" }, { F|O, "AutoShowLastStep" , opt_solver_auto_show_last_step , 1. , "Automatically show the last time step in newly merged results" }, diff --git a/Common/Gmsh.cpp b/Common/Gmsh.cpp index de1d912590ae446a2f346d61d94d9b2cefd352c9..3d244860b02acfd6c0c3df87c371cfce8a2f8f92 100644 --- a/Common/Gmsh.cpp +++ b/Common/Gmsh.cpp @@ -168,8 +168,8 @@ int GmshMergeFile(const std::string &fileName) int GmshMergePostProcessingFile(const std::string &fileName) { - return MergePostProcessingFile(fileName, CTX::instance()->solver.autoShowLastStep, - CTX::instance()->solver.autoHideNewViews, true); + return MergePostProcessingFile(fileName, CTX::instance()->solver.autoShowViews, + CTX::instance()->solver.autoShowLastStep, true); } int GmshWriteFile(const std::string &fileName) diff --git a/Common/GmshMessage.cpp b/Common/GmshMessage.cpp index b2de8be27b217063bc8183bf5e7b8ae499cdc559..3b9650048649a07b35887abe2e3a3fb4fa1d849c 100644 --- a/Common/GmshMessage.cpp +++ b/Common/GmshMessage.cpp @@ -751,8 +751,8 @@ public: void sendMergeFileRequest(const std::string &name) { if(name.find(".geo") != std::string::npos){ - MergePostProcessingFile(name, CTX::instance()->solver.autoShowLastStep, - CTX::instance()->solver.autoHideNewViews, true); + MergePostProcessingFile(name, CTX::instance()->solver.autoShowViews, + CTX::instance()->solver.autoShowLastStep, true); GModel::current()->setFileName(name); } else if((name.find(".opt") != std::string::npos)){ @@ -762,8 +762,8 @@ public: MergeFile(name); } else - MergePostProcessingFile(name, CTX::instance()->solver.autoShowLastStep, - CTX::instance()->solver.autoHideNewViews, true); + MergePostProcessingFile(name, CTX::instance()->solver.autoShowViews, + CTX::instance()->solver.autoShowLastStep, true); } void sendInfo(const std::string &msg){ Msg::Info("%s", msg.c_str()); } void sendWarning(const std::string &msg){ Msg::Warning("%s", msg.c_str()); } diff --git a/Common/OpenFile.cpp b/Common/OpenFile.cpp index 1044646a4dd78d07896fd71f305050f9e758e26a..b4e0bc686a1b61495d0cda8375d37a812a3d18de 100644 --- a/Common/OpenFile.cpp +++ b/Common/OpenFile.cpp @@ -511,8 +511,8 @@ int MergeFile(const std::string &fileName, bool warnIfMissing, bool setWindowTit return status; } -int MergePostProcessingFile(const std::string &fileName, bool showLastStep, - bool hideNewViews, bool warnIfMissing) +int MergePostProcessingFile(const std::string &fileName, int showViews, + bool showLastStep, bool warnIfMissing) { #if defined(HAVE_POST) // check if there is a mesh in the file @@ -560,13 +560,13 @@ int MergePostProcessingFile(const std::string &fileName, bool showLastStep, old->setVisibility(1); // hide everything except the onelab X-Y graphs - if(hideNewViews){ + if(showViews == 0){ for(unsigned int i = 0; i < PView::list.size(); i++){ if(PView::list[i]->getData()->getFileName().substr(0, 6) != "ONELAB") PView::list[i]->getOptions()->visible = 0; } } - else if(n < PView::list.size()){ + else if(showViews == 2 && n < PView::list.size()){ // if we created new views, assume we only want to see those (and the // onelab X-Y graphs) for(unsigned int i = 0; i < n; i++){ diff --git a/Common/OpenFile.h b/Common/OpenFile.h index c27007cf5f5b301870cd0468457c311cfc983478..0812c73782e73393d3b87992dd0ecedd0db2a0b2 100644 --- a/Common/OpenFile.h +++ b/Common/OpenFile.h @@ -14,8 +14,8 @@ void OpenProject(const std::string &filename, bool setWindowTitle=true); void OpenProjectMacFinder(const char *fileName); int MergeFile(const std::string &fileName, bool warnIfMissing=false, bool setWindowTitle=true, bool setBoundingBox=true); -int MergePostProcessingFile(const std::string &fileName, bool showLastStep=false, - bool hideNewViews=false, bool warnIfMissing=false); +int MergePostProcessingFile(const std::string &fileName, int showViews=2, + bool showLastStep=false, bool warnIfMissing=false); void ClearProject(); void SetBoundingBox(double xmin, double xmax, double ymin, double ymax, diff --git a/Common/Options.cpp b/Common/Options.cpp index 22b0bbd544cb89a77def707049aa9f788913679a..f86cf3b5e9b6ebbc0611517a19c30923e5584701 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -6211,11 +6211,11 @@ double opt_solver_auto_merge_file(OPT_ARGS_NUM) return CTX::instance()->solver.autoMergeFile; } -double opt_solver_auto_hide_new_views(OPT_ARGS_NUM) +double opt_solver_auto_show_views(OPT_ARGS_NUM) { if(action & GMSH_SET) - CTX::instance()->solver.autoHideNewViews = (int)val; - return CTX::instance()->solver.autoHideNewViews; + CTX::instance()->solver.autoShowViews = (int)val; + return CTX::instance()->solver.autoShowViews; } double opt_solver_auto_show_last_step(OPT_ARGS_NUM) diff --git a/Common/Options.h b/Common/Options.h index a18a83e5fbd3bc0b79003cfc0d0ee525a2b8e306..7e58906fbe2483559942736b39a9fe3d58df441d 100644 --- a/Common/Options.h +++ b/Common/Options.h @@ -512,7 +512,7 @@ double opt_solver_auto_archive_output_files(OPT_ARGS_NUM); double opt_solver_auto_check(OPT_ARGS_NUM); double opt_solver_auto_mesh(OPT_ARGS_NUM); double opt_solver_auto_merge_file(OPT_ARGS_NUM); -double opt_solver_auto_hide_new_views(OPT_ARGS_NUM); +double opt_solver_auto_show_views(OPT_ARGS_NUM); double opt_solver_auto_show_last_step(OPT_ARGS_NUM); double opt_solver_show_invisible_parameters(OPT_ARGS_NUM); double opt_post_horizontal_scales(OPT_ARGS_NUM); diff --git a/Fltk/onelabGroup.cpp b/Fltk/onelabGroup.cpp index d5110e28a06bccbaad1fc102f3c0689a56915435..add4729741038e3e4d677ecdb331aa4fd482c917 100644 --- a/Fltk/onelabGroup.cpp +++ b/Fltk/onelabGroup.cpp @@ -342,8 +342,8 @@ bool gmshLocalNetworkClient::receiveMessage(gmshLocalNetworkClient *master) case GmshSocket::GMSH_MERGE_FILE: if(CTX::instance()->solver.autoMergeFile){ unsigned int n = PView::list.size(); - MergePostProcessingFile(message, CTX::instance()->solver.autoShowLastStep, - CTX::instance()->solver.autoHideNewViews, true); + MergePostProcessingFile(message, CTX::instance()->solver.autoShowViews, + CTX::instance()->solver.autoShowLastStep, true); drawContext::global()->draw(); if(FlGui::available() && n != PView::list.size()){ FlGui::instance()->rebuildTree(true); @@ -939,8 +939,8 @@ void onelab_option_cb(Fl_Widget *w, void *data) CTX::instance()->solver.autoMesh = val; else if(what == "merge") CTX::instance()->solver.autoMergeFile = val; - else if(what == "hide") - CTX::instance()->solver.autoHideNewViews = val; + else if(what == "show") + CTX::instance()->solver.autoShowViews = val ? 2 : 0; else if(what == "step") CTX::instance()->solver.autoShowLastStep = val; else if(what == "invisible"){ @@ -1158,7 +1158,7 @@ onelabGroup::onelabGroup(int x, int y, int w, int h, const char *l) FL_MENU_TOGGLE); _gear->add("Merge results automatically", 0, onelab_option_cb, (void*)"merge", FL_MENU_TOGGLE); - _gear->add("Hide new views", 0, onelab_option_cb, (void*)"hide", + _gear->add("Show new views", 0, onelab_option_cb, (void*)"show", FL_MENU_TOGGLE); _gear->add("Always show last step", 0, onelab_option_cb, (void*)"step", FL_MENU_TOGGLE); @@ -1933,7 +1933,7 @@ void onelabGroup::updateGearMenu() CTX::instance()->solver.autoCheck, CTX::instance()->solver.autoMesh, CTX::instance()->solver.autoMergeFile, - CTX::instance()->solver.autoHideNewViews, + CTX::instance()->solver.autoShowViews, CTX::instance()->solver.autoShowLastStep, CTX::instance()->solver.showInvisibleParameters}; for(int i = 0; i < 8; i++){