libquentier
0.5.0
The library for rich desktop clients of Evernote service
Loading...
Searching...
No Matches
headers
quentier
utility
QuentierUndoCommand.h
1
/*
2
* Copyright 2016-2020 Dmitry Ivanov
3
*
4
* This file is part of libquentier
5
*
6
* libquentier is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU Lesser General Public License as published by
8
* the Free Software Foundation, version 3 of the License.
9
*
10
* libquentier 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 Lesser General Public License for more details.
14
*
15
* You should have received a copy of the GNU Lesser General Public License
16
* along with libquentier. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef LIB_QUENTIER_UTILITY_QUENTIER_UNDO_COMMAND_H
20
#define LIB_QUENTIER_UTILITY_QUENTIER_UNDO_COMMAND_H
21
22
#include <quentier/types/ErrorString.h>
23
24
#include <QObject>
25
#include <QUndoCommand>
26
27
namespace
quentier {
28
54
class
QuentierUndoCommand :
public
QObject,
public
QUndoCommand
55
{
56
Q_OBJECT
57
public
:
58
QuentierUndoCommand(QUndoCommand * parent =
nullptr
);
59
QuentierUndoCommand(
const
QString & text, QUndoCommand * parent =
nullptr
);
60
virtual
~QuentierUndoCommand()
override
;
61
62
virtual
void
undo()
override
final
;
63
virtual
void
redo()
override
final
;
64
65
bool
onceUndoExecuted()
const
66
{
67
return
m_onceUndoExecuted;
68
}
69
70
Q_SIGNALS:
71
void
notifyError(
ErrorString
error);
72
73
protected
:
74
virtual
void
undoImpl() = 0;
75
virtual
void
redoImpl() = 0;
76
77
private
:
78
bool
m_onceUndoExecuted;
79
};
80
81
}
// namespace quentier
82
83
#endif
// LIB_QUENTIER_UTILITY_QUENTIER_UNDO_COMMAND_H
quentier::ErrorString
The ErrorString class encapsulates two (or more) strings which are meant to contain translatable (bas...
Definition
ErrorString.h:44
Generated on
for libquentier by
1.14.0