diff --git a/Fltk/onelabGroup.cpp b/Fltk/onelabGroup.cpp index 3a622abd9d2a156654463007fa011ca0a6fa8541..d5110e28a06bccbaad1fc102f3c0689a56915435 100644 --- a/Fltk/onelabGroup.cpp +++ b/Fltk/onelabGroup.cpp @@ -807,7 +807,7 @@ void onelab_cb(Fl_Widget *w, void *data) } std::string fileName = "onelab.db"; - // add user defined tag, if any + // add user defined tag, if any std::vector<onelab::string> ps; onelab::server::instance()->get(ps,"0Metamodel/9Tag"); if(ps.size()){ @@ -1314,6 +1314,15 @@ static void setGmshOption(T &n) FlGui::instance()->rebuildTree(false); return; } + if(opt == "Reset"){ // reset db + models except current one + resetDb(false); + for(int i = PView::list.size() - 1; i >= 0; i--) + delete PView::list[i]; + for(int i = GModel::list.size() - 1; i >= 0; i--) + if(GModel::list[i] != GModel::current()) delete GModel::list[i]; + FlGui::instance()->rebuildTree(false); + return; + } std::string::size_type dot = opt.find('.'); if(dot == std::string::npos) return; GmshSetOption(opt.substr(0, dot), opt.substr(dot + 1), n.getValue());