forked from qt-creator/qt-creator
Make the ExternalTools classes accessible outside core
Change-Id: I225c22bc48b123fec4420761879382ea0a424029 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
@@ -51,7 +51,6 @@ using namespace Utils;
|
|||||||
using namespace Core::Internal;
|
using namespace Core::Internal;
|
||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
namespace Internal {
|
|
||||||
|
|
||||||
const char kExternalTool[] = "externaltool";
|
const char kExternalTool[] = "externaltool";
|
||||||
const char kId[] = "id";
|
const char kId[] = "id";
|
||||||
@@ -331,7 +330,7 @@ static void localizedText(const QStringList &locales, QXmlStreamReader *reader,
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (*currentLocale < 0 && currentText->isEmpty()) {
|
if (*currentLocale < 0 && currentText->isEmpty()) {
|
||||||
*currentText = QCoreApplication::translate("Core::Internal::ExternalTool",
|
*currentText = QCoreApplication::translate("Core::ExternalTool",
|
||||||
reader->readElementText().toUtf8().constData(),
|
reader->readElementText().toUtf8().constData(),
|
||||||
"");
|
"");
|
||||||
} else {
|
} else {
|
||||||
@@ -721,6 +720,4 @@ void ExternalToolRunner::readStandardError()
|
|||||||
m_processOutput.append(output);
|
m_processOutput.append(output);
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace Internal
|
|
||||||
|
|
||||||
} // namespace Core
|
} // namespace Core
|
||||||
|
@@ -25,6 +25,8 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <coreplugin/core_global.h>
|
||||||
|
|
||||||
#include <utils/environment.h>
|
#include <utils/environment.h>
|
||||||
#include <utils/fileutils.h>
|
#include <utils/fileutils.h>
|
||||||
#include <utils/id.h>
|
#include <utils/id.h>
|
||||||
@@ -38,9 +40,8 @@
|
|||||||
|
|
||||||
namespace Utils { class QtcProcess; }
|
namespace Utils { class QtcProcess; }
|
||||||
namespace Core {
|
namespace Core {
|
||||||
namespace Internal {
|
|
||||||
|
|
||||||
class ExternalTool : public QObject
|
class CORE_EXPORT ExternalTool : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
@@ -123,7 +124,7 @@ private:
|
|||||||
QSharedPointer<ExternalTool> m_presetTool;
|
QSharedPointer<ExternalTool> m_presetTool;
|
||||||
};
|
};
|
||||||
|
|
||||||
class ExternalToolRunner : public QObject
|
class CORE_EXPORT ExternalToolRunner : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
@@ -158,7 +159,6 @@ private:
|
|||||||
QString m_errorString;
|
QString m_errorString;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // Internal
|
|
||||||
} // Core
|
} // Core
|
||||||
|
|
||||||
Q_DECLARE_METATYPE(Core::Internal::ExternalTool *)
|
Q_DECLARE_METATYPE(Core::ExternalTool *)
|
||||||
|
@@ -61,13 +61,6 @@ static ExternalToolManager *m_instance = nullptr;
|
|||||||
static ExternalToolManagerPrivate *d = nullptr;
|
static ExternalToolManagerPrivate *d = nullptr;
|
||||||
|
|
||||||
static void writeSettings();
|
static void writeSettings();
|
||||||
static void readSettings(const QMap<QString, ExternalTool *> &tools,
|
|
||||||
QMap<QString, QList<ExternalTool*> > *categoryPriorityMap);
|
|
||||||
|
|
||||||
static void parseDirectory(const QString &directory,
|
|
||||||
QMap<QString, QMultiMap<int, ExternalTool*> > *categoryMenus,
|
|
||||||
QMap<QString, ExternalTool *> *tools,
|
|
||||||
bool isPreset = false);
|
|
||||||
|
|
||||||
ExternalToolManager::ExternalToolManager()
|
ExternalToolManager::ExternalToolManager()
|
||||||
: QObject(ICore::instance())
|
: QObject(ICore::instance())
|
||||||
@@ -120,7 +113,7 @@ ExternalToolManager *ExternalToolManager::instance()
|
|||||||
return m_instance;
|
return m_instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void parseDirectory(const QString &directory,
|
void ExternalToolManager::parseDirectory(const QString &directory,
|
||||||
QMap<QString, QMultiMap<int, ExternalTool*> > *categoryMenus,
|
QMap<QString, QMultiMap<int, ExternalTool*> > *categoryMenus,
|
||||||
QMap<QString, ExternalTool *> *tools,
|
QMap<QString, ExternalTool *> *tools,
|
||||||
bool isPreset)
|
bool isPreset)
|
||||||
@@ -254,7 +247,7 @@ void ExternalToolManager::setToolsByCategory(const QMap<QString, QList<ExternalT
|
|||||||
mexternaltools->menu()->addAction(d->m_configureAction);
|
mexternaltools->menu()->addAction(d->m_configureAction);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void readSettings(const QMap<QString, ExternalTool *> &tools,
|
void ExternalToolManager::readSettings(const QMap<QString, ExternalTool *> &tools,
|
||||||
QMap<QString, QList<ExternalTool *> > *categoryMap)
|
QMap<QString, QList<ExternalTool *> > *categoryMap)
|
||||||
{
|
{
|
||||||
QSettings *settings = ICore::settings();
|
QSettings *settings = ICore::settings();
|
||||||
|
@@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
|
|
||||||
namespace Internal { class ExternalTool; }
|
class ExternalTool;
|
||||||
|
|
||||||
class CORE_EXPORT ExternalToolManager : public QObject
|
class CORE_EXPORT ExternalToolManager : public QObject
|
||||||
{
|
{
|
||||||
@@ -45,10 +45,17 @@ public:
|
|||||||
~ExternalToolManager() override;
|
~ExternalToolManager() override;
|
||||||
|
|
||||||
static ExternalToolManager *instance();
|
static ExternalToolManager *instance();
|
||||||
static QMap<QString, QList<Internal::ExternalTool *> > toolsByCategory();
|
static QMap<QString, QList<ExternalTool *> > toolsByCategory();
|
||||||
static QMap<QString, Internal::ExternalTool *> toolsById();
|
static QMap<QString, ExternalTool *> toolsById();
|
||||||
static void setToolsByCategory(const QMap<QString, QList<Internal::ExternalTool *> > &tools);
|
static void setToolsByCategory(const QMap<QString, QList<ExternalTool *> > &tools);
|
||||||
static void emitReplaceSelectionRequested(const QString &output);
|
static void emitReplaceSelectionRequested(const QString &output);
|
||||||
|
static void readSettings(const QMap<QString, ExternalTool *> &tools,
|
||||||
|
QMap<QString, QList<ExternalTool*> > *categoryPriorityMap);
|
||||||
|
|
||||||
|
static void parseDirectory(const QString &directory,
|
||||||
|
QMap<QString, QMultiMap<int, ExternalTool*> > *categoryMenus,
|
||||||
|
QMap<QString, ExternalTool *> *tools,
|
||||||
|
bool isPreset = false);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void replaceSelectionRequested(const QString &text);
|
void replaceSelectionRequested(const QString &text);
|
||||||
|
@@ -2,6 +2,4 @@ add_qtc_test(tst_externaltooltest
|
|||||||
DEPENDS Core app_version
|
DEPENDS Core app_version
|
||||||
SOURCES
|
SOURCES
|
||||||
tst_externaltooltest.cpp
|
tst_externaltooltest.cpp
|
||||||
"${PROJECT_SOURCE_DIR}/src/plugins/coreplugin/externaltool.cpp"
|
|
||||||
"${PROJECT_SOURCE_DIR}/src/plugins/coreplugin/externaltool.h"
|
|
||||||
)
|
)
|
||||||
|
@@ -5,15 +5,6 @@ QtcAutotest {
|
|||||||
Depends { name: "Core" }
|
Depends { name: "Core" }
|
||||||
Depends { name: "app_version_header" }
|
Depends { name: "app_version_header" }
|
||||||
|
|
||||||
Group {
|
|
||||||
name: "Duplicated sources from Core plugin" // Ewww. But the .pro file does the same.
|
|
||||||
prefix: project.ide_source_tree + "/src/plugins/coreplugin/"
|
|
||||||
files: [
|
|
||||||
"externaltool.cpp",
|
|
||||||
"externaltool.h"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|
||||||
Group {
|
Group {
|
||||||
name: "Test sources"
|
name: "Test sources"
|
||||||
files: "tst_externaltooltest.cpp"
|
files: "tst_externaltooltest.cpp"
|
||||||
|
@@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
#include <coreplugin/externaltool.h>
|
#include <coreplugin/externaltool.h>
|
||||||
|
|
||||||
using namespace Core::Internal;
|
using namespace Core;
|
||||||
using namespace Utils;
|
using namespace Utils;
|
||||||
|
|
||||||
static const char TEST_XML1[] =
|
static const char TEST_XML1[] =
|
||||||
|
Reference in New Issue
Block a user