IceGridModel.h
Go to the documentation of this file.
1/*
2* This file is part of ArmarX.
3*
4* ArmarX is free software; you can redistribute it and/or modify
5* it under the terms of the GNU General Public License version 2 as
6* published by the Free Software Foundation.
7*
8* ArmarX is distributed in the hope that it will be useful, but
9* WITHOUT ANY WARRANTY; without even the implied warranty of
10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11* GNU General Public License for more details.
12*
13* You should have received a copy of the GNU General Public License
14* along with this program. If not, see <http://www.gnu.org/licenses/>.
15*
16* @package ArmarX::
17* @author Mirko Waechter ( mirko.waechter at kit dot edu)
18* @date 2013
19* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20* GNU General Public License
21*/
22
23#pragma once
24
25#include <mutex>
26
27#include <QAbstractItemModel>
28#include <QStyledItemDelegate>
29
30namespace armarx
31{
32
33 class IceGridModel : public QAbstractTableModel
34 {
35 Q_OBJECT
36 public:
37 explicit IceGridModel(QObject* parent = 0);
38 ~IceGridModel() override;
39
40 // inherited from QAbstractItemModel
41 int rowCount(const QModelIndex& parent = QModelIndex()) const override;
42 int columnCount(const QModelIndex& parent = QModelIndex()) const override;
43 QVariant data(const QModelIndex& index, int role) const override;
44 QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
45
46 void setData(const std::vector<std::string>& gridNodeItemsList);
47 signals:
48
49 public slots:
50
51 private:
52 void run();
53
54 std::vector<std::string> gridNodeItemsList;
55 mutable std::mutex gridNodeListsMutex;
56 };
57} // namespace armarx
uint8_t index
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
void setData(const std::vector< std::string > &gridNodeItemsList)
int rowCount(const QModelIndex &parent=QModelIndex()) const override
int columnCount(const QModelIndex &parent=QModelIndex()) const override
QVariant data(const QModelIndex &index, int role) const override
IceGridModel(QObject *parent=0)
This file offers overloads of toIce() and fromIce() functions for STL container types.