1 /******************************************************************************************************
2  * (C) 2019 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 CMD_GUIDELINE_ADD_Y_R_H
8 #define CMD_GUIDELINE_ADD_Y_R_H
9 
10 #include "CmdAbstract.h"
11 #include "GuidelineValues.h"
12 
13 class QXmlStreamReader;
14 
15 /// Command for adding one Y/R Guideline value
16 class CmdGuidelineAddYR : public CmdAbstract
17 {
18 public:
19   /// Constructor for normal creation
20   CmdGuidelineAddYR(MainWindow &mainWindow,
21                     Document &document,
22                     double value);
23 
24   /// Constructor for parsing error report file xml
25   CmdGuidelineAddYR(MainWindow &mainWindow,
26                     Document &document,
27                     const QString &cmdDescription,
28                     QXmlStreamReader &reader);
29 
30   virtual ~CmdGuidelineAddYR();
31 
32   virtual void cmdRedo ();
33   virtual void cmdUndo ();
34   virtual void saveXml (QXmlStreamWriter &writer) const;
35 
36 private:
37   CmdGuidelineAddYR();
38 
39   // Value
40   QString m_identifier;
41   double m_value;
42 
43 };
44 
45 #endif // CMD_GUIDELINE_ADD_Y_R_H
46