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