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);
51 void setupShaderEditor(const QList<QVariant> &sources);
52 QVariant valueForName(const QString &name,
53 const QVariant &orignalValue) const;
54 QVariant arrayFromIndex(const QModelIndex &index,
55 const ApiArray &array) const;
57 Ui_ArgumentsEditor m_ui;
58 QStandardItemModel *m_model;