HAL
hal::BooleanFunctionTableModel Class Reference

A model that holds BooleanFunctions and clear-preset behaviors. More...

#include <boolean_function_table_model.h>

Inheritance diagram for hal::BooleanFunctionTableModel:
Inheritance graph
Collaboration diagram for hal::BooleanFunctionTableModel:
Collaboration graph

Public Member Functions

 BooleanFunctionTableModel (QObject *parent=nullptr)
 
int columnCount (const QModelIndex &parent=QModelIndex()) const override
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
QVariant data (const QModelIndex &index, int role) const override
 
QVariant headerData (int section, Qt::Orientation orientation, int role) const override
 
bool setData (const QModelIndex &index, const QVariant &value, int role) override
 
void setEntries (QVector< QSharedPointer< BooleanFunctionTableEntry >> entries)
 
QSharedPointer< BooleanFunctionTableEntrygetEntryAtRow (int row) const
 
- Public Member Functions inherited from QAbstractTableModel
 QAbstractTableModel (QObject *parent)
 
virtual ~QAbstractTableModel ()
 
virtual QModelIndex index (int row, int column, const QModelIndex &parent) const const override
 
virtual QModelIndex sibling (int row, int column, const QModelIndex &idx) const const override
 
virtual bool dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
 
virtual Qt::ItemFlags flags (const QModelIndex &index) const const override
 
- Public Member Functions inherited from QAbstractItemModel
 QAbstractItemModel (QObject *parent)
 
virtual ~QAbstractItemModel ()
 
bool hasIndex (int row, int column, const QModelIndex &parent) const const
 
virtual QModelIndex parent (const QModelIndex &index) const const=0
 
virtual bool hasChildren (const QModelIndex &parent) const const
 
virtual bool setHeaderData (int section, Qt::Orientation orientation, const QVariant &value, int role)
 
virtual QMap< int, QVariantitemData (const QModelIndex &index) const const
 
virtual bool setItemData (const QModelIndex &index, const QMap< int, QVariant > &roles)
 
virtual QStringList mimeTypes () const const
 
virtual QMimeDatamimeData (const QModelIndexList &indexes) const const
 
virtual bool canDropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const const
 
virtual Qt::DropActions supportedDropActions () const const
 
virtual Qt::DropActions supportedDragActions () const const
 
void setSupportedDragActions (Qt::DropActions actions)
 
virtual bool insertRows (int row, int count, const QModelIndex &parent)
 
virtual bool insertColumns (int column, int count, const QModelIndex &parent)
 
virtual bool removeRows (int row, int count, const QModelIndex &parent)
 
virtual bool removeColumns (int column, int count, const QModelIndex &parent)
 
virtual bool moveRows (const QModelIndex &sourceParent, int sourceRow, int count, const QModelIndex &destinationParent, int destinationChild)
 
virtual bool moveColumns (const QModelIndex &sourceParent, int sourceColumn, int count, const QModelIndex &destinationParent, int destinationChild)
 
bool insertRow (int row, const QModelIndex &parent)
 
bool insertColumn (int column, const QModelIndex &parent)
 
bool removeRow (int row, const QModelIndex &parent)
 
bool removeColumn (int column, const QModelIndex &parent)
 
bool moveRow (const QModelIndex &sourceParent, int sourceRow, const QModelIndex &destinationParent, int destinationChild)
 
bool moveColumn (const QModelIndex &sourceParent, int sourceColumn, const QModelIndex &destinationParent, int destinationChild)
 
virtual void fetchMore (const QModelIndex &parent)
 
virtual bool canFetchMore (const QModelIndex &parent) const const
 
virtual void sort (int column, Qt::SortOrder order)
 
virtual QModelIndex buddy (const QModelIndex &index) const const
 
virtual QModelIndexList match (const QModelIndex &start, int role, const QVariant &value, int hits, Qt::MatchFlags flags) const const
 
virtual QSize span (const QModelIndex &index) const const
 
virtual QHash< int, QByteArrayroleNames () const const
 
bool checkIndex (const QModelIndex &index, QAbstractItemModel::CheckIndexOptions options) const const
 
void dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector< int > &roles)
 
void headerDataChanged (Qt::Orientation orientation, int first, int last)
 
void layoutChanged (const QList< QPersistentModelIndex > &parents, QAbstractItemModel::LayoutChangeHint hint)
 
void layoutAboutToBeChanged (const QList< QPersistentModelIndex > &parents, QAbstractItemModel::LayoutChangeHint hint)
 
void rowsAboutToBeInserted (const QModelIndex &parent, int start, int end)
 
void rowsInserted (const QModelIndex &parent, int first, int last)
 
void rowsAboutToBeRemoved (const QModelIndex &parent, int first, int last)
 
void rowsRemoved (const QModelIndex &parent, int first, int last)
 
void columnsAboutToBeInserted (const QModelIndex &parent, int first, int last)
 
void columnsInserted (const QModelIndex &parent, int first, int last)
 
void columnsAboutToBeRemoved (const QModelIndex &parent, int first, int last)
 
void columnsRemoved (const QModelIndex &parent, int first, int last)
 
void modelAboutToBeReset ()
 
void modelReset ()
 
void rowsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow)
 
void rowsMoved (const QModelIndex &parent, int start, int end, const QModelIndex &destination, int row)
 
void columnsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn)
 
void columnsMoved (const QModelIndex &parent, int start, int end, const QModelIndex &destination, int column)
 
virtual bool submit ()
 
virtual void revert ()
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () const const
 
 QObject (QObject *parent)
 
virtual ~QObject ()
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThreadthread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
void killTimer (int id)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectListchildren () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArraydynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 

