1 #ifndef ARGUMENTSEDITOR_H
2 #define ARGUMENTSEDITOR_H
4 #include "apitracecall.h"
5 #include "ui_argumentseditor.h"
9 #include <QItemEditorFactory>
10 #include <QStandardItemModel>
14 class BooleanComboBox : public QComboBox
17 Q_PROPERTY(bool value READ value WRITE setValue USER true)
19 BooleanComboBox(QWidget *parent);
24 class ArgumentsItemEditorFactory : public QItemEditorFactory
27 ArgumentsItemEditorFactory();
28 QWidget *createEditor(QVariant::Type type, QWidget *parent) const;
29 QByteArray valuePropertyName(QVariant::Type) const;
32 class ArgumentsEditor : public QDialog
36 ArgumentsEditor(QWidget *parent=0);
40 virtual void accept();
42 void setCall(ApiTraceCall *call);
43 ApiTraceCall *call() const;
46 void currentSourceChanged(int idx);
52 void setupShaderEditor(const QVector<QVariant> &sources);
53 QVariant valueForName(const QString &name,
54 const QVariant &orignalValue,
56 QVariant arrayFromIndex(const QModelIndex &index,
57 const ApiArray &array,
59 QVariant arrayFromEditor(const ApiArray &origArray,
62 Ui_ArgumentsEditor m_ui;
63 QStandardItemModel *m_model;