diff --git a/Common/Context.h b/Common/Context.h index 204376376a33ffc7170714cc64cd292c4ca111e6..30fa9449531c78aa9cb843a9f941cbcfde9f2209 100644 --- a/Common/Context.h +++ b/Common/Context.h @@ -101,7 +101,7 @@ class CTX { // position and size of various windows in the GUI int menuPosition[2], glPosition[2], glSize[2], msgSize; int optPosition[2], visPosition[2], clipPosition[2], manipPosition[2]; - int statPosition[2], ctxPosition[2], solverPosition[2]; + int statPosition[2], ctxPosition[2], solverPosition[2], solverSize[2]; int pluginPosition[2], pluginSize[2], fieldPosition[2], fieldSize[2]; int fileChooserPosition[2]; // use the system menu bar on Mac OS X? diff --git a/Common/DefaultOptions.h b/Common/DefaultOptions.h index 841ce5e6e9be4eaba08a934899bb48f53a5e3444..458985e624bdb251e5696f1fc302ac8f084f6d2f 100644 --- a/Common/DefaultOptions.h +++ b/Common/DefaultOptions.h @@ -582,9 +582,13 @@ StringXNumber GeneralOptions_Number[] = { "Size (in pixels) of small axes" }, { F|S, "SolverPositionX" , opt_general_solver_position0 , 650. , "Horizontal position (in pixels) of the upper left corner of the solver " - "windows" }, + "window" }, { F|S, "SolverPositionY" , opt_general_solver_position1 , 150. , - "Vertical position (in pixels) of the upper left corner of the solver windows" }, + "Vertical position (in pixels) of the upper left corner of the solver window" }, + { F|S, "SolverHeight" , opt_general_solver_size1 , 400. , + "Height (in pixels) of the solver window" }, + { F|S, "SolverWidth" , opt_general_solver_size0 , 300. , + "Width (in pixels) of the solver window" }, { F|S, "StatisticsPositionX" , opt_general_statistics_position0 , 650. , "Horizontal position (in pixels) of the upper left corner of the statistic " "window" }, diff --git a/Common/GmshRemote.cpp b/Common/GmshRemote.cpp index 6579e62f72c4bbf3f4cc66c39f74f1a8e8e91182..e4f3266e15f68ef4fd7c4e9de441854ad7dac0b7 100644 --- a/Common/GmshRemote.cpp +++ b/Common/GmshRemote.cpp @@ -295,6 +295,7 @@ int GmshRemote() int GmshRemote() { Msg::Error("GmshRemote requires Post and OneLab modules"); + return 0; } #endif diff --git a/Common/OpenFile.cpp b/Common/OpenFile.cpp index 3c43c589ef4bb657cf7ea63b521625320d1dcad4..b5d8afd98fe4d29fbd4986127dd6a17c7d4de412 100644 --- a/Common/OpenFile.cpp +++ b/Common/OpenFile.cpp @@ -281,7 +281,7 @@ int MergeFile(std::string fileName, bool warnIfMissing) CTX::instance()->geom.draw = 0; // don't try to draw the model while reading -#if defined(HAVE_POST) +#if defined(HAVE_FLTK) && defined(HAVE_POST) int numViewsBefore = PView::list.size(); #endif diff --git a/Common/Options.cpp b/Common/Options.cpp index 0fbf35b5527f359f1eaf142a38f68f108d0bfb28..d9ce3206ede42fc5babc602d8a33804d23e59bba 100644 --- a/Common/Options.cpp +++ b/Common/Options.cpp @@ -1777,6 +1777,20 @@ double opt_general_solver_position1(OPT_ARGS_NUM) return CTX::instance()->solverPosition[1]; } +double opt_general_solver_size0(OPT_ARGS_NUM) +{ + if(action & GMSH_SET) + CTX::instance()->solverSize[0] = (int)val; + return CTX::instance()->solverSize[0]; +} + +double opt_general_solver_size1(OPT_ARGS_NUM) +{ + if(action & GMSH_SET) + CTX::instance()->solverSize[1] = (int)val; + return CTX::instance()->solverSize[1]; +} + double opt_general_context_position0(OPT_ARGS_NUM) { if(action & GMSH_SET) diff --git a/Common/Options.h b/Common/Options.h index 7903d2d60230572cbafeff3e148809008cfffa61..5ba1277f3a4d78f21fd11cb26e31cd857157dfad 100644 --- a/Common/Options.h +++ b/Common/Options.h @@ -104,6 +104,8 @@ double opt_general_graphics_size0(OPT_ARGS_NUM); double opt_general_graphics_size1(OPT_ARGS_NUM); double opt_general_solver_position0(OPT_ARGS_NUM); double opt_general_solver_position1(OPT_ARGS_NUM); +double opt_general_solver_size0(OPT_ARGS_NUM); +double opt_general_solver_size1(OPT_ARGS_NUM); double opt_general_context_position0(OPT_ARGS_NUM); double opt_general_context_position1(OPT_ARGS_NUM); double opt_general_file_chooser_position0(OPT_ARGS_NUM); diff --git a/Fltk/FlGui.cpp b/Fltk/FlGui.cpp index e90d1e803dd7b290bd5954145175fc47f2582c91..6d44efe0beb67cb0cb79086c62be763d27ea19e2 100644 --- a/Fltk/FlGui.cpp +++ b/Fltk/FlGui.cpp @@ -840,6 +840,8 @@ void FlGui::storeCurrentWindowsInfo() #if defined(HAVE_ONELAB) && (FL_MAJOR_VERSION == 1) && (FL_MINOR_VERSION == 3) CTX::instance()->solverPosition[0] = onelab->x(); CTX::instance()->solverPosition[1] = onelab->y(); + CTX::instance()->solverSize[0] = onelab->w(); + CTX::instance()->solverSize[1] = onelab->h(); #endif fileChooserGetPosition(&CTX::instance()->fileChooserPosition[0], &CTX::instance()->fileChooserPosition[1]); diff --git a/Fltk/onelabWindow.cpp b/Fltk/onelabWindow.cpp index afa6f8ab265e96f8623967a4a4ec27a8378a1b41..945c7d178fa1e96887fe6b46e93273754164895b 100644 --- a/Fltk/onelabWindow.cpp +++ b/Fltk/onelabWindow.cpp @@ -961,8 +961,8 @@ onelabWindow::onelabWindow(int deltaFontSize) { FL_NORMAL_SIZE -= _deltaFontSize; - int width = 29 * FL_NORMAL_SIZE; - int height = 15 * BH + 3 * WB; + int width = CTX::instance()->solverSize[0]; + int height = CTX::instance()->solverSize[1]; _win = new paletteWindow (width, height, CTX::instance()->nonModalWindows ? true : false, "OneLab"); diff --git a/Fltk/onelabWindow.h b/Fltk/onelabWindow.h index 4a740a2e8c13063ba5712f7b28e2a63fa3e25b16..8f692761182827363dd88a174ca388e0b935b243 100644 --- a/Fltk/onelabWindow.h +++ b/Fltk/onelabWindow.h @@ -36,6 +36,8 @@ class onelabWindow{ onelabWindow(int deltaFontSize=0); int x(){ return _win->x(); } int y(){ return _win->y(); } + int w(){ return _win->w(); } + int h(){ return _win->h(); } void rebuildSolverList(); void rebuildTree(); void setButtonMode(const std::string &butt0, const std::string &butt1);