00001
00002
00003
00004
00005
00006
00007 #ifndef DLG_SETTINGS_GRID_DISPLAY_H
00008 #define DLG_SETTINGS_GRID_DISPLAY_H
00009
00010 #include "DlgSettingsAbstractBase.h"
00011 #include "GridLines.h"
00012
00013 class DocumentModelGridDisplay;
00014 class QCheckBox;
00015 class QComboBox;
00016 class QDoubleValidator;
00017 class QGraphicsScene;
00018 class QGridLayout;
00019 class QGroupBox;
00020 class QHBoxLayout;
00021 class QLineEdit;
00022 class ViewPreview;
00023
00025 class DlgSettingsGridDisplay : public DlgSettingsAbstractBase
00026 {
00027 Q_OBJECT;
00028
00029 public:
00031 DlgSettingsGridDisplay(MainWindow &mainWindow);
00032 virtual ~DlgSettingsGridDisplay();
00033
00034 virtual void createOptionalSaveDefault (QHBoxLayout *layout);
00035 virtual QWidget *createSubPanel ();
00036 virtual void load (CmdMediator &cmdMediator);
00037 virtual void setSmallDialogs (bool smallDialogs);
00038
00039 private slots:
00040
00041 void slotColor (const QString &);
00042
00043 void slotDisableX(const QString &);
00044 void slotCountX(const QString &);
00045 void slotStartX(const QString &);
00046 void slotStepX(const QString &);
00047 void slotStopX(const QString &);
00048
00049 void slotDisableY(const QString &);
00050 void slotCountY(const QString &);
00051 void slotStartY(const QString &);
00052 void slotStepY(const QString &);
00053 void slotStopY(const QString &);
00054
00055 protected:
00056 virtual void handleOk ();
00057
00058 private:
00059
00060 void createDisplayCommon (QGridLayout *layout, int &row);
00061 void createDisplayGridLinesX (QGridLayout *layoutGridLines, int &row);
00062 void createDisplayGridLinesY (QGridLayout *layoutGridLines, int &row);
00063 void createPreview (QGridLayout *layout, int &row);
00064 bool textItemsAreValid () const;
00065 void updateControls ();
00066 void updateDisplayedVariableX ();
00067 void updateDisplayedVariableY ();
00068 void updatePreview();
00069
00070 QGroupBox *m_groupX;
00071 QComboBox *m_cmbDisableX;
00072 QLineEdit *m_editCountX;
00073 QLineEdit *m_editStartX;
00074 QLineEdit *m_editStepX;
00075 QLineEdit *m_editStopX;
00076 QDoubleValidator *m_validatorCountX;
00077 QDoubleValidator *m_validatorStartX;
00078 QDoubleValidator *m_validatorStepX;
00079 QDoubleValidator *m_validatorStopX;
00080
00081 QGroupBox *m_groupY;
00082 QComboBox *m_cmbDisableY;
00083 QLineEdit *m_editCountY;
00084 QLineEdit *m_editStartY;
00085 QLineEdit *m_editStepY;
00086 QLineEdit *m_editStopY;
00087 QDoubleValidator *m_validatorCountY;
00088 QDoubleValidator *m_validatorStartY;
00089 QDoubleValidator *m_validatorStepY;
00090 QDoubleValidator *m_validatorStopY;
00091
00092 QComboBox *m_cmbColor;
00093
00094 GridLines m_gridLines;
00095
00096 QGraphicsScene *m_scenePreview;
00097 ViewPreview *m_viewPreview;
00098
00099 DocumentModelGridDisplay *m_modelGridDisplayBefore;
00100 DocumentModelGridDisplay *m_modelGridDisplayAfter;
00101 };
00102
00103 #endif // DLG_SETTINGS_GRID_DISPLAY_H