Seamly2D
Code documentation
savepieceoptions.h
Go to the documentation of this file.
1 /***************************************************************************
2  ** @file savepieceoptions.h
3  ** @author Douglas S Caskey
4  ** @date Dec 11, 2022
5  **
6  ** @copyright
7  ** Copyright (C) 2017 - 2022 Seamly, LLC
8  ** https://github.com/fashionfreedom/seamly2d
9  **
10  ** @brief
11  ** Seamly2D is free software: you can redistribute it and/or modify
12  ** it under the terms of the GNU General Public License as published by
13  ** the Free Software Foundation, either version 3 of the License, or
14  ** (at your option) any later version.
15  **
16  ** Seamly2D is distributed in the hope that it will be useful,
17  ** but WITHOUT ANY WARRANTY; without even the implied warranty of
18  ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  ** GNU General Public License for more details.
20  **
21  ** You should have received a copy of the GNU General Public License
22  ** along with Seamly2D. If not, see <http://www.gnu.org/licenses/>.
23  **************************************************************************/
24 
25 /************************************************************************
26  **
27  ** @file
28  ** @author Roman Telezhynskyi <dismine(at)gmail.com>
29  ** @date 9 11, 2016
30  **
31  ** @brief
32  ** @copyright
33  ** This source code is part of the Valentine project, a pattern making
34  ** program, whose allow create and modeling patterns of clothing.
35  ** Copyright (C) 2016 Valentina project
36  ** <https://bitbucket.org/dismine/valentina> All Rights Reserved.
37  **
38  ** Valentina is free software: you can redistribute it and/or modify
39  ** it under the terms of the GNU General Public License as published by
40  ** the Free Software Foundation, either version 3 of the License, or
41  ** (at your option) any later version.
42  **
43  ** Valentina is distributed in the hope that it will be useful,
44  ** but WITHOUT ANY WARRANTY; without even the implied warranty of
45  ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46  ** GNU General Public License for more details.
47  **
48  ** You should have received a copy of the GNU General Public License
49  ** along with Valentina. If not, see <http://www.gnu.org/licenses/>.
50  **
51  *************************************************************************/
52 
53 #ifndef SAVEPIECEOPTIONS_H
54 #define SAVEPIECEOPTIONS_H
55 
56 #include <QtGlobal>
57 
58 #include "vpiece.h"
59 #include "vundocommand.h"
60 
62 {
63 public:
64  SavePieceOptions(const VPiece &oldPiece, const VPiece &newPiece, VAbstractPattern *doc,
65  quint32 id, QUndoCommand *parent = nullptr);
66 
67  virtual ~SavePieceOptions();
68 
69  virtual void undo() Q_DECL_OVERRIDE;
70  virtual void redo() Q_DECL_OVERRIDE;
71  virtual bool mergeWith(const QUndoCommand *command) Q_DECL_OVERRIDE;
72  virtual int id() const Q_DECL_OVERRIDE;
73  quint32 pieceId() const;
74  VPiece getNewPiece() const;
75 
76 private:
77  Q_DISABLE_COPY(SavePieceOptions)
78 
81 };
82 
83 //---------------------------------------------------------------------------------------------------------------------
84 inline quint32 SavePieceOptions::pieceId() const
85 {
86  return nodeId;
87 }
88 
89 //---------------------------------------------------------------------------------------------------------------------
91 {
92  return m_newPiece;
93 }
94 
95 #endif // SAVEPIECEOPTIONS_H
SavePieceOptions(const VPiece &oldPiece, const VPiece &newPiece, VAbstractPattern *doc, quint32 id, QUndoCommand *parent=nullptr)
virtual ~SavePieceOptions()
virtual void undo() Q_DECL_OVERRIDE
virtual void redo() Q_DECL_OVERRIDE
quint32 pieceId() const
virtual bool mergeWith(const QUndoCommand *command) Q_DECL_OVERRIDE
const VPiece m_oldPiece
virtual int id() const Q_DECL_OVERRIDE
VPiece getNewPiece() const
Definition: vpiece.h:88
VAbstractPattern * doc
Definition: vundocommand.h:106
quint32 nodeId
Definition: vundocommand.h:107