]> git.cworth.org Git - apitrace/blobdiff - gui/argumentseditor.h
Collect the edited shaders from the shader editor.
[apitrace] / gui / argumentseditor.h
index aa8452df3126b1bfd51e0bd644ed290ee8dceaba..7bfd1b3196dc54c5d49d68616328493c420f5b32 100644 (file)
@@ -1,11 +1,13 @@
 #ifndef ARGUMENTSEDITOR_H
 #define ARGUMENTSEDITOR_H
 
+#include "apitracecall.h"
 #include "ui_argumentseditor.h"
+
 #include <QComboBox>
+#include <QDialog>
 #include <QItemEditorFactory>
 #include <QStandardItemModel>
-#include <QWidget>
 
 class ApiTraceCall;
 
@@ -27,7 +29,7 @@ public:
     QByteArray valuePropertyName(QVariant::Type) const;
 };
 
-class ArgumentsEditor : public QWidget
+class ArgumentsEditor : public QDialog
 {
     Q_OBJECT
 public:
@@ -35,6 +37,8 @@ public:
     ~ArgumentsEditor();
 
 
+    virtual void accept();
+
     void setCall(ApiTraceCall *call);
     ApiTraceCall *call() const;
 
@@ -45,6 +49,11 @@ private:
     void init();
     void setupCall();
     void setupShaderEditor(const QList<QVariant> &sources);
+    QVariant valueForName(const QString &name,
+                          const QVariant &orignalValue) const;
+    QVariant arrayFromIndex(const QModelIndex &index,
+                            const ApiArray &array) const;
+    QVariant arrayFromEditor(const ApiArray &origArray) const;
 private:
     Ui_ArgumentsEditor m_ui;
     QStandardItemModel *m_model;