Bitcoin Core 28.99.0
P2P Digital Currency
csvmodelwriter.h
Go to the documentation of this file.
1// Copyright (c) 2011-2020 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_QT_CSVMODELWRITER_H
6#define BITCOIN_QT_CSVMODELWRITER_H
7
8#include <QList>
9#include <QObject>
10
11QT_BEGIN_NAMESPACE
12class QAbstractItemModel;
13QT_END_NAMESPACE
14
18class CSVModelWriter : public QObject
19{
20 Q_OBJECT
21
22public:
23 explicit CSVModelWriter(const QString &filename, QObject *parent = nullptr);
24
25 void setModel(const QAbstractItemModel *model);
26 void addColumn(const QString &title, int column, int role=Qt::EditRole);
27
31 bool write();
32
33private:
34 QString filename;
35 const QAbstractItemModel* model{nullptr};
36
37 struct Column
38 {
39 QString title;
40 int column;
41 int role;
42 };
43 QList<Column> columns;
44};
45
46#endif // BITCOIN_QT_CSVMODELWRITER_H
Export a Qt table model to a CSV file.
QList< Column > columns
CSVModelWriter(const QString &filename, QObject *parent=nullptr)
bool write()
Perform export of the model to CSV.
void setModel(const QAbstractItemModel *model)
void addColumn(const QString &title, int column, int role=Qt::EditRole)
const QAbstractItemModel * model