Skip to content
Snippets Groups Projects
Commit 54e3c0b0 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

option to save onelab db automatically after each run

parent b9a6e631
No related branches found
No related tags found
No related merge requests found
...@@ -536,8 +536,7 @@ void onelab_cb(Fl_Widget *w, void *data) ...@@ -536,8 +536,7 @@ void onelab_cb(Fl_Widget *w, void *data)
} while(action == "compute" && !FlGui::instance()->onelab->stop() && } while(action == "compute" && !FlGui::instance()->onelab->stop() &&
incrementLoops()); incrementLoops());
bool autoSaveDb = false; if(FlGui::instance()->onelab->saveAuto() && action == "compute"){
if(action == "compute" && autoSaveDb){
std::string s = SplitFileName(GModel::current()->getFileName())[0] + "onelab.db"; std::string s = SplitFileName(GModel::current()->getFileName())[0] + "onelab.db";
writeDb(s, true); writeDb(s, true);
} }
...@@ -613,14 +612,16 @@ onelabWindow::onelabWindow(int deltaFontSize) ...@@ -613,14 +612,16 @@ onelabWindow::onelabWindow(int deltaFontSize)
_gear->add("Reset database", 0, onelab_cb, (void*)"reset"); _gear->add("Reset database", 0, onelab_cb, (void*)"reset");
_gear->add("Save database...", 0, onelab_cb, (void*)"save"); _gear->add("Save database...", 0, onelab_cb, (void*)"save");
_gear->add("_Load database...", 0, onelab_cb, (void*)"load"); _gear->add("_Load database...", 0, onelab_cb, (void*)"load");
_gear->add("Save database automatically", 0, 0, 0, FL_MENU_TOGGLE);
((Fl_Menu_Item*)_gear->menu())[3].clear();
_gear->add("Remesh automatically", 0, 0, 0, FL_MENU_TOGGLE); _gear->add("Remesh automatically", 0, 0, 0, FL_MENU_TOGGLE);
((Fl_Menu_Item*)_gear->menu())[4].set();
_gear->add("Merge results automatically", 0, 0, 0, FL_MENU_TOGGLE); _gear->add("Merge results automatically", 0, 0, 0, FL_MENU_TOGGLE);
((Fl_Menu_Item*)_gear->menu())[5].set();
_gear->add("Hide new views", 0, 0, 0, FL_MENU_TOGGLE); _gear->add("Hide new views", 0, 0, 0, FL_MENU_TOGGLE);
((Fl_Menu_Item*)_gear->menu())[6].clear();
_gear->add("_Always show last step", 0, 0, 0, FL_MENU_TOGGLE); _gear->add("_Always show last step", 0, 0, 0, FL_MENU_TOGGLE);
((Fl_Menu_Item*)_gear->menu())[3].set(); ((Fl_Menu_Item*)_gear->menu())[7].set();
((Fl_Menu_Item*)_gear->menu())[4].set();
((Fl_Menu_Item*)_gear->menu())[5].clear();
((Fl_Menu_Item*)_gear->menu())[6].set();
_gearFrozenMenuSize = _gear->menu()->size(); _gearFrozenMenuSize = _gear->menu()->size();
Fl_Box *resbox = new Fl_Box(WB, WB, Fl_Box *resbox = new Fl_Box(WB, WB,
...@@ -636,10 +637,11 @@ onelabWindow::onelabWindow(int deltaFontSize) ...@@ -636,10 +637,11 @@ onelabWindow::onelabWindow(int deltaFontSize)
FL_NORMAL_SIZE += _deltaFontSize; FL_NORMAL_SIZE += _deltaFontSize;
} }
int onelabWindow::meshAuto(){ return _gear->menu()[3].value(); } int onelabWindow::saveAuto(){ return _gear->menu()[3].value(); }
int onelabWindow::mergeAuto(){ return _gear->menu()[4].value(); } int onelabWindow::meshAuto(){ return _gear->menu()[4].value(); }
int onelabWindow::hideNewViews(){ return _gear->menu()[5].value(); } int onelabWindow::mergeAuto(){ return _gear->menu()[5].value(); }
int onelabWindow::showLastStep(){ return _gear->menu()[6].value(); } int onelabWindow::hideNewViews(){ return _gear->menu()[6].value(); }
int onelabWindow::showLastStep(){ return _gear->menu()[7].value(); }
static bool getFlColor(const std::string &str, Fl_Color &c) static bool getFlColor(const std::string &str, Fl_Color &c)
{ {
...@@ -1066,19 +1068,19 @@ void onelabWindow::setButtonMode(const std::string &butt0, const std::string &bu ...@@ -1066,19 +1068,19 @@ void onelabWindow::setButtonMode(const std::string &butt0, const std::string &bu
_butt[1]->label("Stop"); _butt[1]->label("Stop");
_butt[1]->callback(onelab_cb, (void*)"stop"); _butt[1]->callback(onelab_cb, (void*)"stop");
for(int i = 0; i < _gear->menu()->size(); i++) for(int i = 0; i < _gear->menu()->size(); i++)
if(i < 1 || i > 6) ((Fl_Menu_Item*)_gear->menu())[i].deactivate(); if(i < 3 || i > 7) ((Fl_Menu_Item*)_gear->menu())[i].deactivate();
} }
else if(butt1 == "kill"){ else if(butt1 == "kill"){
_butt[1]->activate(); _butt[1]->activate();
_butt[1]->label("Kill"); _butt[1]->label("Kill");
_butt[1]->callback(onelab_cb, (void*)"kill"); _butt[1]->callback(onelab_cb, (void*)"kill");
for(int i = 0; i < _gear->menu()->size(); i++) for(int i = 0; i < _gear->menu()->size(); i++)
if(i < 1 || i > 6) ((Fl_Menu_Item*)_gear->menu())[i].deactivate(); if(i < 3 || i > 7) ((Fl_Menu_Item*)_gear->menu())[i].deactivate();
} }
else{ else{
_butt[1]->deactivate(); _butt[1]->deactivate();
for(int i = 0; i < _gear->menu()->size(); i++) for(int i = 0; i < _gear->menu()->size(); i++)
if(i < 1 || i > 6) ((Fl_Menu_Item*)_gear->menu())[i].deactivate(); if(i < 3 || i > 7) ((Fl_Menu_Item*)_gear->menu())[i].deactivate();
} }
} }
......
...@@ -51,6 +51,7 @@ class onelabWindow{ ...@@ -51,6 +51,7 @@ class onelabWindow{
bool isBusy(); bool isBusy();
void show(){ _win->show(); } void show(){ _win->show(); }
int shown(){ return _win->shown(); } int shown(){ return _win->shown(); }
int saveAuto();
int meshAuto(); int meshAuto();
int mergeAuto(); int mergeAuto();
int hideNewViews(); int hideNewViews();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment