From: José Fonseca Date: Mon, 8 Jul 2013 14:40:36 +0000 (+0100) Subject: gui: Allow to edit strings. X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=1516d5998c290f2edb2067fbe2b74214f9cf5793;p=apitrace gui: Allow to edit strings. Based upon the surrounding code. There might be a better way to achieve it, but this seems better than no support. Issue #159. --- diff --git a/gui/argumentseditor.cpp b/gui/argumentseditor.cpp index e6345ea..4310d2e 100644 --- a/gui/argumentseditor.cpp +++ b/gui/argumentseditor.cpp @@ -30,6 +30,7 @@ isVariantEditable(const QVariant &var) case QVariant::ULongLong: case QMetaType::Float: case QVariant::Double: + case QVariant::String: return true; default: return false; @@ -71,6 +72,8 @@ void setArgumentsItemEditorFactory () new QStandardItemEditorCreator(); QItemEditorCreatorBase *doubleEditorCreator = new QStandardItemEditorCreator(); + QItemEditorCreatorBase *stringEditorCreator = + new QStandardItemEditorCreator(); QItemEditorCreatorBase *invalidEditorCreator = new QStandardItemEditorCreator(); @@ -87,6 +90,7 @@ void setArgumentsItemEditorFactory () factory->registerEditor(QVariant::Pixmap, pixmapEditorCreator); factory->registerEditor(typeFloat, floatEditorCreator); factory->registerEditor(QVariant::Double, doubleEditorCreator); + factory->registerEditor(QVariant::String, stringEditorCreator); factory->registerEditor(QVariant::Invalid, invalidEditorCreator); QItemEditorFactory::setDefaultFactory(factory); diff --git a/gui/argumentseditor.h b/gui/argumentseditor.h index 27aa491..73cd458 100644 --- a/gui/argumentseditor.h +++ b/gui/argumentseditor.h @@ -9,6 +9,7 @@ #include #include #include +#include #include #include @@ -126,6 +127,16 @@ public: }; }; +class StringEditorCreator : public QTextEdit +{ + Q_OBJECT + Q_PROPERTY(QString plainText READ toPlainText WRITE setPlainText USER true) +public: + StringEditorCreator(QWidget *widget = 0) : QTextEdit(widget) + { + }; +}; + class InvalidEditorCreator : public QLabel { Q_OBJECT