Engauge Digitizer 2
Loading...
Searching...
No Matches
DlgSettingsDigitizeCurve.h
1/******************************************************************************************************
2 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5 ******************************************************************************************************/
6
7#ifndef DLG_SETTINGS_DIGITIZE_CURVE_H
8#define DLG_SETTINGS_DIGITIZE_CURVE_H
9
10#include "DlgSettingsAbstractBase.h"
11
13class QCheckBox;
14class QComboBox;
15class QGridLayout;
16class QGraphicsPixmapItem;
17class QGraphicsScene;
18class QGroupBox;
19class QRadioButton;
20class QSpinBox;
21class ViewPreview;
22
27{
28 Q_OBJECT;
29
30public:
34
35 virtual void createOptionalSaveDefault (QHBoxLayout *layout);
36 virtual QWidget *createSubPanel ();
37 virtual void load (CmdMediator &cmdMediator);
38
39private slots:
40 void slotCursorCustom (bool);
41 void slotCursorInnerRadius (const QString &);
42 void slotCursorLineWidth (const QString &);
43 void slotCursorSize (const QString &);
44 void slotCursorStandard (bool);
45
46protected:
47 virtual void handleOk ();
48
49private:
50
51 void createControls (QGridLayout *layout, int &row);
52 void createPreview (QGridLayout *layout, int &row);
53 void updateControls();
54 void updatePreview();
55
56 QGroupBox *m_boxCursor;
57 QRadioButton *m_btnStandard;
58 QRadioButton *m_btnCustom;
59 QComboBox *m_cmbSize;
60 QSpinBox *m_spinInnerRadius;
61 QSpinBox *m_spinLineWidth;
62
63 QGraphicsScene *m_scenePreview;
64 ViewPreview *m_viewPreview;
65
66 DocumentModelDigitizeCurve *m_modelDigitizeCurveBefore;
67 DocumentModelDigitizeCurve *m_modelDigitizeCurveAfter;
68};
69
70#endif // DLG_SETTINGS_DIGITIZE_CURVE_H
Command queue stack.
Definition CmdMediator.h:24
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 DigitizeStateCurve settings.
virtual void handleOk()
Process slotOk.
virtual void createOptionalSaveDefault(QHBoxLayout *layout)
Let subclass define an optional Save As Default button.
virtual QWidget * createSubPanel()
Create dialog-specific panel to which base class will add Ok and Cancel buttons.
virtual void load(CmdMediator &cmdMediator)
Load settings from Document.
Model for DlgSettingsDigitizeCurve and CmdSettingsDigitizeCurve.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Definition MainWindow.h:78
Class that modifies QGraphicsView to automatically expand/shrink the view to fit the window,...
Definition ViewPreview.h:15