summaryrefslogtreecommitdiff
path: root/src/plugins/qmljseditor/quicktoolbar.h
diff options
context:
space:
mode:
authorThomas Hartmann <Thomas.Hartmann@nokia.com>2010-08-12 15:48:24 +0200
committerThomas Hartmann <Thomas.Hartmann@nokia.com>2010-08-12 15:51:14 +0200
commit36edd86441279586843bf498a7a8dee95c531738 (patch)
treefea38fefe6aac8d7d5f2f749d993e5aa103d15c3 /src/plugins/qmljseditor/quicktoolbar.h
parent22a9bb192eb47968ef6d588b35d6c38512284bcc (diff)
downloadqt-creator-36edd86441279586843bf498a7a8dee95c531738.tar.gz
QmlJSEditor: Add QuickToolBar to QmlJSEditor
QmlDesigner is not needed anymore for the QuickToolBar QmlJSEditor has a depends now on libs/qmleditorwidgets
Diffstat (limited to 'src/plugins/qmljseditor/quicktoolbar.h')
-rw-r--r--src/plugins/qmljseditor/quicktoolbar.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/plugins/qmljseditor/quicktoolbar.h b/src/plugins/qmljseditor/quicktoolbar.h
new file mode 100644
index 0000000000..75ea8d54c1
--- /dev/null
+++ b/src/plugins/qmljseditor/quicktoolbar.h
@@ -0,0 +1,59 @@
+#ifndef QUICKTOOLBAR_H
+#define QUICKTOOLBAR_H
+
+#include <QLabel>
+#include <QToolBar>
+#include <QPushButton>
+#include <QToolButton>
+#include <QGridLayout>
+#include <QGroupBox>
+#include <QVariant>
+#include <QGraphicsDropShadowEffect>
+#include <QWeakPointer>
+
+#include <qmljs/qmljsicontextpane.h>
+
+namespace TextEditor {
+class BaseTextEditorEditable;
+}
+
+namespace QmlEditorWidgets {
+class ContextPaneWidget;
+}
+
+namespace QmlJSEditor {
+
+class QuickToolBar : public QmlJS::IContextPane
+{
+ Q_OBJECT
+
+public:
+ QuickToolBar(QObject *parent = 0);
+ ~QuickToolBar();
+ void apply(TextEditor::BaseTextEditorEditable *editor, QmlJS::Document::Ptr doc, const QmlJS::Snapshot &snapshot, QmlJS::AST::Node *node, bool update, bool force = 0);
+ bool isAvailable(TextEditor::BaseTextEditorEditable *editor, QmlJS::Document::Ptr doc, const QmlJS::Snapshot &snapshot, QmlJS::AST::Node *node);
+ void setProperty(const QString &propertyName, const QVariant &value);
+ void removeProperty(const QString &propertyName);
+ void setEnabled(bool);
+ QWidget* widget();
+
+public slots:
+ void onPropertyChanged(const QString &, const QVariant &);
+ void onPropertyRemoved(const QString &);
+ void onPropertyRemovedAndChange(const QString &, const QString &, const QVariant &, bool removeFirst = true);
+ void onPinnedChanged(bool);
+ void onEnabledChanged(bool);
+
+private:
+ QmlEditorWidgets::ContextPaneWidget* contextWidget();
+ QWeakPointer<QmlEditorWidgets::ContextPaneWidget> m_widget;
+ QmlJS::Document::Ptr m_doc;
+ QmlJS::AST::Node *m_node;
+ TextEditor::BaseTextEditorEditable *m_editor;
+ bool m_blockWriting;
+ QStringList m_propertyOrder;
+};
+
+} //QmlDesigner
+
+#endif // QUICKTOOLBAR_H