diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp index 850fb6efba5d1db4fc907c836cc7d0853c776efd..aa626f229140de60c43205beca5193b9c259c8ba 100644 --- a/Fltk/Callbacks.cpp +++ b/Fltk/Callbacks.cpp @@ -1,4 +1,4 @@ -// $Id: Callbacks.cpp,v 1.69 2001-07-31 12:52:41 geuzaine Exp $ +// $Id: Callbacks.cpp,v 1.70 2001-07-31 14:06:16 geuzaine Exp $ #include <sys/types.h> #include <signal.h> @@ -1448,6 +1448,16 @@ void view_reload_all_cb(CALLBACK_ARGS) { Draw(); } +void view_reload_visible_cb(CALLBACK_ARGS) { + if(!Post_ViewList) return; + RELOAD_ALL_VIEWS = 1; + for(int i = 0 ; i<List_Nbr(Post_ViewList) ; i++) + if(opt_view_visible(i, GMSH_GET, 0)) + view_reload_cb(NULL, (void *)i); + RELOAD_ALL_VIEWS = 0; + Draw(); +} + void view_reload_cb(CALLBACK_ARGS){ Post_View tmp ; char filename[NAME_STR_L]; @@ -1484,6 +1494,17 @@ void view_remove_all_cb(CALLBACK_ARGS) { Draw(); } +void view_remove_visible_cb(CALLBACK_ARGS) { + int i; + if(!Post_ViewList) return; + REMOVE_ALL_VIEWS = 1; + for(i=List_Nbr(Post_ViewList)-1 ; i>=0 ; i--) + if(opt_view_visible(i, GMSH_GET, 0)) + view_remove_cb(NULL, (void*)i); + REMOVE_ALL_VIEWS = 0; + Draw(); +} + void view_remove_cb(CALLBACK_ARGS){ int i, play=0; diff --git a/Fltk/Callbacks.h b/Fltk/Callbacks.h index 53c6c1a2ed10bf583701712b1146377a3e57a3dd..60a6164f9900b41b3324dfdf63f4162a206ea0c9 100644 --- a/Fltk/Callbacks.h +++ b/Fltk/Callbacks.h @@ -207,8 +207,10 @@ void getdp_ok_cb(CALLBACK_ARGS); void view_toggle_cb(CALLBACK_ARGS) ; void view_reload_cb(CALLBACK_ARGS) ; void view_reload_all_cb(CALLBACK_ARGS) ; +void view_reload_visible_cb(CALLBACK_ARGS) ; void view_remove_cb(CALLBACK_ARGS) ; void view_remove_all_cb(CALLBACK_ARGS) ; +void view_remove_visible_cb(CALLBACK_ARGS) ; void view_save_ascii_cb(CALLBACK_ARGS) ; void view_save_binary_cb(CALLBACK_ARGS) ; void view_duplicate_cb(CALLBACK_ARGS) ; diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp index 0139f9094f5ade9d17f085636a353e7afc699044..56f22c1c70f15de893794a5788e69baf4c14c5f6 100644 --- a/Fltk/GUI.cpp +++ b/Fltk/GUI.cpp @@ -1,4 +1,4 @@ -// $Id: GUI.cpp,v 1.97 2001-07-31 11:13:16 geuzaine Exp $ +// $Id: GUI.cpp,v 1.98 2001-07-31 14:06:16 geuzaine Exp $ // To make the interface as visually consistent as possible, please: // - use the BH, BW, WB, IW values for button heights/widths, window borders, etc. @@ -624,22 +624,26 @@ void GUI::create_menu_window(int argc, char **argv){ m_popup_butt[i]->type(Fl_Menu_Button::POPUP3); m_popup_butt[i]->add("Reload/View", 0, (Fl_Callback *)view_reload_cb, (void*)i, 0); - m_popup_butt[i]->add("Reload/All Views", 0, + m_popup_butt[i]->add("Reload/All views", 0, (Fl_Callback *)view_reload_all_cb, (void*)i, 0); + m_popup_butt[i]->add("Reload/All visible views", 0, + (Fl_Callback *)view_reload_visible_cb, (void*)i, 0); m_popup_butt[i]->add("Remove/View", 0, (Fl_Callback *)view_remove_cb, (void*)i, 0); - m_popup_butt[i]->add("Remove/All Views", 0, + m_popup_butt[i]->add("Remove/All views", 0, (Fl_Callback *)view_remove_all_cb, (void*)i, 0); - m_popup_butt[i]->add("Duplicate/View without Options", 0, + m_popup_butt[i]->add("Remove/All visible views", 0, + (Fl_Callback *)view_remove_visible_cb, (void*)i, 0); + m_popup_butt[i]->add("Duplicate/View without options", 0, (Fl_Callback *)view_duplicate_cb, (void*)i, 0) ; - m_popup_butt[i]->add("Duplicate/View with Options", 0, + m_popup_butt[i]->add("Duplicate/View with options", 0, (Fl_Callback *)view_duplicate_with_options_cb, (void*)i, 0) ; - m_popup_butt[i]->add("Save as/ASCII View...", 0, + m_popup_butt[i]->add("Save as/ASCII view...", 0, (Fl_Callback *)view_save_ascii_cb, (void*)i, 0) ; - m_popup_butt[i]->add("Save as/Binary View...", 0, + m_popup_butt[i]->add("Save as/Binary view...", 0, (Fl_Callback *)view_save_binary_cb, (void*)i, 0) ; add_post_plugins ( m_popup_butt[i] , i); - m_popup_butt[i]->add("Apply as Background Mesh", 0, + m_popup_butt[i]->add("Apply as background mesh", 0, (Fl_Callback *)view_applybgmesh_cb, (void*)i, FL_MENU_DIVIDER); m_popup_butt[i]->add("Options...", 0, (Fl_Callback *)view_options_cb, (void*)i, 0);