Engauge Digitizer  2
DlgSettingsMainWindow.h
Go to the documentation of this file.
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_MAIN_WINDOW_H
8 #define DLG_SETTINGS_MAIN_WINDOW_H
9 
11 #include <QLocale>
12 #include <QString>
13 #include <QStringList>
14 
15 class QCheckBox;
16 class QComboBox;
17 class QDoubleSpinBox;
18 class QGridLayout;
19 class QPushButton;
20 class QSpinBox;
21 class MainWindowModel;
22 
25 {
26  Q_OBJECT;
27 
28 public:
31  virtual ~DlgSettingsMainWindow();
32 
33  virtual void createOptionalSaveDefault (QHBoxLayout *layout);
34  virtual QWidget *createSubPanel ();
35  virtual void load (CmdMediator &cmdMediator); // Not used. Use loadMainWindowModel instead
36 
39  const MainWindowModel &modelMainWindow);
40  virtual void setSmallDialogs (bool smallDialogs);
41 
42 private slots:
43  void slotDragDropExport (bool);
44  void slotHighlightOpacity (double);
45  void slotImageReplaceRenamesDocument (bool);
46  void slotImportCropping (int index);
47  void slotLocale (int index);
48  void slotMaximumGridLines (int limit);
49  void slotPdfResolution (const QString);
50  void slotRecentFileClear ();
51  void slotSignificantDigits (int);
52  void slotSmallDialogs(bool);
53  void slotTitleBarFormat(bool);
54  void slotZoomControl (const QString);
55  void slotZoomFactor (const QString);
56 
57 protected:
58  virtual void handleOk ();
59 
60 private:
61 
62  void createControls (QGridLayout *layout,
63  int &row);
64  QStringList gatherQmFilenames () const;
65  void updateControls();
66 
67  QComboBox *m_cmbZoomFactor;
68  QComboBox *m_cmbZoomControl;
69  QComboBox *m_cmbLocale;
70  QComboBox *m_cmbImportCropping;
71  QPushButton *m_btnRecentClear;
72  QCheckBox *m_chkTitleBarFormat;
73  QComboBox *m_cmbPdfResolution;
74  QSpinBox *m_spinMaximumGridLines;
75  QDoubleSpinBox *m_spinHighlightOpacity;
76  QCheckBox *m_chkSmallDialogs;
77  QCheckBox *m_chkDragDropExport;
78  QSpinBox *m_spinSignificantDigits;
79  QCheckBox *m_chkImageReplaceRenamesDocument;
80 
81  MainWindowModel *m_modelMainWindowBefore;
82  MainWindowModel *m_modelMainWindowAfter;
83 };
84 
85 #endif // DLG_SETTINGS_MAIN_WINDOW_H
DlgSettingsMainWindow::setSmallDialogs
virtual void setSmallDialogs(bool smallDialogs)
If false then dialogs have a minimum size so all controls are visible.
Definition: DlgSettingsMainWindow.cpp:353
DlgSettingsAbstractBase::mainWindow
MainWindow & mainWindow()
Get method for MainWindow.
Definition: DlgSettingsAbstractBase.cpp:122
DlgSettingsAbstractBase
Abstract base class for all Settings dialogs.
Definition: DlgSettingsAbstractBase.h:19
DlgSettingsMainWindow::DlgSettingsMainWindow
DlgSettingsMainWindow(MainWindow &mainWindow)
Single constructor.
Definition: DlgSettingsMainWindow.cpp:42
DlgSettingsMainWindow::createSubPanel
virtual QWidget * createSubPanel()
Create dialog-specific panel to which base class will add Ok and Cancel buttons.
Definition: DlgSettingsMainWindow.cpp:262
MainWindowModel
Model for DlgSettingsMainWindow.
Definition: MainWindowModel.h:29
MainWindow
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
Definition: MainWindow.h:90
DlgSettingsMainWindow::createOptionalSaveDefault
virtual void createOptionalSaveDefault(QHBoxLayout *layout)
Let subclass define an optional Save As Default button.
Definition: DlgSettingsMainWindow.cpp:257
DlgSettingsMainWindow::~DlgSettingsMainWindow
virtual ~DlgSettingsMainWindow()
Definition: DlgSettingsMainWindow.cpp:56
DlgSettingsMainWindow::loadMainWindowModel
void loadMainWindowModel(CmdMediator &cmdMediator, const MainWindowModel &modelMainWindow)
Replaced load method since the main window settings are independent of document, unlike other DlgSett...
Definition: DlgSettingsMainWindow.cpp:307
CmdMediator
Command queue stack.
Definition: CmdMediator.h:22
DlgSettingsMainWindow::load
virtual void load(CmdMediator &cmdMediator)
Load settings from Document.
Definition: DlgSettingsMainWindow.cpp:300
DlgSettingsMainWindow
Dialog for editing main window settings, which are entirely independent of all documents.
Definition: DlgSettingsMainWindow.h:23
DlgSettingsMainWindow::handleOk
virtual void handleOk()
Process slotOk.
Definition: DlgSettingsMainWindow.cpp:291
DlgSettingsAbstractBase::cmdMediator
CmdMediator & cmdMediator()
Provide access to Document information wrapped inside CmdMediator.
Definition: DlgSettingsAbstractBase.cpp:45
DlgSettingsAbstractBase.h