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);
241 void OnbApplyAndFitClick(wxCommandEvent& event);
242 void OncbAutoStepClick(wxCommandEvent& event);
249 wxBoxSizer* sizerAxis;
250 wxBoxSizer* sizerLines;
251 wxBoxSizer* sizerMain;
256 wxButton* bApplyAndFit;
257 wxButton* bAxisPenColor;
260 wxButton* bCoordBrushColor;
263 wxButton* bDelSeries;
265 wxButton* bFontLegend;
266 wxButton* bFontTitle;
267 wxButton* bGridPenColor;
268 wxButton* bLegendBrushColor;
269 wxButton* bLinesPenColor;
270 wxButton* bSeriesBrushColor;
271 wxButton* bSeriesPenColor;
272 wxCheckBox* cbAutoScale;
273 wxCheckBox* cbAutoStep;
274 wxCheckBox* cbAxisOutside;
275 wxCheckBox* cbAxisVisible;
277 wxCheckBox* cbCoordDefaultVisibility;
278 wxCheckBox* cbCoordOutside;
279 wxCheckBox* cbCoordVisible;
280 wxCheckBox* cbCoordinates;
281 wxCheckBox* cbDrawBox;
282 wxCheckBox* cbGridVisible;
283 wxCheckBox* cbLegendDefaultVisibility;
284 wxCheckBox* cbLegendVisible;
285 wxCheckBox* cbLinesOutside;
286 wxCheckBox* cbLinesShowName;
287 wxCheckBox* cbLinesVisible;
288 wxCheckBox* cbLogAxis;
289 wxCheckBox* cbMagnetize;
290 wxCheckBox* cbMouseCoordVisible;
291 wxCheckBox* cbSeriesContinuity;
292 wxCheckBox* cbSeriesLegend;
293 wxCheckBox* cbSeriesOutside;
294 wxCheckBox* cbSeriesShowName;
295 wxCheckBox* cbSeriesVisible;
296 wxCheckBox* cbTitleVisible;
297 wxCheckBox* cbTractable;
298 wxChoice* ChoiceAxis;
299 wxChoice* ChoiceLeftMouseAction;
300 wxChoice* ChoiceLines;
301 wxChoice* ChoiceLinesYAxis;
302 wxChoice* ChoiceSeries;
303 wxChoice* ChoiceSeriesYAxis;
304 wxChoice* cbAxisPenStyle;
305 wxChoice* cbAxisPenWidth;
306 wxChoice* cbAxisPosition;
308 wxChoice* cbCoordBrushStyle;
310 wxChoice* cbGridPenStyle;
311 wxChoice* cbGridPenWidth;
312 wxChoice* cbLegendBrushStyle;
313 wxChoice* cbLegendDirection;
314 wxChoice* cbLegendPosition;
315 wxChoice* cbLegendStyle;
316 wxChoice* cbLinesPenStyle;
317 wxChoice* cbLinesPenWidth;
318 wxChoice* cbSeriesBrushStyle;
319 wxChoice* cbSeriesNamePosition;
320 wxChoice* cbSeriesPenStyle;
321 wxChoice* cbSeriesPenWidth;
322 wxChoice* cbSeriesSymbolType;
323 wxFlexGridSizer* sizerSeriesStep;
324 wxNotebook* nbConfig;
325 wxNotebook* nbPenAxisGrid;
334 wxRadioButton* rbLinesDirection;
335 wxSpinCtrl* cbSeriesSymbolSize;
336 wxSpinCtrl* spinSeriesStep;
337 wxStaticText* StaticText10;
338 wxStaticText* StaticText11;
339 wxStaticText* StaticText12;
340 wxStaticText* StaticText13;
341 wxStaticText* StaticText14;
342 wxStaticText* StaticText15;
343 wxStaticText* StaticText16;
344 wxStaticText* StaticText17;
345 wxStaticText* StaticText18;
346 wxStaticText* StaticText1;
347 wxStaticText* StaticText20;
348 wxStaticText* StaticText21;
349 wxStaticText* StaticText22;
350 wxStaticText* StaticText23;
351 wxStaticText* StaticText24;
352 wxStaticText* StaticText25;
353 wxStaticText* StaticText26;
354 wxStaticText* StaticText27;
355 wxStaticText* StaticText28;
356 wxStaticText* StaticText29;
357 wxStaticText* StaticText2;
358 wxStaticText* StaticText30;
359 wxStaticText* StaticText31;
360 wxStaticText* StaticText32;
361 wxStaticText* StaticText33;
362 wxStaticText* StaticText34;
363 wxStaticText* StaticText35;
364 wxStaticText* StaticText36;
365 wxStaticText* StaticText37;
366 wxStaticText* StaticText38;
367 wxStaticText* StaticText39;
368 wxStaticText* StaticText3;
369 wxStaticText* StaticText40;
370 wxStaticText* StaticText41;
371 wxStaticText* StaticText42;
372 wxStaticText* StaticText43;
373 wxStaticText* StaticText44;
374 wxStaticText* StaticText4;
375 wxStaticText* StaticText5;
376 wxStaticText* StaticText6;
377 wxStaticText* StaticText7;
378 wxStaticText* StaticText8;
379 wxStaticText* StaticText9;
380 wxStaticText* stLinesYIndexLabel;
381 wxStaticText* stStepChoice;
382 wxTextCtrl* edAxisName;
383 wxTextCtrl* edExtraMargin;
384 wxTextCtrl* edFormat;
385 wxTextCtrl* edLinesName;
386 wxTextCtrl* edLinesValue;
387 wxTextCtrl* edMarginBottom;
388 wxTextCtrl* edMarginLeft;
389 wxTextCtrl* edMarginRight;
390 wxTextCtrl* edMarginTop;
391 wxTextCtrl* edScaleMax;
392 wxTextCtrl* edScaleMin;
393 wxTextCtrl* edSeriesName;
397 void Apply(
int pageIndex,
bool updateFont =
false);
398 void UpdateSelectedSerie(
void);
399 void UpdateSelectedLine(
void);
400 void UpdateAxis(
void);
401 void FillYAxisList(wxChoice* yChoice,
bool clearChoice =
true);
402 void UpdateSeriesStep(
void);
404 void DoButtonColour(wxButton* button,
const wxColour& colour);
405 void DoApplyColour(
const wxColour& colour);
406 void UpdateFont(
mpLayer* layer, wxButton* button,
bool get_set);
407 void SetFontChildren(wxButton* p,
const wxFontData& fontdata);
409 wxBrushStyle IdToBrushStyle(
int id);
410 int BrushStyleToId(wxBrushStyle style);
412 DECLARE_EVENT_TABLE()
415 #ifdef ENABLE_MP_NAMESPACE 417 #endif // ENABLE_MP_NAMESPACE 419 #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:1795
Canvas for plotting mpLayer implementations.
Definition: mathplot.h:3361
Implement the legend to be added to the plot This layer allows you to add a legend to describe the pl...
Definition: mathplot.h:1493
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:77
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:1371
Plot layer implementing an abstract function plot class.
Definition: mathplot.h:1641
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:2736
Plot layer implementing a text string.
Definition: mathplot.h:4732
Plot layer, abstract base class.
Definition: mathplot.h:867