File indexing completed on 2024-05-12 16:42:24
0001 /* 0002 SPDX-FileCopyrightText: 2002-2018 Thomas Baumgart <tbaumgart@kde.org> 0003 SPDX-FileCopyrightText: 2004 Ace Jones <acejones@users.sourceforge.net> 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef MYMONEYSTORAGEDUMP_H 0008 #define MYMONEYSTORAGEDUMP_H 0009 0010 #include "kmm_mymoney_export.h" 0011 0012 // ---------------------------------------------------------------------------- 0013 // QT Includes 0014 0015 // ---------------------------------------------------------------------------- 0016 // Project Includes 0017 0018 #include "mymoneykeyvaluecontainer.h" 0019 0020 /** 0021 * @author Thomas Baumgart 0022 */ 0023 0024 class MyMoneyStorageMgr; 0025 class MyMoneyTransaction; 0026 class QTextStream; 0027 0028 namespace eMyMoney { 0029 namespace Split { 0030 enum class State; 0031 } 0032 } 0033 0034 class KMM_MYMONEY_EXPORT MyMoneyStorageDump 0035 { 0036 public: 0037 MyMoneyStorageDump(); 0038 ~MyMoneyStorageDump(); 0039 0040 void readStream(QDataStream& s, MyMoneyStorageMgr* storage); 0041 void writeStream(QDataStream& s, MyMoneyStorageMgr* storage); 0042 0043 private: 0044 void dumpTransaction(QTextStream& s, MyMoneyStorageMgr* storage, const MyMoneyTransaction& it_t); 0045 void dumpKVP(const QString& headline, QTextStream& s, const MyMoneyKeyValueContainer &kvp, int indent = 0); 0046 const QString reconcileToString(eMyMoney::Split::State flag) const; 0047 }; 0048 0049 #endif