From 1b414e00ca5c8ed14429757e27957d4075d41758 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint <Friedemann.Kleint@nokia.com> Date: Mon, 23 Aug 2010 15:05:20 +0200 Subject: [PATCH] Designer: Set C++ suffix and header lower case setting. to be used for the promoted widgets dialog. See also 00e954ca817f89958a8a8777d93d3843252dc88c in Qt 4.8. Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com> Task-number: QTCREATORBUG-163 --- src/plugins/designer/cpp/formclasswizardpage.cpp | 6 +++--- src/plugins/designer/cpp/formclasswizardpage.h | 2 ++ src/plugins/designer/qtcreatorintegration.cpp | 16 ++++++++++++++++ src/plugins/designer/qtcreatorintegration.h | 1 + 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/plugins/designer/cpp/formclasswizardpage.cpp b/src/plugins/designer/cpp/formclasswizardpage.cpp index 4ae7e336b0b..7d67e037380 100644 --- a/src/plugins/designer/cpp/formclasswizardpage.cpp +++ b/src/plugins/designer/cpp/formclasswizardpage.cpp @@ -71,13 +71,13 @@ FormClassWizardPage::~FormClassWizardPage() } // Retrieve settings of CppTools plugin. -static bool inline lowerCaseFiles(const Core::ICore *core) +bool FormClassWizardPage::lowercaseHeaderFiles() { QString lowerCaseSettingsKey = QLatin1String(CppTools::Constants::CPPTOOLS_SETTINGSGROUP); lowerCaseSettingsKey += QLatin1Char('/'); lowerCaseSettingsKey += QLatin1String(CppTools::Constants::LOWERCASE_CPPFILES_KEY); const bool lowerCaseDefault = CppTools::Constants::lowerCaseFilesDefault; - return core->settings()->value(lowerCaseSettingsKey, QVariant(lowerCaseDefault)).toBool(); + return Core::ICore::instance()->settings()->value(lowerCaseSettingsKey, QVariant(lowerCaseDefault)).toBool(); } // Set up new class widget from settings @@ -87,7 +87,7 @@ void FormClassWizardPage::initFileGenerationSettings() const Core::MimeDatabase *mdb = core->mimeDatabase(); m_ui->newClassWidget->setHeaderExtension(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE))); m_ui->newClassWidget->setSourceExtension(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_SOURCE_MIMETYPE))); - m_ui->newClassWidget->setLowerCaseFiles(lowerCaseFiles(core)); + m_ui->newClassWidget->setLowerCaseFiles(lowercaseHeaderFiles()); } // Pop up settings dialog for generation settings diff --git a/src/plugins/designer/cpp/formclasswizardpage.h b/src/plugins/designer/cpp/formclasswizardpage.h index 610837c5aba..8e3c0b97717 100644 --- a/src/plugins/designer/cpp/formclasswizardpage.h +++ b/src/plugins/designer/cpp/formclasswizardpage.h @@ -63,6 +63,8 @@ public: FormClassWizardGenerationParameters generationParameters() const; void setGenerationParameters(const FormClassWizardGenerationParameters &gp); + static bool lowercaseHeaderFiles(); + public slots: void setClassName(const QString &suggestedClassName); void setPath(const QString &); diff --git a/src/plugins/designer/qtcreatorintegration.cpp b/src/plugins/designer/qtcreatorintegration.cpp index 9ebbc599030..a6e48e8834b 100644 --- a/src/plugins/designer/qtcreatorintegration.cpp +++ b/src/plugins/designer/qtcreatorintegration.cpp @@ -29,6 +29,7 @@ #include "formeditorplugin.h" #include "formwindoweditor.h" +#include "formclasswizardpage.h" #include "qtcreatorintegration.h" #include "formeditorw.h" #include "editordata.h" @@ -36,6 +37,7 @@ #include <widgethost.h> #include <cpptools/cppmodelmanagerinterface.h> +#include <cpptools/cpptoolsconstants.h> #include <cplusplus/InsertionPointLocator.h> #include <cplusplus/Symbols.h> #include <cplusplus/Overview.h> @@ -47,6 +49,7 @@ #include <cplusplus/Control.h> #include <cplusplus/TranslationUnit.h> #include <coreplugin/icore.h> +#include <coreplugin/mimedatabase.h> #include <coreplugin/editormanager/editormanager.h> #include <extensionsystem/pluginmanager.h> #include <texteditor/basetexteditor.h> @@ -98,6 +101,9 @@ QtCreatorIntegration::QtCreatorIntegration(QDesignerFormEditorInterface *core, F this, SLOT(slotNavigateToSlot(QString, QString, QStringList))); connect(this, SIGNAL(helpRequested(QString,QString)), this, SLOT(slotDesignerHelpRequested(QString,QString))); + slotSyncSettingsToDesigner(); + connect(Core::ICore::instance(), SIGNAL(saveSettingsRequested()), + this, SLOT(slotSyncSettingsToDesigner())); } void QtCreatorIntegration::slotDesignerHelpRequested(const QString &manual, const QString &document) @@ -552,3 +558,13 @@ bool QtCreatorIntegration::navigateToSlot(const QString &objectName, return true; } + +void QtCreatorIntegration::slotSyncSettingsToDesigner() +{ +#if QT_VERSION >= 0x040800 + // Set promotion-relevant parameters on integration. + const Core::MimeDatabase *mdb = Core::ICore::instance()->mimeDatabase(); + setHeaderSuffix(mdb->preferredSuffixByType(QLatin1String(CppTools::Constants::CPP_HEADER_MIMETYPE))); + setHeaderLowercase(FormClassWizardPage::lowercaseHeaderFiles()); +#endif +} diff --git a/src/plugins/designer/qtcreatorintegration.h b/src/plugins/designer/qtcreatorintegration.h index a246a283c3c..7a601e1f57b 100644 --- a/src/plugins/designer/qtcreatorintegration.h +++ b/src/plugins/designer/qtcreatorintegration.h @@ -59,6 +59,7 @@ public slots: private slots: void slotNavigateToSlot(const QString &objectName, const QString &signalSignature, const QStringList ¶meterNames); void slotDesignerHelpRequested(const QString &manual, const QString &document); + void slotSyncSettingsToDesigner(); private: bool navigateToSlot(const QString &objectName, -- GitLab