QElectroTech 0.100.0-dev
Loading...
Searching...
No Matches
changeelementinformationcommand.h
Go to the documentation of this file.
1/*
2 Copyright 2006-2024 The QElectroTech Team
3 This file is part of QElectroTech.
4
5 QElectroTech is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 2 of the License, or
8 (at your option) any later version.
9
10 QElectroTech is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
17*/
18#ifndef CHANGEELEMENTINFORMATIONCOMMAND_H
19#define CHANGEELEMENTINFORMATIONCOMMAND_H
20
21#include "../diagramcontext.h"
22
23#include <QUndoCommand>
24
25class Element;
26
31class ChangeElementInformationCommand : public QUndoCommand
32{
33 public:
35 Element *elmt,
36 const DiagramContext &old_info,
37 const DiagramContext &new_info,
38 QUndoCommand *parent = nullptr);
39
40 ChangeElementInformationCommand(QMap<QPointer<Element>, QPair<DiagramContext, DiagramContext>> map,
41 QUndoCommand *parent = nullptr);
42
43 int id() const override {return 1;}
44 bool mergeWith(const QUndoCommand *other) override;
45 void undo() override;
46 void redo() override;
47
48 private:
49 void updateProjectDB();
50
51 private:
52 QMap<QPointer<Element>, QPair<DiagramContext, DiagramContext>> m_map;
53};
54
55#endif // CHANGEELEMENTINFORMATIONCOMMAND_H
The ChangeElementInformationCommand class This class manage undo/redo to change the element informati...
Definition changeelementinformationcommand.h:32
void redo() override
ChangeElementInformationCommand::redo.
Definition changeelementinformationcommand.cpp:100
bool mergeWith(const QUndoCommand *other) override
Definition changeelementinformationcommand.cpp:53
int id() const override
Definition changeelementinformationcommand.h:43
void undo() override
ChangeElementInformationCommand::undo.
Definition changeelementinformationcommand.cpp:89
void updateProjectDB()
Definition changeelementinformationcommand.cpp:108
QMap< QPointer< Element >, QPair< DiagramContext, DiagramContext > > m_map
Definition changeelementinformationcommand.h:52
Definition diagramcontext.h:57
Definition element.h:43