OGS
ColorTableModel.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) OpenGeoSys Community (opengeosys.org)
2// SPDX-License-Identifier: BSD-3-Clause
3
4#pragma once
5
6#include <QAbstractTableModel>
7#include <QColor>
8
10
14class ColorTableModel : public QAbstractTableModel
15{
16 Q_OBJECT
17
18public:
19 explicit ColorTableModel(
20 const std::map<std::string, DataHolderLib::Color*>& colorLookupTable,
21 QObject* parent = nullptr);
22 ~ColorTableModel() override;
23
24 int columnCount(const QModelIndex& parent = QModelIndex()) const override;
25
26 QVariant data(const QModelIndex& index, int role) const override;
27
28 int rowCount(const QModelIndex& parent = QModelIndex()) const override
29 {
30 Q_UNUSED (parent);
31 return _listOfPairs.size();
32 }
33
34 QVariant headerData(int section, Qt::Orientation orientation,
35 int role /*= Qt::DisplayRole*/) const override;
36
37private:
38 bool buildTable( const std::map<std::string, DataHolderLib::Color*> &colorLookupTable );
39
40 QList< QPair<QString, QColor> > _listOfPairs;
41};
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
QVariant data(const QModelIndex &index, int role) const override
ColorTableModel(const std::map< std::string, DataHolderLib::Color * > &colorLookupTable, QObject *parent=nullptr)
bool buildTable(const std::map< std::string, DataHolderLib::Color * > &colorLookupTable)
int rowCount(const QModelIndex &parent=QModelIndex()) const override
~ColorTableModel() override
int columnCount(const QModelIndex &parent=QModelIndex()) const override
QList< QPair< QString, QColor > > _listOfPairs