diff --git a/Adapt/Makefile b/Adapt/Makefile index a49d01e972926cfa370d3b19e817fbdf43768241..202dd45fe6f71a3624ab7fd4e5e79c61f3f47de5 100644 --- a/Adapt/Makefile +++ b/Adapt/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.12 2001-02-18 18:04:03 geuzaine Exp $ +# $Id: Makefile,v 1.13 2001-03-05 23:14:57 remacle Exp $ # # Makefile for "libAdapt.a" # @@ -59,8 +59,9 @@ depend: # DO NOT DELETE THIS LINE Adapt.o: Adapt.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h Adapt.h nrutil.h ../Common/Const.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h Adapt.h nrutil.h \ + ../Common/Const.h mnbrak.o: mnbrak.cpp nrutil.h ../Common/Const.h brent.o: brent.cpp nrutil.h ../Common/Const.h nrutil.o: nrutil.cpp diff --git a/Common/DefaultOptions.h b/Common/DefaultOptions.h index d111d8a92058b97a26b35963cf151ecdcaf112c7..d51c4463fa51e62847793bebe80a3281b4b22932 100644 --- a/Common/DefaultOptions.h +++ b/Common/DefaultOptions.h @@ -217,7 +217,7 @@ StringXNumber MeshOptions_Number[] = { StringXNumber PostProcessingOptions_Number[] = { { F|O, "Scales" , opt_post_scales , 1. }, { F|O, "Link" , opt_post_link , 0. }, - { F|O, "Smoothing" , opt_post_smooth , 0. }, + { F|O, "Smoothing" , opt_post_smooth , 1. }, { F|O, "AnimationDelay" , opt_post_anim_delay , 0.25 }, { F, "NbViews" , opt_post_nb_views , 0. }, { 0, NULL , NULL , 0. } diff --git a/Common/Makefile b/Common/Makefile index d8a2bb6289e6ad9476830b0cbd05006c98691830..b366438b2a614734487b321d1c2e781677c9aeef 100644 --- a/Common/Makefile +++ b/Common/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.15 2001-02-18 18:04:03 geuzaine Exp $ +# $Id: Makefile,v 1.16 2001-03-05 23:14:57 remacle Exp $ # # Makefile for "libCommon.a" # @@ -60,29 +60,30 @@ depend: # DO NOT DELETE THIS LINE Context.o: Context.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - Const.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \ - ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \ - ../Common/ColorTable.h Context.h Options.h DefaultOptions.h trackball.c \ - trackball.h -Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h ../DataStr/List.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h Views.h Const.h \ - ColorTable.h Context.h Options.h + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../DataStr/Tools.h Const.h ../Geo/Geo.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \ + ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Context.h \ + Options.h DefaultOptions.h trackball.c trackball.h +Views.o: Views.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../DataStr/Tools.h Views.h Const.h ColorTable.h Context.h Options.h Options.o: Options.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \ - ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h \ - ../Graphics/Draw.h ../Common/Views.h ../Common/Const.h \ - ../Common/ColorTable.h Context.h Const.h Options.h ../Fltk/GUI.h \ - ../Fltk/Opengl_Window.h ../Fltk/Colorbar_Window.h + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../DataStr/Tools.h GmshUI.h ../Geo/Geo.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h ../Graphics/Draw.h \ + ../Common/Views.h ../Common/Const.h ../Common/ColorTable.h Context.h \ + Const.h Options.h ../Fltk/GUI.h ../Fltk/Opengl_Window.h \ + ../Fltk/Colorbar_Window.h GetOptions.o: GetOptions.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - GmshUI.h GmshVersion.h Const.h Context.h Options.h ../Geo/Geo.h \ - ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h Views.h ColorTable.h \ - ../Parser/OpenFile.h ../Common/Const.h + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../DataStr/Tools.h GmshUI.h GmshVersion.h Const.h Context.h Options.h \ + ../Geo/Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h \ + ../Mesh/Edge.h ../Geo/ExtrudeParams.h ../Mesh/Metric.h Views.h \ + ColorTable.h ../Parser/OpenFile.h ../Common/Const.h Timer.o: Timer.cpp ColorTable.o: ColorTable.cpp Gmsh.h Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ColorTable.h Context.h Const.h + ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h \ + ../DataStr/Tools.h ColorTable.h Context.h Const.h diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp index f5e9aa7c88a1fbf81b52a5114acc8d33946119db..22f980c7b247f360979c74302177ffb4a6090443 100644 --- a/Fltk/Callbacks.cpp +++ b/Fltk/Callbacks.cpp @@ -1,4 +1,4 @@ -// $Id: Callbacks.cpp,v 1.37 2001-02-23 08:18:50 geuzaine Exp $ +// $Id: Callbacks.cpp,v 1.38 2001-03-05 23:14:57 remacle Exp $ #include "Gmsh.h" #include "GmshUI.h" @@ -16,6 +16,7 @@ #include "Options.h" #include "GUI.h" #include "Callbacks.h" +#include "Plugin.h" #include <FL/fl_file_chooser.H> #include <errno.h> @@ -1444,6 +1445,13 @@ void view_options_cb(CALLBACK_ARGS){ WID->create_view_options_window((int)data); } +void view_plugin_cb(CALLBACK_ARGS){ + char name[256]; + GMSH_Plugin *p = (GMSH_Plugin*)data; + p->getName(name); + Msg(INFO,"Plugin %s called",name); +} + void view_options_custom_cb(CALLBACK_ARGS){ if(WID->view_butt[0]->value()){ WID->view_value[0]->activate(); diff --git a/Fltk/Callbacks.h b/Fltk/Callbacks.h index 120e7a18e0f6a498ba5c0bdf6257e0dc846ae71a..20897ca07490fda80d42e20ba7d407b0a6a36434 100644 --- a/Fltk/Callbacks.h +++ b/Fltk/Callbacks.h @@ -195,6 +195,7 @@ void view_lighting_cb(CALLBACK_ARGS) ; void view_elements_cb(CALLBACK_ARGS) ; void view_applybgmesh_cb(CALLBACK_ARGS) ; void view_options_cb(CALLBACK_ARGS) ; +void view_plugin_cb(CALLBACK_ARGS) ; void view_options_custom_cb(CALLBACK_ARGS) ; void view_options_timestep_cb(CALLBACK_ARGS) ; void view_options_ok_cb(CALLBACK_ARGS) ; diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp index 58f85d5b5dc0b65dc7486d43a65785efe9c05915..cdb0cb808e1a07da2f05dbde32827140a0810167 100644 --- a/Fltk/GUI.cpp +++ b/Fltk/GUI.cpp @@ -1,10 +1,12 @@ -// $Id: GUI.cpp,v 1.54 2001-03-03 08:44:32 geuzaine Exp $ +// $Id: GUI.cpp,v 1.55 2001-03-05 23:14:57 remacle 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. // - use CTX.fontsize for font sizes // - examine what's already done before adding something new... +#include "PluginManager.h" +#include "Plugin.h" #include "Gmsh.h" #include "GmshUI.h" #include "GmshVersion.h" @@ -19,6 +21,7 @@ #include "Bitmaps.h" #include "GetOptions.h" + #define WINDOW_BOX FL_FLAT_BOX #define IW (10*CTX.fontsize) // input field width @@ -425,7 +428,7 @@ int GUI::global_shortcuts(int event){ //***************************** The GUI constructor ************************************ GUI::GUI(int argc, char **argv) { - + init_menu_window = 0; init_graphic_window = 0; init_general_options_window = 0; @@ -478,7 +481,6 @@ GUI::GUI(int argc, char **argv) { create_about_window(); // Draw the scene - g_opengl_window->redraw(); } @@ -503,6 +505,23 @@ void GUI::wait(){ //********************************* Create the menu window ***************************** +void add_post_plugins ( Fl_Menu_Button *button ) +{ + char name[256],menuname[256]; + for(GMSH_PluginManager::iter it = GMSH_PluginManager::Instance()->begin(); + it != GMSH_PluginManager::Instance()->end(); + ++it) + { + GMSH_Plugin *p = (*it).second; + if(p->getType() == GMSH_Plugin::GMSH_POST_PLUGIN) + { + p->getName(name); + sprintf(menuname,"Plugins/%s",name); + button->add(menuname, 0,(Fl_Callback *)view_plugin_cb, (void*)p, 0); + } + } +} + void GUI::create_menu_window(int argc, char **argv){ int i, y; @@ -576,6 +595,7 @@ void GUI::create_menu_window(int argc, char **argv){ (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); + add_post_plugins ( m_popup_butt[i] ); m_popup_butt[i]->textsize(CTX.fontsize); m_popup_butt[i]->hide(); } diff --git a/Fltk/Main.cpp b/Fltk/Main.cpp index 321cb73ad056e3235bb69dc86ac60a28d604464b..3557f90f375cf02be2554085fa78dff27a548dff 100644 --- a/Fltk/Main.cpp +++ b/Fltk/Main.cpp @@ -1,7 +1,8 @@ -// $Id: Main.cpp,v 1.19 2001-03-04 22:58:01 remacle Exp $ +// $Id: Main.cpp,v 1.20 2001-03-05 23:14:57 remacle Exp $ #include <signal.h> +#include "PluginManager.h" #include "Gmsh.h" #include "GmshUI.h" #include "GmshVersion.h" @@ -18,7 +19,6 @@ #include "GUI.h" #include "OpenFile.h" #include "GetOptions.h" -#include "Plugin.h" GUI *WID = NULL; @@ -46,6 +46,8 @@ int main(int argc, char *argv[]){ if(CTX.verbosity && CTX.terminal) fprintf(stderr, "%s, Version %.2f\n", gmsh_progname, GMSH_VERSION); + // Register Default Plugins (in test ...) + GMSH_PluginManager::Instance()->RegisterDefaultPlugins(); // Initialize the static Mesh @@ -125,9 +127,6 @@ int main(int argc, char *argv[]){ WID->check(); - // Register Default Plugins (in test ...) - GMSH_PluginManager::Instance()->RegisterDefaultPlugins(); - // Open project file OpenProblem(CTX.filename); diff --git a/Geo/Makefile b/Geo/Makefile index da8bfb4de10878564b5891465d62144932a0db02..65271c72c9d2ea5b74f55ce87345a1249642f5e7 100644 --- a/Geo/Makefile +++ b/Geo/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.14 2001-02-18 18:04:03 geuzaine Exp $ +# $Id: Makefile,v 1.15 2001-03-05 23:14:57 remacle Exp $ # # Makefile for "libGeo.a" # @@ -57,49 +57,52 @@ depend: $(RM) $(RMFLAGS) Makefile.new # DO NOT DELETE THIS LINE -CAD.o: CAD.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - Geo.h ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h \ - ../Mesh/Interpolation.h ../Mesh/Numeric.h ../Common/Const.h \ - ../Mesh/Create.h CAD.h ../Common/Context.h +CAD.o: CAD.cpp ../Common/Gmsh.h ../Common/Message.h \ + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h \ + ../Mesh/Interpolation.h ../Mesh/Numeric.h ../Common/Const.h \ + ../Mesh/Create.h CAD.h ../Common/Context.h DataBase.o: DataBase.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h \ - ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Mesh/Create.h Verif.h \ - ../Common/Context.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h \ + ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Mesh/Create.h \ + Verif.h ../Common/Context.h MinMax.o: MinMax.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h ../Mesh/Vertex.h \ - ../Common/Context.h -ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ - ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h ExtrudeParams.h -Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h ../DataStr/Malloc.h \ - ../DataStr/List.h ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ - ../Common/Const.h Geo.h CAD.h ../Mesh/Mesh.h ../Mesh/Vertex.h \ - ../Mesh/Simplex.h ../Mesh/Edge.h ../Geo/ExtrudeParams.h \ - ../Mesh/Metric.h DataBase.h ../Parser/Parser.h ../Common/Context.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \ + ../Mesh/Vertex.h ../Common/Context.h +ExtrudeParams.o: ExtrudeParams.cpp ../Common/Gmsh.h \ + ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h \ + ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h ExtrudeParams.h +Geo.o: Geo.cpp ../Common/Gmsh.h ../Common/Message.h \ + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h Geo.h CAD.h \ + ../Mesh/Mesh.h ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h ../Parser/Parser.h \ + ../Common/Context.h StepGeomDatabase.o: StepGeomDatabase.cpp ../Common/Gmsh.h \ - ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ - ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h ../Common/Const.h \ - Geo.h StepGeomDatabase.h DataBase.h ../Common/Context.h + ../Common/Message.h ../DataStr/Malloc.h ../DataStr/List.h \ + ../DataStr/Tree.h ../DataStr/avl.h ../DataStr/Tools.h \ + ../Common/Const.h Geo.h StepGeomDatabase.h DataBase.h \ + ../Common/Context.h Verif.o: Verif.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ - ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h Visibility.o: Visibility.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ - ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h Geo.h CAD.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h DataBase.h Print_Geo.o: Print_Geo.cpp ../Common/Gmsh.h ../Common/Message.h \ - ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ - ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \ - ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ - ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Common/Context.h \ - ../Common/Const.h + ../DataStr/Malloc.h ../DataStr/List.h ../DataStr/Tree.h \ + ../DataStr/avl.h ../DataStr/Tools.h Geo.h ../Mesh/Mesh.h \ + ../Mesh/Vertex.h ../Mesh/Simplex.h ../Mesh/Edge.h \ + ../Geo/ExtrudeParams.h ../Mesh/Metric.h CAD.h ../Common/Context.h \ + ../Common/Const.h diff --git a/Makefile b/Makefile index 126873a694d88856816b19e3cbf5bfb7a1d2368c..25ec4993ad5f3ec982368b72bc73786762589b32 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.73 2001-03-05 23:04:49 bechet Exp $ +# $Id: Makefile,v 1.74 2001-03-05 23:13:02 remacle Exp $ # ---------------------------------------------------------------------- # Makefile for Gmsh # ---------------------------------------------------------------------- @@ -470,19 +470,19 @@ fltk_cygwin: tag g++ -Wl,--subsystem,windows -o $(GMSH_BIN_DIR)/gmsh.exe $(GMSH_FLTK_LIB) \ $(HOME)/SOURCES/fltk/lib/libfltk.a -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm strip $(GMSH_BIN_DIR)/gmsh.exe - -fltk_cygwin_gertha_buro: tag - @for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \ - "CC=g++" \ - "C_FLAGS=-O2 -DWIN32" \ - "OS_FLAGS=-D_LITTLE_ENDIAN" \ - "VERSION_FLAGS=-D_FLTK" \ - "GL_INCLUDE=$(OPENGL_INC)" \ - "GUI_INCLUDE=$(FLTK_INC_GERTHA_BURO)" \ - ); done - g++ -Wl,--subsystem,windows -o $(GMSH_BIN_DIR)/gmsh.exe $(GMSH_FLTK_LIB) \ - ../fltk/lib/libfltk.a -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm - strip $(GMSH_BIN_DIR)/gmsh.exe + +fltk_cygwin_gertha_buro: tag + @for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \ + "CC=g++" \ + "C_FLAGS=-O2 -DWIN32" \ + "OS_FLAGS=-D_LITTLE_ENDIAN" \ + "VERSION_FLAGS=-D_FLTK" \ + "GL_INCLUDE=$(OPENGL_INC)" \ + "GUI_INCLUDE=$(FLTK_INC_GERTHA_BURO)" \ + ); done + g++ -Wl,--subsystem,windows -o $(GMSH_BIN_DIR)/gmsh.exe $(GMSH_FLTK_LIB) \ + ../fltk/lib/libfltk.a -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm + strip $(GMSH_BIN_DIR)/gmsh.exe fltk_cygwin_laptopjf: @for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \ diff --git a/Plugin/Cutplane/Makefile b/Plugin/Cutplane/Makefile index b0b4438a1e407188f73527420c975060b3c28a0d..5a71d9ea476f83747f0d183c5cd2723eb00d9685 100644 --- a/Plugin/Cutplane/Makefile +++ b/Plugin/Cutplane/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.2 2001-03-04 22:57:36 remacle Exp $ +# $Id: Makefile,v 1.3 2001-03-05 23:14:57 remacle Exp $ # # Makefile for "libAdapt.a" # @@ -47,3 +47,4 @@ depend: $(RM) $(RMFLAGS) Makefile.new # DO NOT DELETE THIS LINE +CutPlane.o: CutPlane.cpp CutPlane.h ../Plugin.h diff --git a/Plugin/Plugin.cpp b/Plugin/Plugin.cpp index c1f7a651a5fae0f17f878e626a644d96ccaa311d..9507cb6dec30c65223083b9b4e5a1cbfdfd09f55 100644 --- a/Plugin/Plugin.cpp +++ b/Plugin/Plugin.cpp @@ -2,6 +2,7 @@ #include <dlfcn.h> #include <map> #include "Plugin.h" +#include "PluginManager.h" #include "Message.h" #include <FL/filename.H> using namespace std; @@ -14,37 +15,18 @@ const char *GMSH_PluginEntry = "GMSH_RegisterPlugin"; #define SLASH "/" #endif -struct ltstr -{ - bool operator()(const char* s1, const char* s2) const - { - return strcmp(s1, s2) < 0; - } -}; - -class PluginContainer -{ -public : - typedef map<char*,GMSH_Plugin*,ltstr>::iterator iter; - map<char*,GMSH_Plugin*,ltstr> m; - iter begin() {return m.begin();} - iter end() {return m.end();} - iter find(char *c) {return m.find(c);} -}; GMSH_PluginManager *GMSH_PluginManager::instance = 0; GMSH_PluginManager::GMSH_PluginManager() { - allPlugins = new PluginContainer; } GMSH_PluginManager::~GMSH_PluginManager() { - for(PluginContainer::iter it = allPlugins->begin(); - it != allPlugins->end(); + for(iter it = allPlugins.begin(); + it != allPlugins.end(); ++it)delete (*it).second; - delete allPlugins; } GMSH_PluginManager* GMSH_PluginManager::Instance() @@ -115,12 +97,12 @@ void GMSH_PluginManager::AddPlugin( char *dirName, char *pluginName) p->hlib = hlib; p->getName(plugin_name); p->getInfos(plugin_author,plugin_copyright,plugin_help); - if(allPlugins->find(plugin_name) != allPlugins->end()) + if(allPlugins.find(plugin_name) != allPlugins.end()) { Msg(WARNING,"Plugin %s Multiply defined",pluginName); return; } - allPlugins->m[plugin_name] = p; + allPlugins.insert(std::pair<char*,GMSH_Plugin*>(plugin_name,p)); Msg(INFO,"Plugin name : %s",plugin_name); Msg(INFO,"Plugin author : %s",plugin_author); Msg(INFO,"Plugin copyright : %s",plugin_copyright); diff --git a/Plugin/Plugin.h b/Plugin/Plugin.h index fff007b00d38a3c3b7c75f429718b5f9cf22d109..437c02e37c9ddf9ae5b4ba818bea566ece14deec 100644 --- a/Plugin/Plugin.h +++ b/Plugin/Plugin.h @@ -9,9 +9,7 @@ catch the exception. */ -class PluginContainer; class Post_View; - class GMSH_Plugin { public : @@ -48,25 +46,6 @@ public: virtual Post_View *execute (Post_View *) = 0; }; -class GMSH_PluginManager -{ - GMSH_PluginManager(); - virtual ~GMSH_PluginManager(); - static GMSH_PluginManager *instance; - PluginContainer* allPlugins; -public : -/** - Registering all default plugins that are in $(GMSHPLUGINSHOME) - In fact, we will load all .so files in dir $(GMSHPLUGINSHOME) -*/ - void RegisterDefaultPlugins(); - static GMSH_PluginManager *Instance(); - /** Dynamically add a plugin pluginName.so in dirName*/ - void AddPlugin(char *dirName, char *pluginName); - void CallPlugin (char *name); - void DestroyPlugin (char *name); - void SetPluginOption (char *pluginName, char *option, void *value); -}; #endif diff --git a/Plugin/PluginManager.h b/Plugin/PluginManager.h new file mode 100644 index 0000000000000000000000000000000000000000..8190fb6d75dbd6c54fd8b93cc7b2d9c481598de9 --- /dev/null +++ b/Plugin/PluginManager.h @@ -0,0 +1,54 @@ +#ifndef _PLUGINMANAGER_H_ +#define _PLUGINMANAGER_H_ +/* + The one who intend to create a plugin for gmsh have to + -) Create a dynamin lib (.so) containing 1 symbols + GMSH_Plugin * GMSH_RegisterPlugin (); + -) When there is an unacceptable error in the plugin, + just throw this, the plugin manager will be able to + catch the exception. +*/ + +#include <map> + +class GMSH_Plugin; +struct ltstrpg +{ + bool operator()(const char* s1, const char* s2) const + { + return strcmp(s1, s2) < 0; + } +}; + +class GMSH_PluginManager +{ + GMSH_PluginManager(); + virtual ~GMSH_PluginManager(); + static GMSH_PluginManager *instance; + std::map<char*,GMSH_Plugin*,ltstrpg> allPlugins; +public : + typedef std::map<char*,GMSH_Plugin*,ltstrpg>::iterator iter; +/** + Registering all default plugins that are in $(GMSHPLUGINSHOME) + In fact, we will load all .so files in dir $(GMSHPLUGINSHOME) +*/ + void RegisterDefaultPlugins(); + static GMSH_PluginManager *Instance(); + /** Dynamically add a plugin pluginName.so in dirName*/ + void AddPlugin(char *dirName, char *pluginName); + void CallPlugin (char *name); + void DestroyPlugin (char *name); + void StPluginOption (char *pluginName, char *option, void *value); + iter begin() {return allPlugins.begin();} + iter end() {return allPlugins.end();} + iter find(char *c) {return allPlugins.find(c);} +}; +#endif + + + + + + + + diff --git a/jpeg/jmorecfg.h b/jpeg/jmorecfg.h index e7a1a0d2bfa39ac071aa8f8560e883f1defed8af..b3d2baa184b4b22320305a828feed4e35fbf3cec 100644 --- a/jpeg/jmorecfg.h +++ b/jpeg/jmorecfg.h @@ -157,11 +157,11 @@ typedef short INT16; /* INT32 must hold at least signed 32-bit values. */ -#ifndef WIN32 +#ifndef WIN32//geuz #ifndef XMD_H /* X11/xmd.h correctly defines INT32 */ typedef long INT32; #endif -#endif +#endif//geuz /* Datatype used for image dimensions. The JPEG standard only supports * images up to 64K*64K due to 16-bit fields in SOF markers. Therefore