From 754b8b3ac70e123bdb57c0dd21082ccc534a4366 Mon Sep 17 00:00:00 2001 From: Leandro Melo Date: Wed, 29 Jun 2011 17:45:52 +0200 Subject: [PATCH] Editors: Dont configure form's text editor unnecessarily It's sufficient (and actually better) to configure the plain text editor at the moment in which the xml is synchronized. Task-number: QTCREATORBUG-5251 Change-Id: Ib2a3e1828f61770871486b8fbc1618abda1a5a74 Reviewed-on: http://codereview.qt.nokia.com/931 Reviewed-by: Qt Sanity Bot Reviewed-by: Friedemann Kleint --- src/plugins/designer/formwindoweditor.cpp | 12 ++---------- src/plugins/designer/formwindoweditor.h | 1 - src/plugins/texteditor/plaintexteditor.cpp | 5 +++++ src/plugins/texteditor/plaintexteditor.h | 1 + 4 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/plugins/designer/formwindoweditor.cpp b/src/plugins/designer/formwindoweditor.cpp index 516795f27ff..6057002e2b3 100644 --- a/src/plugins/designer/formwindoweditor.cpp +++ b/src/plugins/designer/formwindoweditor.cpp @@ -88,7 +88,6 @@ FormWindowEditor::FormWindowEditor(Internal::DesignerXmlEditor *editor, // Force update of open editors model. connect(&d->m_file, SIGNAL(saved()), this, SIGNAL(changed())); connect(&d->m_file, SIGNAL(changed()), this, SIGNAL(changed())); - connect(this, SIGNAL(changed()), this, SLOT(configureXmlEditor())); } FormWindowEditor::~FormWindowEditor() @@ -196,19 +195,12 @@ void FormWindowEditor::syncXmlEditor() syncXmlEditor(contents()); } -void FormWindowEditor::configureXmlEditor() const -{ - TextEditor::PlainTextEditorWidget *widget = - qobject_cast(d->m_textEditor.widget()); - if (widget) - widget->configure(Core::ICore::instance()->mimeDatabase()->findByFile( - d->m_file.fileName())); -} - void FormWindowEditor::syncXmlEditor(const QString &contents) { d->m_textEditor.editorWidget()->setPlainText(contents); d->m_textEditor.editorWidget()->setReadOnly(true); + static_cast + (d->m_textEditor.editorWidget())->configure(file()->mimeType()); } Core::IFile *FormWindowEditor::file() diff --git a/src/plugins/designer/formwindoweditor.h b/src/plugins/designer/formwindoweditor.h index 3260917e693..b348a2ffd6b 100644 --- a/src/plugins/designer/formwindoweditor.h +++ b/src/plugins/designer/formwindoweditor.h @@ -97,7 +97,6 @@ public: public slots: void syncXmlEditor(); - void configureXmlEditor() const; private slots: void slotOpen(QString *errorString, const QString &fileName); diff --git a/src/plugins/texteditor/plaintexteditor.cpp b/src/plugins/texteditor/plaintexteditor.cpp index ca6008d0e7a..d2925ff0d70 100644 --- a/src/plugins/texteditor/plaintexteditor.cpp +++ b/src/plugins/texteditor/plaintexteditor.cpp @@ -154,6 +154,11 @@ void PlainTextEditorWidget::configure() configure(mimeType); } +void PlainTextEditorWidget::configure(const QString &mimeType) +{ + configure(Core::ICore::instance()->mimeDatabase()->findByType(mimeType)); +} + void PlainTextEditorWidget::configure(const Core::MimeType &mimeType) { Highlighter *highlighter = new Highlighter(); diff --git a/src/plugins/texteditor/plaintexteditor.h b/src/plugins/texteditor/plaintexteditor.h index 6b003ea080e..2fb3185d87d 100644 --- a/src/plugins/texteditor/plaintexteditor.h +++ b/src/plugins/texteditor/plaintexteditor.h @@ -68,6 +68,7 @@ class TEXTEDITOR_EXPORT PlainTextEditorWidget : public BaseTextEditorWidget public: PlainTextEditorWidget(QWidget *parent); + void configure(const QString& mimeType); void configure(const Core::MimeType &mimeType); bool isMissingSyntaxDefinition() const; bool ignoreMissingSyntaxDefinition() const;