00001 /****************************************************************************************************** 00002 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released * 00003 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file * 00004 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. * 00005 ******************************************************************************************************/ 00006 00007 #ifndef CMD_SETTINGS_SEGMENTS_H 00008 #define CMD_SETTINGS_SEGMENTS_H 00009 00010 #include "CmdAbstract.h" 00011 #include "DocumentModelSegments.h" 00012 00013 class QXmlStreamReader; 00014 00016 class CmdSettingsSegments : public CmdAbstract 00017 { 00018 public: 00020 CmdSettingsSegments(MainWindow &mainWindow, 00021 Document &document, 00022 const DocumentModelSegments &modelSegmentsBefore, 00023 const DocumentModelSegments &modelSegmentsAfter); 00024 00026 CmdSettingsSegments(MainWindow &mainWindow, 00027 Document &document, 00028 const QString &cmdDescription, 00029 QXmlStreamReader &reader); 00030 00031 virtual ~CmdSettingsSegments(); 00032 00033 virtual void cmdRedo (); 00034 virtual void cmdUndo (); 00035 virtual void saveXml (QXmlStreamWriter &writer) const; 00036 00037 private: 00038 CmdSettingsSegments(); 00039 00040 DocumentModelSegments m_modelSegmentsBefore; 00041 DocumentModelSegments m_modelSegmentsAfter; 00042 }; 00043 00044 #endif // CMD_SETTINGS_SEGMENTS_H