diff options
author | Thomas Hartmann <Thomas.Hartmann@nokia.com> | 2010-08-12 15:48:24 +0200 |
---|---|---|
committer | Thomas Hartmann <Thomas.Hartmann@nokia.com> | 2010-08-12 15:51:14 +0200 |
commit | 36edd86441279586843bf498a7a8dee95c531738 (patch) | |
tree | fea38fefe6aac8d7d5f2f749d993e5aa103d15c3 /src/plugins/qmljseditor/quicktoolbar.h | |
parent | 22a9bb192eb47968ef6d588b35d6c38512284bcc (diff) | |
download | qt-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.h | 59 |
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 |