7#ifndef DLG_SETTINGS_COORDS_H
8#define DLG_SETTINGS_COORDS_H
10#include "CoordUnitsNonPolarTheta.h"
11#include "CoordUnitsPolarTheta.h"
12#include "DlgSettingsAbstractBase.h"
17class QDoubleValidator;
41 void slotCartesianPolar (
bool);
42 void slotDate (
const QString &);
43 void slotPolarOriginRadius(
const QString &);
44 void slotTime (
const QString &);
45 void slotUnitsXTheta(
const QString &);
46 void slotUnitsYRadius(
const QString &);
47 void slotXThetaLinear();
49 void slotYRadiusLinear();
50 void slotYRadiusLog();
57 void annotateAngles(
const QFont &defaultFont);
58 void annotateRadiusAtOrigin(
const QFont &defaultFont);
61 void createDateTime(QGridLayout *layout,
63 void createGroupCoordsType(QGridLayout *layout,
65 void createGroupXTheta(QGridLayout *layout,
67 void createGroupYRadius(QGridLayout *layout,
69 void createPreview(QGridLayout *layout,
71 void drawCartesianLinearX();
72 void drawCartesianLinearY();
73 void drawCartesianLogX();
74 void drawCartesianLogY();
75 void drawPolarLinearRadius();
76 void drawPolarLogRadius();
77 void drawPolarTheta();
78 void loadComboBoxDate();
79 void loadComboBoxTime();
80 void loadComboBoxUnitsNonPolar (QComboBox &cmb,
81 CoordUnitsNonPolarTheta coordUnits);
82 void loadComboBoxUnitsPolar (QComboBox &cmb,
83 CoordUnitsPolarTheta coordUnits);
84 void resetSceneRectangle();
85 void updateControls();
86 void updateCoordUnits();
89 QGroupBox *m_boxCoordsType;
90 QRadioButton *m_btnCartesian;
91 QRadioButton *m_btnPolar;
93 QGroupBox *m_boxXTheta;
94 QRadioButton *m_xThetaLinear;
95 QRadioButton *m_xThetaLog;
96 QComboBox *m_cmbXThetaUnits;
98 QGroupBox *m_boxYRadius;
99 QRadioButton *m_yRadiusLinear;
100 QRadioButton *m_yRadiusLog;
101 QComboBox *m_cmbYRadiusUnits;
102 QLineEdit *m_editOriginRadius;
105 QComboBox *m_cmbDate;
106 QComboBox *m_cmbTime;
108 QGraphicsScene *m_scenePreview;
Abstract base class for all Settings dialogs.
CmdMediator & cmdMediator()
Provide access to Document information wrapped inside CmdMediator.
MainWindow & mainWindow()
Get method for MainWindow.
Dialog for editing coordinates settings.
virtual QWidget * createSubPanel()
Create dialog-specific panel to which base class will add Ok and Cancel buttons.
DlgSettingsCoords(MainWindow &mainWindow)
Single constructor.
virtual void createOptionalSaveDefault(QHBoxLayout *layout)
Let subclass define an optional Save As Default button.
virtual void load(CmdMediator &cmdMediator)
Load settings from Document.
virtual void handleOk()
Process slotOk.
Abstract validator for all numeric formats.
Model for DlgSettingsCoords and CmdSettingsCoords.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Class that modifies QGraphicsView to automatically expand/shrink the view to fit the window,...