1 #include "CmdMediator.h"
2 #include "DocumentModelAxesChecker.h"
3 #include "DocumentSerialize.h"
6 #include "QtToString.h"
7 #include <QXmlStreamWriter>
10 const int DEFAULT_CHECKER_SECONDS = 3;
14 const ColorPalette DEFAULT_LINE_COLOR = COLOR_PALETTE_RED;
17 m_checkerMode (CHECKER_MODE_N_SECONDS),
18 m_checkerSeconds (DEFAULT_CHECKER_SECONDS),
19 m_lineColor (DEFAULT_LINE_COLOR)
24 m_checkerMode (document.modelAxesChecker().checkerMode()),
25 m_checkerSeconds (document.modelAxesChecker().checkerSeconds()),
26 m_lineColor (document.modelAxesChecker().lineColor())
31 m_checkerMode (other.checkerMode()),
32 m_checkerSeconds (other.checkerSeconds()),
33 m_lineColor (other.lineColor())
53 return m_checkerSeconds;
63 LOG4CPP_INFO_S ((*mainCat)) <<
"DocumentModelAxesChecker::loadXml";
67 QXmlStreamAttributes attributes = reader.attributes();
69 if (attributes.hasAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_MODE) &&
70 attributes.hasAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_SECONDS) &&
71 attributes.hasAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_LINE_COLOR)) {
73 setCheckerMode ((CheckerMode) attributes.value(DOCUMENT_SERIALIZE_AXES_CHECKER_MODE).toInt());
74 setCheckerSeconds (attributes.value(DOCUMENT_SERIALIZE_AXES_CHECKER_SECONDS).toInt());
75 setLineColor ((ColorPalette) attributes.value(DOCUMENT_SERIALIZE_AXES_CHECKER_LINE_COLOR).toInt());
78 while ((reader.tokenType() != QXmlStreamReader::EndElement) ||
79 (reader.name() != DOCUMENT_SERIALIZE_AXES_CHECKER)){
80 loadNextFromReader(reader);
89 reader.raiseError (
"Cannot read axes checker data");
94 QTextStream &str)
const
96 str << indentation <<
"DocumentModelAxesChecker\n";
98 indentation += INDENTATION_DELTA;
100 str << indentation <<
"checkerMode=" << checkerModeToString (m_checkerMode) <<
"\n";
101 str << indentation <<
"checkerSeconds=" << m_checkerSeconds <<
"\n";
102 str << indentation <<
"color=" << colorPaletteToString (m_lineColor) <<
"\n";
107 LOG4CPP_INFO_S ((*mainCat)) <<
"DocumentModelAxesChecker::saveXml";
109 writer.writeStartElement(DOCUMENT_SERIALIZE_AXES_CHECKER);
110 writer.writeAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_MODE, QString::number (m_checkerMode));
111 writer.writeAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_SECONDS, QString::number (m_checkerSeconds));
112 writer.writeAttribute(DOCUMENT_SERIALIZE_AXES_CHECKER_LINE_COLOR, QString::number (m_lineColor));
113 writer.writeEndElement();
123 m_checkerSeconds = seconds;
int checkerSeconds() const
Get method for checker lifetime in seconds.
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.
void setCheckerMode(CheckerMode checkerMode)
Set method for checker mode.
void setCheckerSeconds(int seconds)
Set method for checker lifetime in seconds.
DocumentModelAxesChecker()
Default constructor.
ColorPalette lineColor() const
Get method for line color.
void setLineColor(ColorPalette lineColor)
Set method for line color.
CheckerMode checkerMode() const
Get method for checker lifetime mode.
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
Storage of one imported image and the data attached to that image.
Model for DlgSettingsAxesChecker and CmdSettingsAxesChecker.
DocumentModelAxesChecker & operator=(const DocumentModelAxesChecker &other)
Assignment constructor.
void printStream(QString indentation, QTextStream &str) const
Debugging method that supports print method of this class and printStream method of some other class(...