File indexing completed on 2024-05-05 05:55:38
0001 /* 0002 This file is part of the Okteta Core library, made within the KDE community. 0003 0004 SPDX-FileCopyrightText: 2008 Friedrich W. H. Kossebau <kossebau@kde.org> 0005 0006 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0007 */ 0008 0009 #ifndef KPIECETABLE_TESTPIECETABLECHANGE_HPP 0010 #define KPIECETABLE_TESTPIECETABLECHANGE_HPP 0011 0012 // lib 0013 #include <piecetable/abstractpiecetablechange.hpp> 0014 #include <piecetable/piece.hpp> 0015 // Qt 0016 #include <QString> 0017 0018 namespace KPieceTable { 0019 0020 class TestPieceTableChange : public AbstractPieceTableChange 0021 { 0022 public: 0023 explicit 0024 TestPieceTableChange(int typeId = -1, const QString& description = QString(), 0025 int position = 0, int storagePosition = 0, int storageId = Piece::ChangeStorage, 0026 int replacedStoragePosition = 0, int replacedStorageId = Piece::ChangeStorage); 0027 0028 ~TestPieceTableChange() override; 0029 0030 public: // AbstractPieceTableChange API 0031 int type() const override; 0032 QString description() const override; 0033 bool merge(const AbstractPieceTableChange* other) override; 0034 AddressRange apply(PieceTable* pieceTable) const override; 0035 AddressRange revert(PieceTable* pieceTable) const override; 0036 ArrayChangeMetrics metrics() const override; 0037 int dataSize() const override; 0038 0039 private: 0040 int mTypeId; 0041 QString mDescription; 0042 int mPosition; 0043 int mStoragePosition; 0044 int mStorageId; 0045 0046 int mReplacedStoragePosition; 0047 int mReplacedStorageId; 0048 }; 0049 0050 inline TestPieceTableChange::TestPieceTableChange(int typeId, const QString& description, 0051 int position, int storagePosition, int storageId, 0052 int replacedStoragePosition, int replacedStorageId) 0053 : mTypeId(typeId) 0054 , mDescription(description) 0055 , mPosition(position) 0056 , mStoragePosition(storagePosition) 0057 , mStorageId(storageId) 0058 , mReplacedStoragePosition(replacedStoragePosition) 0059 , mReplacedStorageId(replacedStorageId) 0060 {} 0061 0062 } 0063 0064 #endif