MorphoGraphX
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ProcessParms.hpp
1 #ifndef PROCESSPARMS_HPP
2 #define PROCESSPARMS_HPP
3 
4 #include <Process.hpp>
5 
6 #include <QAbstractTableModel>
7 #include <QStyledItemDelegate>
8 
10  Q_OBJECT
11 public:
12  FreeFloatDelegate(QObject* parent = 0);
13  QWidget* createEditor(QWidget* parent, const QStyleOptionViewItem& option, const QModelIndex& index) const;
14  void setEditorData(QWidget* editor, const QModelIndex& index) const;
15  void setModelData(QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const;
16  void updateEditorGeometry(QWidget* editor, const QStyleOptionViewItem& option, const QModelIndex& index) const;
17 };
18 
20  Q_OBJECT
21 public:
22  ProcessParmsModel(QObject* parent = 0)
23  : QAbstractTableModel(parent)
24  {
25  }
26  void setParms(const mgx::process::BaseProcessDefinition& def);
27  void setParms(const QStringList& parms);
28  void clear();
29 
30  int rowCount(const QModelIndex& /*parent*/ = QModelIndex()) const {
31  return names.size();
32  }
33  int columnCount(const QModelIndex& /*parent*/ = QModelIndex()) const {
34  return 2;
35  }
36  QVariant data(const QModelIndex& index, int role) const;
37  QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
38  Qt::ItemFlags flags(const QModelIndex& index) const;
39  bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole);
40  const QStringList& parms() const {
41  return _parms;
42  }
43 
44  QStringList parmChoice(int pos) const;
45 
46 signals:
47  void valuesChanged();
48 
49 protected:
50  QStringList names;
51  QStringList descs;
52  QStringList _parms;
53  mgx::process::ParmChoiceMap _parmChoice;
54 };
55 #endif
index(int row, int column, const QModelIndex &parent=QModelIndex()
QAbstractTableModel(QObject *parent=0)
Definition of a process, without the process factory.
Definition: Process.hpp:1229
Definition: ProcessParms.hpp:19
File containing the definition of a Process.
Definition: ProcessParms.hpp:9