Engauge Digitizer 2
Loading...
Searching...
No Matches
CurveNameList.h
1/******************************************************************************************************
2 * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3 * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4 * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5 ******************************************************************************************************/
6
7#ifndef CURVE_NAME_LIST_H
8#define CURVE_NAME_LIST_H
9
10#include "CurveNameListEntry.h"
11#include <QAbstractTableModel>
12#include <QStringList>
13
16class CurveNameList : public QAbstractTableModel
17{
18public:
21
23 virtual int columnCount (const QModelIndex &parent = QModelIndex()) const;
24
26 bool containsCurveNameCurrent (const QString &curveName) const;
27
29 virtual QVariant data (const QModelIndex & index,
30 int role = Qt::DisplayRole) const;
31
33 virtual Qt::ItemFlags flags (const QModelIndex &index) const;
34
36 virtual bool insertRows (int row, int count, const QModelIndex &parent = QModelIndex ());
37
39 virtual bool removeRows (int row, int count, const QModelIndex &parent);
40
42 virtual int rowCount (const QModelIndex & parent = QModelIndex()) const;
43
45 virtual bool setData(const QModelIndex &index,
46 const QVariant &value,
47 int role = Qt::EditRole);
48
50 virtual Qt::DropActions supportedDropActions () const;
51
52private:
53
55 bool curveNameIsAcceptable (const QString &curveNameNew,
56 int row) const;
57
59 QStringList m_modelCurvesEntries;
60};
61
62#endif // CURVE_NAME_LIST_H
Model for DlgSettingsCurveAddRemove and CmdSettingsCurveAddRemove.
virtual QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const
Retrieve data from model.
bool containsCurveNameCurrent(const QString &curveName) const
Return true if specified curve name is already in the list.
virtual bool insertRows(int row, int count, const QModelIndex &parent=QModelIndex())
Insert one row.
virtual int rowCount(const QModelIndex &parent=QModelIndex()) const
One row per curve name.
virtual int columnCount(const QModelIndex &parent=QModelIndex()) const
Columns are current curve name in first column, and original curve name in second column.
virtual bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole)
Store one curve name data.
virtual Qt::ItemFlags flags(const QModelIndex &index) const
Override normal flags with additional editing flags.
virtual bool removeRows(int row, int count, const QModelIndex &parent)
Remove one row.
CurveNameList()
Default constructor.
virtual Qt::DropActions supportedDropActions() const
Allow dragging for reordering.