Additional Inherited Members

- Public Types inherited from QAbstractItemModel
enum  LayoutChangeHint
 
enum  CheckIndexOption
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
- Public Attributes inherited from QAbstractItemModel
typedef CheckIndexOptions
 
 NoLayoutChangeHint
 
 VerticalSortHint
 
 HorizontalSortHint
 
 NoOption
 
 IndexIsValid
 
 DoNotUseParent
 
 ParentIsInvalid
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Member Functions inherited from QAbstractItemModel
void resetInternalData ()
 
QModelIndex createIndex (int row, int column, void *ptr) const const
 
QModelIndex createIndex (int row, int column, quintptr id) const const
 
void beginInsertRows (const QModelIndex &parent, int first, int last)
 
void endInsertRows ()
 
void beginRemoveRows (const QModelIndex &parent, int first, int last)
 
void endRemoveRows ()
 
bool beginMoveRows (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild)
 
void endMoveRows ()
 
void beginInsertColumns (const QModelIndex &parent, int first, int last)
 
void endInsertColumns ()
 
void beginRemoveColumns (const QModelIndex &parent, int first, int last)
 
void endRemoveColumns ()
 
bool beginMoveColumns (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationChild)
 
void endMoveColumns ()
 
void reset ()
 
void beginResetModel ()
 
void endResetModel ()
 
void changePersistentIndex (const QModelIndex &from, const QModelIndex &to)
 
void changePersistentIndexList (const QModelIndexList &from, const QModelIndexList &to)
 
QModelIndexList persistentIndexList () const const
 
void setRoleNames (const QHash< int, QByteArray > &roleNames)
 
- Protected Member Functions inherited from QObject
QObjectsender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

A model that holds BooleanFunctions and clear-preset behaviors.

The model can be filled with a list of BooleanFunctionTableEntrys. Each element is either BooleanFunctions (using BooleanFunctionEntry) or a clear-preset behavior (using CPBehaviorEntry).

The table contains the identifier in the left column, a separator (i.e. "=") in the center column and the BooleanFunction/clear-preset behavior in the right column.

Definition at line 293 of file boolean_function_table_model.h.

Constructor & Destructor Documentation

◆ BooleanFunctionTableModel()

hal::BooleanFunctionTableModel::BooleanFunctionTableModel ( QObject parent = nullptr)

Constructor.

Parameters
parent- The parent widget

Definition at line 131 of file boolean_function_table_model.cpp.

Member Function Documentation

◆ columnCount()

int hal::BooleanFunctionTableModel::columnCount ( const QModelIndex parent = QModelIndex()) const
overridevirtual

Returns the amount of columns.

Parameters
parent- Then parent model index
Returns
the amount of columns.

Implements QAbstractItemModel.

Definition at line 136 of file boolean_function_table_model.cpp.

References QObject::parent().

◆ data()

QVariant hal::BooleanFunctionTableModel::data ( const QModelIndex index,
int  role 
) const
overridevirtual

Returns the data stored under the given role for a given index in the table model.
All values are aligned centered. The last column is the rows output, in the other columns are the input values.

Parameters
index- The index in the table
role- The access role
Returns
the data

Implements QAbstractItemModel.

Definition at line 148 of file boolean_function_table_model.cpp.

References Qt::AlignHCenter, Qt::AlignLeft, Qt::AlignTop, QModelIndex::column(), Qt::DisplayRole, QAbstractTableModel::index(), QModelIndex::row(), and Qt::TextAlignmentRole.

◆ getEntryAtRow()

QSharedPointer< BooleanFunctionTableEntry > hal::BooleanFunctionTableModel::getEntryAtRow ( int  row) const

Access an entry at the specified row. The row MUST be valid.

Parameters
row- the row
Returns
the entry at the specified row

Definition at line 206 of file boolean_function_table_model.cpp.

◆ headerData()

QVariant hal::BooleanFunctionTableModel::headerData ( int  section,
Qt::Orientation  orientation,
int  role 
) const
overridevirtual

Returns the header data fields.

Parameters
section- The section (column) index
orientation- The orientation of the table
role- The access role
Returns
the header data field at the given position

Reimplemented from QAbstractItemModel.

Definition at line 190 of file boolean_function_table_model.cpp.

◆ rowCount()

int hal::BooleanFunctionTableModel::rowCount ( const QModelIndex parent = QModelIndex()) const
overridevirtual

Returns the amount of rows in the table.

Parameters
parent- The parent model index
Returns
the amount of rows in the table.

Implements QAbstractItemModel.

Definition at line 142 of file boolean_function_table_model.cpp.

References QObject::parent().

◆ setData()

bool hal::BooleanFunctionTableModel::setData ( const QModelIndex index,
const QVariant value,
int  role 
)
overridevirtual

Sets the role data for the item at index to value. Currently unused.

Parameters
index- The model index
value- The value to set
role- The access role
Returns
true on success

Reimplemented from QAbstractItemModel.

Definition at line 198 of file boolean_function_table_model.cpp.

References QAbstractTableModel::index().

◆ setEntries()

void hal::BooleanFunctionTableModel::setEntries ( QVector< QSharedPointer< BooleanFunctionTableEntry >>  entries)

Overwrites the model's entries with the entries in the specified list.

Parameters
entries- The new entries

Definition at line 211 of file boolean_function_table_model.cpp.

References QAbstractItemModel::layoutAboutToBeChanged(), QAbstractItemModel::layoutChanged(), and QObject::Q_EMIT().

Referenced by hal::BooleanFunctionTable::setEntries().


The documentation for this class was generated from the following files: