umbrello  2.39.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
objectsmodel.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2016-2020 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef OBJECTSMODEL_H
7 #define OBJECTSMODEL_H
8 
9 // qt includes
10 #include <QAbstractTableModel>
11 #include <QPointer>
12 
13 class UMLObject;
14 
15 class ObjectsModel : public QAbstractTableModel
16 {
17  Q_OBJECT
18 public:
19  explicit ObjectsModel();
20 
21  bool add(UMLObject *o);
22  bool remove(UMLObject *o);
23 
24  int rowCount(const QModelIndex &parent) const;
25  int columnCount(const QModelIndex &parent) const;
26 
27  QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
28  QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const;
29 
30  void emitDataChanged(const QModelIndex &index);
31  void emitDataChanged(int index);
32  void emitDataChanged(UMLObject *o);
33 
34 protected:
35  QList<QPointer<UMLObject>> m_allObjects;
36 };
37 
38 #endif // OBJECTSMODEL_H
Definition: objectsmodel.h:16
void emitDataChanged(const QModelIndex &index)
Definition: objectsmodel.cpp:167
bool remove(UMLObject *o)
Definition: objectsmodel.cpp:41
bool add(UMLObject *o)
Definition: objectsmodel.cpp:30
int rowCount(const QModelIndex &parent) const
Definition: objectsmodel.cpp:52
QList< QPointer< UMLObject > > m_allObjects
Definition: objectsmodel.h:35
int columnCount(const QModelIndex &parent) const
Definition: objectsmodel.cpp:60
ObjectsModel()
Definition: objectsmodel.cpp:26
QVariant headerData(int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const
Definition: objectsmodel.cpp:67
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
Definition: objectsmodel.cpp:94
The base class for UML objects.
Definition: umlobject.h:70