QmlDesigner: Add transaction option to ValuesChangedCommand

This option allows to define transactions for
ValuesChangedCommand and ValuesModifiedCommand.

Change-Id: Ia603027b5c431f1a1912d8959561f92a19fd0243
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
This commit is contained in:
Thomas Hartmann
2019-10-25 15:47:43 +02:00
parent fea693d9f9
commit 7b2b040f41
4 changed files with 39 additions and 11 deletions

View File

@@ -39,6 +39,7 @@ class ValuesChangedCommand
friend bool operator ==(const ValuesChangedCommand &first, const ValuesChangedCommand &second);
public:
enum TransactionOption { Start, End, None };
ValuesChangedCommand();
explicit ValuesChangedCommand(const QVector<PropertyValueContainer> &valueChangeVector);
@@ -48,6 +49,7 @@ public:
static void removeSharedMemorys(const QVector<qint32> &keyNumberVector);
void sort();
TransactionOption transactionOption = TransactionOption::None;
private:
QVector<PropertyValueContainer> m_valueChangeVector;
@@ -69,12 +71,11 @@ QDebug operator <<(QDebug debug, const ValuesChangedCommand &instance);
class ValuesModifiedCommand : public ValuesChangedCommand
{
public:
ValuesModifiedCommand()
{}
ValuesModifiedCommand() = default;
explicit ValuesModifiedCommand(const QVector<PropertyValueContainer> &valueChangeVector)
: ValuesChangedCommand(valueChangeVector)
{}
};
} // namespace QmlDesigner