11 #ifndef MATHPLOTCONFIG_H_INCLUDED 12 #define MATHPLOTCONFIG_H_INCLUDED 15 #include <wx/button.h> 16 #include <wx/checkbox.h> 17 #include <wx/choice.h> 18 #include <wx/dialog.h> 19 #include <wx/notebook.h> 21 #include <wx/radiobut.h> 23 #include <wx/spinctrl.h> 24 #include <wx/stattext.h> 25 #include <wx/textctrl.h> 28 #include <wx/colordlg.h> 29 #include <wx/fontdlg.h> 30 #include <wx/valnum.h> 31 #include <wx/fileconf.h> 33 #ifdef ENABLE_MP_NAMESPACE 35 #endif // ENABLE_MP_NAMESPACE 57 wxFileConfig(wxEmptyString, wxEmptyString, localFilename) {}
64 void SetSettings(wxWindow* win);
70 void GetSettings(wxWindow* win);
78 void DoPosition(
bool set, wxWindow *win);
87 void DoRecursiveSearch(
bool set, wxWindow *win,
const wxString &path = wxEmptyString,
int level = 0);
108 const wxString& message,
long size,
const wxString prompt[],
double *values,
109 const wxPoint& pos = wxDefaultPosition)
111 Create(parent, title, message, size, prompt, values, pos);
118 bool Create(wxWindow* parent,
const wxString& title,
119 const wxString& message,
long size,
const wxString prompt[],
double *values,
120 const wxPoint& pos = wxDefaultPosition);
123 void OnOK(wxCommandEvent& event);
124 void OnCancel(wxCommandEvent& event);
127 std::vector<wxTextCtrl *> m_ctrls;
128 wxDECLARE_EVENT_TABLE();
135 typedef enum __ConfigPageIndex
170 void Initialize(mpConfigPageId
id = mpcpiNone);
176 void SelectChoiceSerie(
unsigned int serie);
184 void CreateSettingsFile(
const wxString& filename,
const wxString& path = wxEmptyString,
bool apply =
false);
189 void ApplySettings(
void);
203 wxButton* colourButton;
210 wxChoice* CurrentChoice;
211 bool fontTitleChanged;
212 bool fontLegendChanged;
213 bool fontAxisChanged;
215 unsigned int int_top, int_bottom, int_left, int_right, int_extra;
218 double scale_min, scale_max;
222 bool SerieVisibleChange;
225 void OnQuit(wxCommandEvent& event);
226 void OnnbConfigPageChanged(wxNotebookEvent& event);
227 void OnbColorClick(wxCommandEvent& event);
228 void OnChoiceSeries(wxCommandEvent& event);
229 void OnAxisSelect(wxCommandEvent& event);
230 void OncbFormatSelect(wxCommandEvent& event);
231 void OncbAutoScaleClick(wxCommandEvent& event);
232 void OnbApplyClick(wxCommandEvent& event);
233 void OnbFontClick(wxCommandEvent& event);
234 void OnbDelSeriesClick(wxCommandEvent& event);
235 void OnbAddAxisClick(wxCommandEvent& event);
236 void OnChoiceLinesSelect(wxCommandEvent& event);
237 void OnbAddLinesClick(wxCommandEvent& event);
238 void OnbDelLinesClick(wxCommandEvent& event);
239 void OnbDelAxisClick(wxCommandEvent& event);
240 void OncbSeriesShowNameClick(wxCommandEvent& event);
247 wxBoxSizer* sizerAxis;
248 wxBoxSizer* sizerLines;
249 wxBoxSizer* sizerMain;
254 wxButton* bAxisPenColor;
257 wxButton* bCoordBrushColor;
260 wxButton* bDelSeries;
262 wxButton* bFontLegend;
263 wxButton* bFontTitle;
264 wxButton* bLegendBrushColor;
265 wxButton* bLinesPenColor;
266 wxButton* bSeriesBrushColor;
267 wxButton* bSeriesPenColor;
268 wxCheckBox* cbAutoScale;
269 wxCheckBox* cbAxisOutside;
270 wxCheckBox* cbAxisVisible;
272 wxCheckBox* cbCoordOutside;
273 wxCheckBox* cbCoordVisible;
274 wxCheckBox* cbCoordinates;
275 wxCheckBox* cbDrawBox;
276 wxCheckBox* cbGridVisible;
277 wxCheckBox* cbLegendVisible;
278 wxCheckBox* cbLinesOutside;
279 wxCheckBox* cbLinesShowName;
280 wxCheckBox* cbLinesVisible;
281 wxCheckBox* cbLogAxis;
282 wxCheckBox* cbMagnetize;
283 wxCheckBox* cbSeriesContinuity;
284 wxCheckBox* cbSeriesLegend;
285 wxCheckBox* cbSeriesOutside;
286 wxCheckBox* cbSeriesShowName;
287 wxCheckBox* cbSeriesVisible;
288 wxCheckBox* cbTitleVisible;
289 wxCheckBox* cbTractable;
290 wxChoice* ChoiceAxis;
291 wxChoice* ChoiceLeftMouseAction;
292 wxChoice* ChoiceLines;
293 wxChoice* ChoiceLinesYAxis;
294 wxChoice* ChoiceSeries;
295 wxChoice* ChoiceSeriesYAxis;
296 wxChoice* cbAxisPenStyle;
297 wxChoice* cbAxisPenWidth;
298 wxChoice* cbAxisPosition;
300 wxChoice* cbCoordBrushStyle;
302 wxChoice* cbLegendBrushStyle;
303 wxChoice* cbLegendDirection;
304 wxChoice* cbLegendPosition;
305 wxChoice* cbLegendStyle;
306 wxChoice* cbLinesPenStyle;
307 wxChoice* cbLinesPenWidth;
308 wxChoice* cbSeriesBrushStyle;
309 wxChoice* cbSeriesNamePosition;
310 wxChoice* cbSeriesPenStyle;
311 wxChoice* cbSeriesPenWidth;
312 wxChoice* cbSeriesSymbolType;
313 wxNotebook* nbConfig;
320 wxRadioButton* rbLinesDirection;
321 wxSpinCtrl* cbSeriesStep;
322 wxSpinCtrl* cbSeriesSymbolSize;
323 wxStaticText* StaticText10;
324 wxStaticText* StaticText11;
325 wxStaticText* StaticText12;
326 wxStaticText* StaticText13;
327 wxStaticText* StaticText14;
328 wxStaticText* StaticText15;
329 wxStaticText* StaticText16;
330 wxStaticText* StaticText17;
331 wxStaticText* StaticText18;
332 wxStaticText* StaticText19;
333 wxStaticText* StaticText1;
334 wxStaticText* StaticText20;
335 wxStaticText* StaticText21;
336 wxStaticText* StaticText22;
337 wxStaticText* StaticText23;
338 wxStaticText* StaticText24;
339 wxStaticText* StaticText25;
340 wxStaticText* StaticText26;
341 wxStaticText* StaticText27;
342 wxStaticText* StaticText28;
343 wxStaticText* StaticText29;
344 wxStaticText* StaticText2;
345 wxStaticText* StaticText30;
346 wxStaticText* StaticText31;
347 wxStaticText* StaticText32;
348 wxStaticText* StaticText33;
349 wxStaticText* StaticText34;
350 wxStaticText* StaticText35;
351 wxStaticText* StaticText36;
352 wxStaticText* StaticText37;
353 wxStaticText* StaticText38;
354 wxStaticText* StaticText39;
355 wxStaticText* StaticText3;
356 wxStaticText* StaticText40;
357 wxStaticText* StaticText41;
358 wxStaticText* StaticText4;
359 wxStaticText* StaticText5;
360 wxStaticText* StaticText6;
361 wxStaticText* StaticText7;
362 wxStaticText* StaticText8;
363 wxStaticText* StaticText9;
364 wxStaticText* stLinesYIndexLabel;
365 wxTextCtrl* edAxisName;
366 wxTextCtrl* edExtraMargin;
367 wxTextCtrl* edFormat;
368 wxTextCtrl* edLinesName;
369 wxTextCtrl* edLinesValue;
370 wxTextCtrl* edMarginBottom;
371 wxTextCtrl* edMarginLeft;
372 wxTextCtrl* edMarginRight;
373 wxTextCtrl* edMarginTop;
374 wxTextCtrl* edScaleMax;
375 wxTextCtrl* edScaleMin;
376 wxTextCtrl* edSeriesName;
380 void Apply(
int pageIndex,
bool updateFont =
false);
381 void UpdateSelectedSerie(
void);
382 void UpdateSelectedLine(
void);
383 void UpdateAxis(
void);
384 void FillYAxisList(wxChoice* yChoice,
bool clearChoice =
true);
386 void DoButtonColour(wxButton* button,
const wxColour& colour);
387 void DoApplyColour(
const wxColour& colour);
388 void UpdateFont(
mpLayer* layer, wxButton* button,
bool get_set);
389 void SetFontChildren(wxButton* p,
const wxFontData& fontdata);
391 wxBrushStyle IdToBrushStyle(
int id);
392 int BrushStyleToId(wxBrushStyle style);
394 DECLARE_EVENT_TABLE()
397 #ifdef ENABLE_MP_NAMESPACE 399 #endif // ENABLE_MP_NAMESPACE 401 #endif // MATHPLOTCONFIG_H_INCLUDED MathPlotConfigSettings * GetSettingsHandle(void)
Give access to m_settings if we want to save some others parameters.
Definition: MathPlotConfig.h:194
Abstract class providing a line.
Definition: mathplot.h:1605
Canvas for plotting mpLayer implementations.
Definition: mathplot.h:3090
Implements the legend to be added to the plot This layer allows you to add a legend to describe the p...
Definition: mathplot.h:1389
Dialog box for configuring the plot's layer objects In this dialog, you can configure: ...
Definition: MathPlotConfig.h:154
MathPlotConfigSettings(const wxString &localFilename)
Manages the backup of configuration window data.
Definition: MathPlotConfig.h:56
#define WXDLLIMPEXP_MATHPLOT
Definition uses windows dll to export function.
Definition: mathplot.h:66
Helper class to save/restore configuration.
Definition: MathPlotConfig.h:49
wxMultiTextCtrlDialog(wxWindow *parent, const wxString &title, const wxString &message, long size, const wxString prompt[], double *values, const wxPoint &pos=wxDefaultPosition)
Constructor.
Definition: MathPlotConfig.h:107
Implements an overlay box which shows the mouse coordinates in plot units.
Definition: mathplot.h:1302
Plot layer implementing an abstract function plot class.
Definition: mathplot.h:1485
wxMultiTextCtrlDialog class A simple text control dialog window that support several text control ...
Definition: MathPlotConfig.h:94
Plot layer implementing an abstract scale ruler.
Definition: mathplot.h:2536
Plot layer implementing a text string.
Definition: mathplot.h:4352
Plot layer, abstract base class.
Definition: mathplot.h:818