7 #include "CmdMediator.h" 8 #include "DocumentSerialize.h" 9 #include "GraphicsPoint.h" 10 #include "GridLineLimiter.h" 11 #include "ImportCroppingUtilBase.h" 13 #include "MainWindowModel.h" 14 #include "PdfResolution.h" 17 #include <QTextStream> 18 #include "QtToString.h" 19 #include <QXmlStreamWriter> 21 #include "ZoomFactorInitial.h" 24 const QLocale::NumberOption HIDE_GROUP_SEPARATOR = QLocale::OmitGroupSeparator;
27 m_zoomControl (ZOOM_CONTROL_MENU_WHEEL_PLUSMINUS),
28 m_zoomFactorInitial (DEFAULT_ZOOM_FACTOR_INITIAL),
29 m_mainTitleBarFormat (MAIN_TITLE_BAR_FORMAT_PATH),
30 m_pdfResolution (DEFAULT_IMPORT_PDF_RESOLUTION),
31 m_importCropping (DEFAULT_IMPORT_CROPPING),
32 m_maximumGridLines (DEFAULT_MAXIMUM_GRID_LINES),
33 m_highlightOpacity (DEFAULT_HIGHLIGHT_OPACITY)
66 return m_highlightOpacity;
71 return m_importCropping;
76 LOG4CPP_INFO_S ((*mainCat)) <<
"MainWindowModel::loadXml";
81 while ((reader.tokenType() != QXmlStreamReader::EndElement) ||
82 (reader.name() != DOCUMENT_SERIALIZE_MAIN_WINDOW)){
83 loadNextFromReader(reader);
91 reader.raiseError (QObject::tr (
"Cannot read main window data"));
102 return m_mainTitleBarFormat;
107 return m_maximumGridLines;
112 return m_pdfResolution;
116 QTextStream &str)
const 118 str << indentation <<
"MainWindowModel\n";
120 indentation += INDENTATION_DELTA;
122 str << indentation <<
"locale=" << m_locale.name() <<
"\n";
123 str << indentation <<
"zoomControl=" << m_zoomControl <<
"\n";
124 str << indentation <<
"zoomFactorInitial=" << m_zoomFactorInitial <<
"\n";
125 str << indentation <<
"mainWindowTitleBarFormat=" << (m_mainTitleBarFormat == MAIN_TITLE_BAR_FORMAT_NO_PATH ?
128 str << indentation <<
"pdfResolution=" << m_pdfResolution <<
"\n";
130 str << indentation <<
"maximumGridLines=" << m_maximumGridLines <<
"\n";
131 str << indentation <<
"highlightOpacity=" << m_highlightOpacity <<
"\n";
136 LOG4CPP_INFO_S ((*mainCat)) <<
"MainWindowModel::saveXml";
138 writer.writeStartElement(DOCUMENT_SERIALIZE_MAIN_WINDOW);
139 writer.writeEndElement();
153 QLocale::Country country)
157 locale.setNumberOptions(HIDE_GROUP_SEPARATOR);
165 m_locale.setNumberOptions(HIDE_GROUP_SEPARATOR);
180 m_pdfResolution = resolution;
195 return m_zoomControl;
200 return m_zoomFactorInitial;
static QString importCroppingToString(ImportCropping importCropping)
Option as string for display to user.
MainWindowModel & operator=(const MainWindowModel &other)
Assignment constructor.
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.
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.
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
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.
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.