diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2014-07-01 11:54:49 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2014-07-02 07:47:02 +0200 |
commit | d3c6e59ae9f759d0e96b06557c7b9829b47e72a6 (patch) | |
tree | 65405d9f5bb347f3cb89d7b6159a2684951daaca | |
parent | d90eccd945bd991f946b5ca830b6430f98929489 (diff) | |
download | qt-creator-d3c6e59ae9f759d0e96b06557c7b9829b47e72a6.tar.gz |
GenericHighlighter: Use pointers for available definitions list
Change-Id: I82e428019589674d1af234d1e47bebda3602e8f2
Reviewed-by: David Schulz <david.schulz@digia.com>
6 files changed, 21 insertions, 22 deletions
diff --git a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp index 6ae35d4ede..71732d9bd0 100644 --- a/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp +++ b/src/plugins/texteditor/generichighlighter/highlightersettingspage.cpp @@ -187,9 +187,9 @@ void HighlighterSettingsPage::requestAvailableDefinitionsMetaData() setDownloadDefinitionsState(false); connect(Manager::instance(), - SIGNAL(definitionsMetaDataReady(QList<Internal::HighlightDefinitionMetaData>)), + SIGNAL(definitionsMetaDataReady(QList<Internal::DefinitionMetaDataPtr>)), this, - SLOT(manageDefinitions(QList<Internal::HighlightDefinitionMetaData>)), + SLOT(manageDefinitions(QList<Internal::DefinitionMetaDataPtr>)), Qt::UniqueConnection); connect(Manager::instance(), SIGNAL(errorDownloadingDefinitionsMetaData()), this, SLOT(showError()), Qt::UniqueConnection); @@ -199,14 +199,14 @@ void HighlighterSettingsPage::requestAvailableDefinitionsMetaData() void HighlighterSettingsPage::ignoreDownloadReply() { disconnect(Manager::instance(), - SIGNAL(definitionsMetaDataReady(QList<Internal::HighlightDefinitionMetaData>)), + SIGNAL(definitionsMetaDataReady(QList<Internal::DefinitionMetaDataPtr>)), this, - SLOT(manageDefinitions(QList<Internal::HighlightDefinitionMetaData>))); + SLOT(manageDefinitions(QList<Internal::DefinitionMetaDataPtr>))); disconnect(Manager::instance(), SIGNAL(errorDownloadingDefinitionsMetaData()), this, SLOT(showError())); } -void HighlighterSettingsPage::manageDefinitions(const QList<HighlightDefinitionMetaData> &metaData) +void HighlighterSettingsPage::manageDefinitions(const QList<DefinitionMetaDataPtr> &metaData) { ManageDefinitionsDialog dialog(metaData, m_d->m_page->definitionFilesPath->path() + QLatin1Char('/'), diff --git a/src/plugins/texteditor/generichighlighter/highlightersettingspage.h b/src/plugins/texteditor/generichighlighter/highlightersettingspage.h index a7081c6bc9..0633d0a8ab 100644 --- a/src/plugins/texteditor/generichighlighter/highlightersettingspage.h +++ b/src/plugins/texteditor/generichighlighter/highlightersettingspage.h @@ -30,6 +30,7 @@ #ifndef HIGHLIGHTERSETTINGSPAGE_H #define HIGHLIGHTERSETTINGSPAGE_H +#include "highlightdefinitionmetadata.h" #include "../texteditoroptionspage.h" QT_BEGIN_NAMESPACE @@ -38,8 +39,6 @@ QT_END_NAMESPACE namespace TextEditor { -namespace Internal { class HighlightDefinitionMetaData; } - class HighlighterSettings; class HighlighterSettingsPage : public TextEditorOptionsPage @@ -59,7 +58,7 @@ public: private slots: void resetDefinitionsLocation(); void requestAvailableDefinitionsMetaData(); - void manageDefinitions(const QList<Internal::HighlightDefinitionMetaData> &metaData); + void manageDefinitions(const QList<Internal::DefinitionMetaDataPtr> &metaData); void showError(); void ignoreDownloadReply(); void setFallbackLocationState(bool checked); diff --git a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp index 0dced8b160..a794a65017 100644 --- a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp +++ b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.cpp @@ -42,7 +42,7 @@ using namespace TextEditor; using namespace Internal; ManageDefinitionsDialog::ManageDefinitionsDialog( - const QList<HighlightDefinitionMetaData> &metaDataList, + const QList<DefinitionMetaDataPtr> &metaDataList, const QString &path, QWidget *parent) : QDialog(parent), @@ -69,7 +69,7 @@ void ManageDefinitionsDialog::populateDefinitionsWidget() const int size = m_definitionsMetaData.size(); ui.definitionsTable->setRowCount(size); for (int i = 0; i < size; ++i) { - const HighlightDefinitionMetaData &downloadData = m_definitionsMetaData.at(i); + const HighlightDefinitionMetaData &downloadData = *m_definitionsMetaData.at(i); // Look for this definition in the current path specified by the user, not the one // stored in the settings. So the manager should not be queried for this information. @@ -110,7 +110,7 @@ void ManageDefinitionsDialog::downloadDefinitions() QList<QUrl> urls; foreach (const QModelIndex &index, ui.definitionsTable->selectionModel()->selectedRows()) - urls.append(m_definitionsMetaData.at(index.row()).url); + urls.append(m_definitionsMetaData.at(index.row())->url); Manager::instance()->downloadDefinitions(urls, m_path); accept(); } diff --git a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h index da8d2a98fd..6df37d346b 100644 --- a/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h +++ b/src/plugins/texteditor/generichighlighter/managedefinitionsdialog.h @@ -43,7 +43,7 @@ class ManageDefinitionsDialog : public QDialog Q_OBJECT public: - explicit ManageDefinitionsDialog(const QList<HighlightDefinitionMetaData> &metaDataList, + explicit ManageDefinitionsDialog(const QList<DefinitionMetaDataPtr> &metaDataList, const QString &path, QWidget *parent = 0); @@ -56,7 +56,7 @@ private slots: private: void populateDefinitionsWidget(); - QList<HighlightDefinitionMetaData> m_definitionsMetaData; + QList<DefinitionMetaDataPtr> m_definitionsMetaData; QString m_path; Ui::ManageDefinitionsDialog ui; }; diff --git a/src/plugins/texteditor/generichighlighter/manager.cpp b/src/plugins/texteditor/generichighlighter/manager.cpp index 43029fbd2c..b76f131a87 100644 --- a/src/plugins/texteditor/generichighlighter/manager.cpp +++ b/src/plugins/texteditor/generichighlighter/manager.cpp @@ -380,26 +380,26 @@ DefinitionMetaDataPtr Manager::parseMetadata(const QFileInfo &fileInfo) return metaData; } -QList<HighlightDefinitionMetaData> Manager::parseAvailableDefinitionsList(QIODevice *device) const +QList<DefinitionMetaDataPtr> Manager::parseAvailableDefinitionsList(QIODevice *device) const { static const QLatin1Char kSlash('/'); static const QLatin1String kDefinition("Definition"); - QList<HighlightDefinitionMetaData> metaDataList; + QList<DefinitionMetaDataPtr> metaDataList; QXmlStreamReader reader(device); while (!reader.atEnd() && !reader.hasError()) { if (reader.readNext() == QXmlStreamReader::StartElement && reader.name() == kDefinition) { const QXmlStreamAttributes &atts = reader.attributes(); - HighlightDefinitionMetaData metaData; - metaData.name = atts.value(QLatin1String(kName)).toString(); - metaData.version = atts.value(QLatin1String(kVersion)).toString(); + DefinitionMetaDataPtr metaData(new HighlightDefinitionMetaData); + metaData->name = atts.value(QLatin1String(kName)).toString(); + metaData->version = atts.value(QLatin1String(kVersion)).toString(); QString url = atts.value(QLatin1String(kUrl)).toString(); - metaData.url = QUrl(url); + metaData->url = QUrl(url); const int slash = url.lastIndexOf(kSlash); if (slash != -1) - metaData.fileName = url.right(url.length() - slash - 1); + metaData->fileName = url.right(url.length() - slash - 1); metaDataList.append(metaData); } diff --git a/src/plugins/texteditor/generichighlighter/manager.h b/src/plugins/texteditor/generichighlighter/manager.h index 87e02e982f..b20535ef3b 100644 --- a/src/plugins/texteditor/generichighlighter/manager.h +++ b/src/plugins/texteditor/generichighlighter/manager.h @@ -99,7 +99,7 @@ private: bool m_isDownloadingDefinitionsSpec; QList<DefinitionDownloader *> m_downloaders; QFutureWatcher<void> m_downloadWatcher; - QList<HighlightDefinitionMetaData> parseAvailableDefinitionsList(QIODevice *device) const; + QList<DefinitionMetaDataPtr> parseAvailableDefinitionsList(QIODevice *device) const; QSet<QString> m_isBuildingDefinition; QHash<QString, QSharedPointer<HighlightDefinition> > m_definitions; @@ -116,7 +116,7 @@ private: friend class ManagerProcessor; signals: - void definitionsMetaDataReady(const QList<Internal::HighlightDefinitionMetaData>&); + void definitionsMetaDataReady(const QList<Internal::DefinitionMetaDataPtr>&); void errorDownloadingDefinitionsMetaData(); }; |