Engauge Digitizer  2
 All Classes Functions Variables Typedefs Enumerations Friends Pages
MainWindowModel.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 MAIN_WINDOW_MODEL_H
8 #define MAIN_WINDOW_MODEL_H
9 
10 #include "DocumentModelAbstractBase.h"
11 #include "ImportCropping.h"
12 #include "MainTitleBarFormat.h"
13 #include <QLocale>
14 #include <QString>
15 #include "ZoomControl.h"
16 #include "ZoomFactorInitial.h"
17 
18 class QTextStream;
19 
20 extern bool DEFAULT_DRAG_DROP_EXPORT;
21 extern int DEFAULT_SIGNIFICANT_DIGITS;
22 extern bool DEFAULT_SMALL_DIALOGS;
23 
29 {
30 public:
33 
35  MainWindowModel(const MainWindowModel &other);
36 
39 
41  bool dragDropExport () const;
42 
43  virtual void loadXml(QXmlStreamReader &reader);
44 
46  double highlightOpacity() const;
47 
49  ImportCropping importCropping () const;
50 
52  QLocale locale() const;
53 
55  MainTitleBarFormat mainTitleBarFormat () const;
56 
58  int maximumGridLines () const;
59 
61  int pdfResolution () const;
62 
64  void printStream (QString indentation,
65  QTextStream &str) const;
66 
67  virtual void saveXml(QXmlStreamWriter &writer) const;
68 
70  void setDragDropExport (bool dragDropExport);
71 
73  void setHighlightOpacity (double highlightOpacity);
74 
76  void setLocale (QLocale::Language language,
77  QLocale::Country country);
78 
80  void setLocale (const QLocale &locale);
81 
83  void setImportCropping (ImportCropping importCropping);
84 
86  void setMainTitleBarFormat (MainTitleBarFormat mainTitleBarFormat);
87 
89  void setMaximumGridLines (int maximumGridLines);
90 
92  void setPdfResolution (int resolution);
93 
96 
98  void setSmallDialogs (bool smallDialogs);
99 
101  void setZoomControl (ZoomControl zoomControl);
102 
104  void setZoomFactorInitial (ZoomFactorInitial zoomFactorInitial);
105 
107  int significantDigits () const;
108 
110  bool smallDialogs () const;
111 
113  ZoomControl zoomControl () const;
114 
116  ZoomFactorInitial zoomFactorInitial () const;
117 
118 private:
119 
120  QLocale m_locale;
121  ZoomControl m_zoomControl;
122  ZoomFactorInitial m_zoomFactorInitial;
123  MainTitleBarFormat m_mainTitleBarFormat;
124  int m_pdfResolution;
125  ImportCropping m_importCropping;
126  int m_maximumGridLines;
127  double m_highlightOpacity;
128  bool m_smallDialogs;
129  bool m_dragDropExport;
130  int m_significantDigits;
131 
132 };
133 
134 #endif // MAIN_WINDOW_MODEL_H
MainWindowModel & operator=(const MainWindowModel &other)
Assignment constructor.
Abstract base class for document models. This class enforces a common interface for the leaf subclass...
void setDragDropExport(bool dragDropExport)
Set method for drag and drop export.
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.
void setSignificantDigits(int significantDigits)
Set method for significant digits.
MainTitleBarFormat mainTitleBarFormat() const
Get method for MainWindow titlebar filename format.
void setHighlightOpacity(double highlightOpacity)
Set method for highlight opacity.
void setLocale(QLocale::Language language, QLocale::Country country)
Set method for locale given attributes.
int maximumGridLines() const
Maximum number of grid lines.
MainWindowModel()
Default constructor.
bool dragDropExport() const
Get method for drag and drop export.
bool smallDialogs() const
Get method for small dialogs flag.
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
int significantDigits() const
Get method for significant digits.
ZoomControl zoomControl() const
Get method for zoom control.
Model for DlgSettingsMainWindow.
void printStream(QString indentation, QTextStream &str) const
Debugging method that supports print method of this class and printStream method of some other class(...
void setMaximumGridLines(int maximumGridLines)
Set method for maximum number of grid lines.
double highlightOpacity() const
Get method for highlight opacity.
int pdfResolution() const
Get method for resolution of imported PDF files, in dots per inch.
void setZoomControl(ZoomControl zoomControl)
Set method for zoom control.
void setMainTitleBarFormat(MainTitleBarFormat mainTitleBarFormat)
Set method for MainWindow titlebar filename format.
void setZoomFactorInitial(ZoomFactorInitial zoomFactorInitial)
Set method for initial zoom factor.
ZoomFactorInitial zoomFactorInitial() const
Get method for initial zoom factor.
void setSmallDialogs(bool smallDialogs)
Set method for small dialogs flag.
ImportCropping importCropping() const
Get method for import cropping.
QLocale locale() const
Get method for locale.
void setPdfResolution(int resolution)
Set method for resolution of imported PDF files, in dots per inch.
void setImportCropping(ImportCropping importCropping)
Set method for import cropping.