7 #include "CmdSettingsGridDisplay.h" 9 #include "DocumentSerialize.h" 11 #include "MainWindow.h" 12 #include <QXmlStreamReader> 15 const QString CMD_DESCRIPTION (
"Grid Display settings");
24 m_modelGridDisplayBefore (modelGridDisplayBefore),
25 m_modelGridDisplayAfter (modelGridDisplayAfter)
27 LOG4CPP_INFO_S ((*mainCat)) <<
"CmdSettingsGridDisplay::CmdSettingsGridDisplay";
32 const QString &cmdDescription,
33 QXmlStreamReader &reader) :
38 LOG4CPP_INFO_S ((*mainCat)) <<
"CmdSettingsGridDisplay::CmdSettingsGridDisplay";
44 while ((reader.tokenType() != QXmlStreamReader::EndElement) ||
45 (reader.name() != DOCUMENT_SERIALIZE_CMD)){
46 loadNextFromReader(reader);
48 xmlExitWithError (reader,
50 .arg (QObject::tr (
"Reached end of file before finding end element for"))
51 .arg (DOCUMENT_SERIALIZE_CMD));
56 if ((reader.tokenType() == QXmlStreamReader::StartElement) &&
57 (reader.name() == DOCUMENT_SERIALIZE_GRID_DISPLAY)) {
61 m_modelGridDisplayBefore.
loadXml (reader);
66 m_modelGridDisplayAfter.
loadXml (reader);
73 reader.raiseError (
"Cannot read grid display settings");
77 CmdSettingsGridDisplay::~CmdSettingsGridDisplay()
83 LOG4CPP_INFO_S ((*mainCat)) <<
"CmdSettingsGridDisplay::cmdRedo";
93 LOG4CPP_INFO_S ((*mainCat)) <<
"CmdSettingsGridDisplay::cmdUndo";
103 writer.writeStartElement(DOCUMENT_SERIALIZE_CMD);
104 writer.writeAttribute(DOCUMENT_SERIALIZE_CMD_TYPE, DOCUMENT_SERIALIZE_CMD_SETTINGS_GRID_DISPLAY);
105 writer.writeAttribute(DOCUMENT_SERIALIZE_CMD_DESCRIPTION, QUndoCommand::text ());
106 m_modelGridDisplayBefore.
saveXml (writer);
107 m_modelGridDisplayAfter.
saveXml(writer);
108 writer.writeEndElement();
Model for DlgSettingsGridDisplay and CmdSettingsGridDisplay.
Wrapper around QUndoCommand. This simplifies the more complicated feature set of QUndoCommand.
CmdSettingsGridDisplay(MainWindow &mainWindow, Document &document, const DocumentModelGridDisplay &modelGridDisplayBefore, const DocumentModelGridDisplay &modelGridDisplayAfter)
Constructor for normal creation.
virtual void cmdRedo()
Redo method that is called when QUndoStack is moved one command forward.
void saveOrCheckPostCommandDocumentStateHash(const Document &document)
Save, when called the first time, a hash value representing the state of the Document.
virtual void cmdUndo()
Undo method that is called when QUndoStack is moved one command backward.
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
void saveOrCheckPreCommandDocumentStateHash(const Document &document)
Save, when called the first time, a hash value representing the state of the Document.
void updateSettingsGridDisplay(const DocumentModelGridDisplay &modelGridDisplay)
Update with new grid display properties.
MainWindow & mainWindow()
Return the MainWindow so it can be updated by this command as a last step.
void updateAfterCommand()
See GraphicsScene::updateAfterCommand.
Storage of one imported image and the data attached to that image.
virtual void saveXml(QXmlStreamWriter &writer) const
Save commands as xml for later uploading.
Document & document()
Return the Document that this command will modify during redo and undo.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.