Merge remote-tracking branch 'origin/4.10'
Change-Id: I1193e94353c14492a9e7f093fbcd3fa53f83e390
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 39 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 40 KiB |
Before Width: | Height: | Size: 7.2 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 20 KiB |
BIN
doc/images/qtquick-designer-color-picker.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
doc/images/qtquick-designer-gradient-picker.png
Normal file
After Width: | Height: | Size: 29 KiB |
@@ -174,7 +174,7 @@
|
|||||||
|
|
||||||
\section2 GDB
|
\section2 GDB
|
||||||
|
|
||||||
On Windows, use the Python-enabled GDB versions that is bundled
|
On Windows, use the Python-enabled GDB version that is bundled
|
||||||
with the Qt package or comes with recent versions of MinGW. On
|
with the Qt package or comes with recent versions of MinGW. On
|
||||||
most Linux distributions, the GDB builds shipped with the system
|
most Linux distributions, the GDB builds shipped with the system
|
||||||
are sufficient.
|
are sufficient.
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
/*!
|
/*!
|
||||||
\contentspage index.html
|
\contentspage index.html
|
||||||
\previouspage creator-building-running.html
|
\previouspage creator-live-preview-devices.html
|
||||||
\page creator-building-targets.html
|
\page creator-building-targets.html
|
||||||
\nextpage creator-running-targets.html
|
\nextpage creator-running-targets.html
|
||||||
|
|
||||||
|
@@ -461,6 +461,9 @@
|
|||||||
For an example of defining your own style and using it in the Design mode, see
|
For an example of defining your own style and using it in the Design mode, see
|
||||||
\l {Qt Quick Controls 2 - Flat Style}.
|
\l {Qt Quick Controls 2 - Flat Style}.
|
||||||
|
|
||||||
|
For more information about how to customize a particular control, see
|
||||||
|
\l{Customization Reference}.
|
||||||
|
|
||||||
Qt Quick Controls 2 work in conjunction with Qt Quick and Qt Quick Layouts.
|
Qt Quick Controls 2 work in conjunction with Qt Quick and Qt Quick Layouts.
|
||||||
|
|
||||||
The \QC project wizards create Qt Quick applications that use Qt Quick
|
The \QC project wizards create Qt Quick applications that use Qt Quick
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
**
|
**
|
||||||
** Copyright (C) 2018 The Qt Company Ltd.
|
** Copyright (C) 2019 The Qt Company Ltd.
|
||||||
** Contact: https://www.qt.io/licensing/
|
** Contact: https://www.qt.io/licensing/
|
||||||
**
|
**
|
||||||
** This file is part of the Qt Creator documentation.
|
** This file is part of the Qt Creator documentation.
|
||||||
@@ -69,9 +69,6 @@
|
|||||||
To set the visibility of the item, select \uicontrol Edit >
|
To set the visibility of the item, select \uicontrol Edit >
|
||||||
\uicontrol Visibility in the context menu.
|
\uicontrol Visibility in the context menu.
|
||||||
|
|
||||||
To specify the color of the selected item in the \uicontrol {Select Color}
|
|
||||||
dialog, select \uicontrol {Edit Color} in the context menu.
|
|
||||||
|
|
||||||
For more information on the properties available for an item, press
|
For more information on the properties available for an item, press
|
||||||
\key {F1}.
|
\key {F1}.
|
||||||
|
|
||||||
@@ -126,6 +123,39 @@
|
|||||||
\li The type is explicitly set to hidden.
|
\li The type is explicitly set to hidden.
|
||||||
\endtable
|
\endtable
|
||||||
|
|
||||||
|
\section1 Picking Colors
|
||||||
|
|
||||||
|
To specify the color of the selected item in the color picker view (1),
|
||||||
|
select the color picker icon (2) in the \uicontrol Properties pane.
|
||||||
|
|
||||||
|
\image qtquick-designer-color-picker.png "Color Picker view"
|
||||||
|
|
||||||
|
You can use either a solid color (3) or a gradient (4). You can select the
|
||||||
|
gradient in the \uicontrol {Gradient Picker} (5).
|
||||||
|
|
||||||
|
The \uicontrol Original field displays the original color of the item,
|
||||||
|
whereas the \uicontrol New field displays the current color. The
|
||||||
|
\uicontrol Recent field displays the colors that you have last selected.
|
||||||
|
|
||||||
|
\section1 Picking Gradients
|
||||||
|
|
||||||
|
The \uicontrol {Gradient Picker} enables you to specify
|
||||||
|
\l{https://webgradients.com/}{WebGradients} for QML types
|
||||||
|
that support \l QGradient.
|
||||||
|
|
||||||
|
To open the \uicontrol {Gradient Picker}, select the
|
||||||
|
\uicontrol {Gradient Picker Dialog} icon in the \uicontrol Properties view.
|
||||||
|
|
||||||
|
\image qtquick-designer-gradient-picker.png "Gradient Picker dialog"
|
||||||
|
|
||||||
|
To apply a gradient on the selected item, select \uicontrol Apply.
|
||||||
|
|
||||||
|
To save a gradient in the \uicontrol {User Presets} tab, select
|
||||||
|
\uicontrol Save.
|
||||||
|
|
||||||
|
By default, a linear gradient (4) is used, but you can select another
|
||||||
|
supported gradient type in the \uicontrol Properties view.
|
||||||
|
|
||||||
\section1 Marking Text Items for Translation
|
\section1 Marking Text Items for Translation
|
||||||
|
|
||||||
To support translators, mark each text item that should be translated.
|
To support translators, mark each text item that should be translated.
|
||||||
|
@@ -124,7 +124,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.9",
|
"QtQuickVersion": "2.9",
|
||||||
"QtQuickWindowVersion": "2.9",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.2"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -133,7 +133,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.8",
|
"QtQuickVersion": "2.8",
|
||||||
"QtQuickWindowVersion": "2.8",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.7",
|
"QtQuickVersion": "2.7",
|
||||||
"QtQuickWindowVersion": "2.7",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -151,8 +151,8 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.6",
|
"QtQuickVersion": "2.6",
|
||||||
"QtQuickWindowVersion": "2.6",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.0"
|
"QtQuickVirtualKeyboardImport": "QtQuick.Enterprise.VirtualKeyboard 2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@@ -3,7 +3,6 @@
|
|||||||
<file>main.qml</file>
|
<file>main.qml</file>
|
||||||
<file>Page1Form.ui.qml</file>
|
<file>Page1Form.ui.qml</file>
|
||||||
<file>Page2Form.ui.qml</file>
|
<file>Page2Form.ui.qml</file>
|
||||||
<file>main.qml</file>
|
|
||||||
<file>qtquickcontrols2.conf</file>
|
<file>qtquickcontrols2.conf</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
@@ -84,7 +84,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.9",
|
"QtQuickVersion": "2.9",
|
||||||
"QtQuickWindowVersion": "2.9",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.2"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.8",
|
"QtQuickVersion": "2.8",
|
||||||
"QtQuickWindowVersion": "2.8",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -102,7 +102,7 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.7",
|
"QtQuickVersion": "2.7",
|
||||||
"QtQuickWindowVersion": "2.7",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -111,8 +111,8 @@
|
|||||||
"value":
|
"value":
|
||||||
{
|
{
|
||||||
"QtQuickVersion": "2.6",
|
"QtQuickVersion": "2.6",
|
||||||
"QtQuickWindowVersion": "2.6",
|
"QtQuickWindowVersion": "2.2",
|
||||||
"QtQuickVirtualKeyboardImport": "QtQuick.VirtualKeyboard 2.0"
|
"QtQuickVirtualKeyboardImport": "QtQuick.Enterprise.VirtualKeyboard 2.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@@ -120,15 +120,15 @@ static inline QString toHtml(const QString &t)
|
|||||||
|
|
||||||
static void displayHelpText(const QString &t)
|
static void displayHelpText(const QString &t)
|
||||||
{
|
{
|
||||||
if (Utils::HostOsInfo::isWindowsHost())
|
if (Utils::HostOsInfo::isWindowsHost() && qApp)
|
||||||
QMessageBox::information(0, QLatin1String(Core::Constants::IDE_DISPLAY_NAME), toHtml(t));
|
QMessageBox::information(nullptr, QLatin1String(Core::Constants::IDE_DISPLAY_NAME), toHtml(t));
|
||||||
else
|
else
|
||||||
qWarning("%s", qPrintable(t));
|
qWarning("%s", qPrintable(t));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void displayError(const QString &t)
|
static void displayError(const QString &t)
|
||||||
{
|
{
|
||||||
if (Utils::HostOsInfo::isWindowsHost())
|
if (Utils::HostOsInfo::isWindowsHost() && qApp)
|
||||||
QMessageBox::critical(0, QLatin1String(Core::Constants::IDE_DISPLAY_NAME), t);
|
QMessageBox::critical(0, QLatin1String(Core::Constants::IDE_DISPLAY_NAME), t);
|
||||||
else
|
else
|
||||||
qCritical("%s", qPrintable(t));
|
qCritical("%s", qPrintable(t));
|
||||||
@@ -246,7 +246,7 @@ static inline QStringList getPluginPaths()
|
|||||||
static void setupInstallSettings(QString &installSettingspath)
|
static void setupInstallSettings(QString &installSettingspath)
|
||||||
{
|
{
|
||||||
if (!installSettingspath.isEmpty() && !QFileInfo(installSettingspath).isDir()) {
|
if (!installSettingspath.isEmpty() && !QFileInfo(installSettingspath).isDir()) {
|
||||||
displayHelpText(QString("-installsettingspath needs to be the path where a %1/%2.ini exist.").arg(
|
displayError(QString("-installsettingspath \"%0\" needs to be the path where a %1/%2.ini exist.").arg(installSettingspath,
|
||||||
QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR), QLatin1String(Core::Constants::IDE_CASED_ID)));
|
QLatin1String(Core::Constants::IDE_SETTINGSVARIANT_STR), QLatin1String(Core::Constants::IDE_CASED_ID)));
|
||||||
installSettingspath.clear();
|
installSettingspath.clear();
|
||||||
}
|
}
|
||||||
|
3
src/libs/3rdparty/sqlite/sqlite.pri
vendored
@@ -1,7 +1,6 @@
|
|||||||
INCLUDEPATH *= $$PWD
|
INCLUDEPATH *= $$PWD
|
||||||
|
|
||||||
HEADERS += $$PWD/okapi_bm25.h \
|
HEADERS += $$PWD/sqlite3.h \
|
||||||
$$PWD/sqlite3.h \
|
|
||||||
$$PWD/sqlite3ext.h
|
$$PWD/sqlite3ext.h
|
||||||
|
|
||||||
SOURCES += $$PWD/sqlite3.c
|
SOURCES += $$PWD/sqlite3.c
|
||||||
|
7
src/libs/3rdparty/xdg/README
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
This contains a copy of freedesktop.org's shared-mime-info base package.
|
||||||
|
|
||||||
|
Update instructions:
|
||||||
|
|
||||||
|
curl https://people.freedesktop.org/~hadess/shared-mime-info-{VERSION}.tar.xz | \
|
||||||
|
xzcat | \
|
||||||
|
tar -xO shared-mime-info-{VERSION}/freedestop.org.xml > freedesktop.org.xml
|
41233
src/libs/3rdparty/xdg/freedesktop.org.xml
vendored
Normal file
@@ -35,8 +35,6 @@
|
|||||||
#include <QThread>
|
#include <QThread>
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
|
|
||||||
#include "okapi_bm25.h"
|
|
||||||
|
|
||||||
#include "sqlite3.h"
|
#include "sqlite3.h"
|
||||||
|
|
||||||
namespace Sqlite {
|
namespace Sqlite {
|
||||||
@@ -221,9 +219,6 @@ void DatabaseBackend::registerBusyHandler()
|
|||||||
|
|
||||||
void DatabaseBackend::registerRankingFunction()
|
void DatabaseBackend::registerRankingFunction()
|
||||||
{
|
{
|
||||||
// sqlite3_create_function_v2(sqliteDatabaseHandle(), "okapi_bm25", -1, SQLITE_ANY, 0, okapi_bm25, 0, 0, 0);
|
|
||||||
// sqlite3_create_function_v2(sqliteDatabaseHandle(), "okapi_bm25f", -1, SQLITE_UTF8, 0, okapi_bm25f, 0, 0, 0);
|
|
||||||
// sqlite3_create_function_v2(sqliteDatabaseHandle(), "okapi_bm25f_kb", -1, SQLITE_UTF8, 0, okapi_bm25f_kb, 0, 0, 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int DatabaseBackend::busyHandlerCallback(void *, int counter)
|
int DatabaseBackend::busyHandlerCallback(void *, int counter)
|
||||||
|
@@ -784,28 +784,15 @@ void MimeXMLProvider::ensureLoaded()
|
|||||||
{
|
{
|
||||||
if (!m_loaded /*|| shouldCheck()*/) {
|
if (!m_loaded /*|| shouldCheck()*/) {
|
||||||
m_loaded = true;
|
m_loaded = true;
|
||||||
// bool fdoXmlFound = false;
|
QStringList allFiles = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation,
|
||||||
QStringList allFiles;
|
QStringLiteral("mime/packages/freedesktop.org.xml"),
|
||||||
|
QStandardPaths::LocateFile);
|
||||||
|
|
||||||
// const QStringList packageDirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QLatin1String("mime/packages"), QStandardPaths::LocateDirectory);
|
if (allFiles.isEmpty()) {
|
||||||
// //qDebug() << "packageDirs=" << packageDirs;
|
// System freedsktop.org.xml file not found, use our bundled copy
|
||||||
// for (const QString &packageDir : packageDirs) {
|
const char freedesktopOrgXml[] = ":/utils/mimetypes/freedesktop.org.xml";
|
||||||
// QDir dir(packageDir);
|
|
||||||
// const QStringList files = dir.entryList(QDir::Files | QDir::NoDotAndDotDot);
|
|
||||||
// //qDebug() << static_cast<const void *>(this) << packageDir << files;
|
|
||||||
// if (!fdoXmlFound)
|
|
||||||
// fdoXmlFound = files.contains(QLatin1String("freedesktop.org.xml"));
|
|
||||||
// QStringList::const_iterator endIt(files.constEnd());
|
|
||||||
// for (QStringList::const_iterator it(files.constBegin()); it != endIt; ++it) {
|
|
||||||
// allFiles.append(packageDir + QLatin1Char('/') + *it);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
// if (!fdoXmlFound) {
|
|
||||||
// // We could instead install the file as part of installing Qt?
|
|
||||||
const char freedesktopOrgXml[] = ":/qt-project.org/qmime/packages/freedesktop.org.xml";
|
|
||||||
allFiles.prepend(QLatin1String(freedesktopOrgXml));
|
allFiles.prepend(QLatin1String(freedesktopOrgXml));
|
||||||
// }
|
}
|
||||||
|
|
||||||
m_nameMimeTypeMap.clear();
|
m_nameMimeTypeMap.clear();
|
||||||
m_aliases.clear();
|
m_aliases.clear();
|
||||||
|
@@ -223,6 +223,7 @@
|
|||||||
<file>images/toggleprogressdetails@2x.png</file>
|
<file>images/toggleprogressdetails@2x.png</file>
|
||||||
<file>images/unknownfile.png</file>
|
<file>images/unknownfile.png</file>
|
||||||
<file>images/dir.png</file>
|
<file>images/dir.png</file>
|
||||||
|
<file alias="mimetypes/freedesktop.org.xml" compression-algorithm="best">../3rdparty/xdg/freedesktop.org.xml</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
<qresource prefix="/codemodel">
|
<qresource prefix="/codemodel">
|
||||||
<file>images/enum.png</file>
|
<file>images/enum.png</file>
|
||||||
|
@@ -110,9 +110,9 @@ void ResourceHandler::updateResourcesHelper(bool updateProjectResources)
|
|||||||
if (fileNode) {
|
if (fileNode) {
|
||||||
// We do not want qbs groups or qmake .pri files here, as they contain only a subset
|
// We do not want qbs groups or qmake .pri files here, as they contain only a subset
|
||||||
// of the relevant files.
|
// of the relevant files.
|
||||||
do
|
|
||||||
projectNode = fileNode->parentProjectNode();
|
projectNode = fileNode->parentProjectNode();
|
||||||
while (projectNode && !projectNode->isProduct());
|
while (projectNode && !projectNode->isProduct())
|
||||||
|
projectNode = projectNode->parentProjectNode();
|
||||||
}
|
}
|
||||||
if (!projectNode)
|
if (!projectNode)
|
||||||
projectNode = project->rootProjectNode();
|
projectNode = project->rootProjectNode();
|
||||||
|
@@ -70,7 +70,7 @@ public:
|
|||||||
static QString msgNoMakeCommand();
|
static QString msgNoMakeCommand();
|
||||||
static Task makeCommandMissingTask();
|
static Task makeCommandMissingTask();
|
||||||
|
|
||||||
bool isJobCountSupported() const;
|
virtual bool isJobCountSupported() const;
|
||||||
int jobCount() const;
|
int jobCount() const;
|
||||||
void setJobCount(int count);
|
void setJobCount(int count);
|
||||||
bool jobCountOverridesMakeflags() const;
|
bool jobCountOverridesMakeflags() const;
|
||||||
|
@@ -148,7 +148,9 @@ QVariant FlatModel::data(const QModelIndex &index, int role) const
|
|||||||
static QIcon warnIcon = Utils::Icons::WARNING.icon();
|
static QIcon warnIcon = Utils::Icons::WARNING.icon();
|
||||||
static QIcon emptyIcon = Utils::Icons::EMPTY16.icon();
|
static QIcon emptyIcon = Utils::Icons::EMPTY16.icon();
|
||||||
if (project) {
|
if (project) {
|
||||||
if (project->isParsing())
|
if (project->needsConfiguration())
|
||||||
|
result = warnIcon;
|
||||||
|
else if (project->isParsing())
|
||||||
result = emptyIcon;
|
result = emptyIcon;
|
||||||
else if (!project->activeTarget()
|
else if (!project->activeTarget()
|
||||||
|| !project->projectIssues(project->activeTarget()->kit()).isEmpty())
|
|| !project->projectIssues(project->activeTarget()->kit()).isEmpty())
|
||||||
@@ -180,7 +182,7 @@ QVariant FlatModel::data(const QModelIndex &index, int role) const
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case Project::isParsingRole: {
|
case Project::isParsingRole: {
|
||||||
result = project ? project->isParsing() : false;
|
result = project ? project->isParsing() && !project->needsConfiguration() : false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -367,6 +367,10 @@ void SessionManager::setStartupProject(Project *startupProject)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
d->m_startupProject = startupProject;
|
d->m_startupProject = startupProject;
|
||||||
|
if (d->m_startupProject && d->m_startupProject->needsConfiguration()) {
|
||||||
|
ModeManager::activateMode(Constants::MODE_SESSION);
|
||||||
|
ModeManager::setFocusToCurrentMode();
|
||||||
|
}
|
||||||
emit m_instance->startupProjectChanged(startupProject);
|
emit m_instance->startupProjectChanged(startupProject);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -48,6 +48,7 @@ private:
|
|||||||
bool init() override;
|
bool init() override;
|
||||||
void finish(bool success) override;
|
void finish(bool success) override;
|
||||||
void stdError(const QString &line) override;
|
void stdError(const QString &line) override;
|
||||||
|
bool isJobCountSupported() const override { return false; }
|
||||||
|
|
||||||
Utils::FilePath installRoot() const;
|
Utils::FilePath installRoot() const;
|
||||||
bool cleanInstallRoot() const;
|
bool cleanInstallRoot() const;
|
||||||
|
@@ -2,7 +2,6 @@ INCLUDEPATH += $$PWD
|
|||||||
|
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
$$PWD/clangrefactoringbackend_global.h \
|
$$PWD/clangrefactoringbackend_global.h \
|
||||||
$$PWD/filestatuspreprocessorcallbacks.h \
|
|
||||||
$$PWD/sourcerangefilter.h \
|
$$PWD/sourcerangefilter.h \
|
||||||
$$PWD/symbolindexer.h \
|
$$PWD/symbolindexer.h \
|
||||||
$$PWD/symbolentry.h \
|
$$PWD/symbolentry.h \
|
||||||
@@ -14,10 +13,8 @@ HEADERS += \
|
|||||||
$$PWD/symbolindexinginterface.h \
|
$$PWD/symbolindexinginterface.h \
|
||||||
$$PWD/collectmacrospreprocessorcallbacks.h \
|
$$PWD/collectmacrospreprocessorcallbacks.h \
|
||||||
$$PWD/projectpartentry.h \
|
$$PWD/projectpartentry.h \
|
||||||
$$PWD/symbolsvisitorbase.h \
|
|
||||||
$$PWD/usedmacro.h \
|
$$PWD/usedmacro.h \
|
||||||
$$PWD/sourcedependency.h \
|
$$PWD/sourcedependency.h \
|
||||||
$$PWD/indexdataconsumer.h \
|
|
||||||
$$PWD/sourcesmanager.h \
|
$$PWD/sourcesmanager.h \
|
||||||
$$PWD/symbolindexertaskqueue.h \
|
$$PWD/symbolindexertaskqueue.h \
|
||||||
$$PWD/symbolindexertaskqueueinterface.h \
|
$$PWD/symbolindexertaskqueueinterface.h \
|
||||||
@@ -35,6 +32,7 @@ SOURCES += \
|
|||||||
$$PWD/collectsymbolsaction.cpp \
|
$$PWD/collectsymbolsaction.cpp \
|
||||||
$$PWD/collectmacrossourcefilecallbacks.cpp \
|
$$PWD/collectmacrossourcefilecallbacks.cpp \
|
||||||
$$PWD/symbolscollector.cpp \
|
$$PWD/symbolscollector.cpp \
|
||||||
|
$$PWD/filestatuspreprocessorcallbacks.cpp \
|
||||||
$$PWD/clangquerygatherer.cpp \
|
$$PWD/clangquerygatherer.cpp \
|
||||||
$$PWD/symbolindexing.cpp \
|
$$PWD/symbolindexing.cpp \
|
||||||
$$PWD/indexdataconsumer.cpp
|
$$PWD/indexdataconsumer.cpp
|
||||||
@@ -51,10 +49,12 @@ HEADERS += \
|
|||||||
$$PWD/collectsymbolsaction.h \
|
$$PWD/collectsymbolsaction.h \
|
||||||
$$PWD/collectmacrossourcefilecallbacks.h \
|
$$PWD/collectmacrossourcefilecallbacks.h \
|
||||||
$$PWD/symbolscollector.h \
|
$$PWD/symbolscollector.h \
|
||||||
|
$$PWD/symbolsvisitorbase.h \
|
||||||
|
$$PWD/indexdataconsumer.h \
|
||||||
|
$$PWD/filestatuspreprocessorcallbacks.h \
|
||||||
$$PWD/clangquerygatherer.h
|
$$PWD/clangquerygatherer.h
|
||||||
}
|
}
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
$$PWD/filestatuspreprocessorcallbacks.cpp \
|
|
||||||
$$PWD/sourcerangefilter.cpp \
|
$$PWD/sourcerangefilter.cpp \
|
||||||
$$PWD/symbolindexer.cpp
|
$$PWD/symbolindexer.cpp
|
||||||
|
@@ -143,6 +143,9 @@ void tst_Ssh::errorHandling_data()
|
|||||||
|
|
||||||
void tst_Ssh::errorHandling()
|
void tst_Ssh::errorHandling()
|
||||||
{
|
{
|
||||||
|
if (SshSettings::sshFilePath().isEmpty())
|
||||||
|
QSKIP("No ssh found in PATH - skipping this test.");
|
||||||
|
|
||||||
QFETCH(QString, host);
|
QFETCH(QString, host);
|
||||||
QFETCH(quint16, port);
|
QFETCH(quint16, port);
|
||||||
QFETCH(SshConnectionParameters::AuthenticationType, authType);
|
QFETCH(SshConnectionParameters::AuthenticationType, authType);
|
||||||
|
@@ -160,7 +160,7 @@
|
|||||||
:Qt Creator_QmlJSEditor::QmlJSTextEditorWidget {type='QmlJSEditor::Internal::QmlJSEditorWidget' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
:Qt Creator_QmlJSEditor::QmlJSTextEditorWidget {type='QmlJSEditor::Internal::QmlJSEditorWidget' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
||||||
:Qt Creator_SearchResult_Core::Internal::OutputPaneToggleButton {occurrence='2' type='Core::Internal::OutputPaneToggleButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
:Qt Creator_SearchResult_Core::Internal::OutputPaneToggleButton {occurrence='2' type='Core::Internal::OutputPaneToggleButton' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
||||||
:Qt Creator_TextEditor::TextEditorWidget {type='TextEditor::TextEditorWidget' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
:Qt Creator_TextEditor::TextEditorWidget {type='TextEditor::TextEditorWidget' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
||||||
:Qt Creator_Utils::BuildDirectoryLineEdit {name='shadowBuildDirEditLineEdit' type='Utils::FancyLineEdit' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
:Qt Creator_Utils::BuildDirectoryLineEdit {name='LineEdit' type='Utils::FancyLineEdit' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
||||||
:Qt Creator_Utils::NavigationTreeView {type='Utils::NavigationTreeView' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
:Qt Creator_Utils::NavigationTreeView {type='Utils::NavigationTreeView' unnamed='1' visible='1' window=':Qt Creator_Core::Internal::MainWindow'}
|
||||||
:Qt Creator_Utils::NavigationTreeView::QExpandingLineEdit {container=':Qt Creator_Utils::NavigationTreeView' type='QExpandingLineEdit' unnamed='1' visible='1'}
|
:Qt Creator_Utils::NavigationTreeView::QExpandingLineEdit {container=':Qt Creator_Utils::NavigationTreeView' type='QExpandingLineEdit' unnamed='1' visible='1'}
|
||||||
:QtSupport__Internal__QtVersionManager.QLabel {container=':qt_tabwidget_stackedwidget.QtSupport__Internal__QtVersionManager_QtSupport::Internal::QtOptionsPageWidget' text?='Qt version *' type='QLabel' unnamed='1' visible='1'}
|
:QtSupport__Internal__QtVersionManager.QLabel {container=':qt_tabwidget_stackedwidget.QtSupport__Internal__QtVersionManager_QtSupport::Internal::QtOptionsPageWidget' text?='Qt version *' type='QLabel' unnamed='1' visible='1'}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
GOOGLEBENCHMARK_DIR = $$(GOOGLEBENCHMARK_DIR)
|
GOOGLEBENCHMARK_DIR = $$(GOOGLEBENCHMARK_DIR)
|
||||||
|
|
||||||
exists($$GOOGLEBENCHMARK_DIR) {
|
!isEmpty(GOOGLEBENCHMARK_DIR):exists($$GOOGLEBENCHMARK_DIR) {
|
||||||
INCLUDEPATH += $$GOOGLEBENCHMARK_DIR/include
|
INCLUDEPATH += $$GOOGLEBENCHMARK_DIR/include
|
||||||
|
|
||||||
DEFINES += HAVE_STD_REGEX WITH_BENCHMARKS
|
DEFINES += HAVE_STD_REGEX WITH_BENCHMARKS
|
||||||
|
@@ -24,9 +24,6 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include <QtGlobal>
|
#include <QtGlobal>
|
||||||
#include <clang-c/Index.h>
|
|
||||||
|
|
||||||
#include <clangbackend_global.h>
|
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
# define DISABLED_ON_WINDOWS(x) DISABLED_##x
|
# define DISABLED_ON_WINDOWS(x) DISABLED_##x
|
||||||
|
@@ -23,9 +23,17 @@
|
|||||||
**
|
**
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
|
#include "gtest-creator-printing.h"
|
||||||
|
|
||||||
#ifdef CLANG_UNIT_TESTS
|
#ifdef CLANG_UNIT_TESTS
|
||||||
#include <clang/Basic/SourceLocation.h>
|
#include <clang/Basic/SourceLocation.h>
|
||||||
#include <clang/Basic/SourceManager.h>
|
#include <clang/Basic/SourceManager.h>
|
||||||
|
|
||||||
|
#include <clangdocumentsuspenderresumer.h>
|
||||||
|
#include <clangreferencescollector.h>
|
||||||
|
#include <fulltokeninfo.h>
|
||||||
|
#include <tokenprocessor.h>
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <gtest/gtest-printers.h>
|
#include <gtest/gtest-printers.h>
|
||||||
@@ -77,3 +85,52 @@ void PrintTo(const SourceRange &sourceRange, ::std::ostream *os)
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace ClangBackEnd {
|
||||||
|
std::ostream &operator<<(std::ostream &os, const TokenInfo &tokenInfo)
|
||||||
|
{
|
||||||
|
os << "(type: " << tokenInfo.types() << ", "
|
||||||
|
<< " line: " << tokenInfo.line() << ", "
|
||||||
|
<< " column: " << tokenInfo.column() << ", "
|
||||||
|
<< " length: " << tokenInfo.length() << ")";
|
||||||
|
|
||||||
|
return os;
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class T>
|
||||||
|
std::ostream &operator<<(std::ostream &out, const TokenProcessor<T> &tokenInfos)
|
||||||
|
{
|
||||||
|
out << "[";
|
||||||
|
|
||||||
|
for (const T &entry : tokenInfos)
|
||||||
|
out << entry;
|
||||||
|
|
||||||
|
out << "]";
|
||||||
|
|
||||||
|
return out;
|
||||||
|
}
|
||||||
|
|
||||||
|
template std::ostream &operator<<(std::ostream &out, const TokenProcessor<TokenInfo> &tokenInfos);
|
||||||
|
template std::ostream &operator<<(std::ostream &out, const TokenProcessor<FullTokenInfo> &tokenInfos);
|
||||||
|
|
||||||
|
std::ostream &operator<<(std::ostream &out, const SuspendResumeJobsEntry &entry)
|
||||||
|
{
|
||||||
|
return out << "(" << entry.document.filePath() << ", " << entry.jobRequestType << ", "
|
||||||
|
<< entry.preferredTranslationUnit << ")";
|
||||||
|
}
|
||||||
|
|
||||||
|
std::ostream &operator<<(std::ostream &os, const ReferencesResult &value)
|
||||||
|
{
|
||||||
|
os << "ReferencesResult(";
|
||||||
|
os << value.isLocalVariable << ", {";
|
||||||
|
for (const SourceRangeContainer &r : value.references) {
|
||||||
|
os << r.start.line << ",";
|
||||||
|
os << r.start.column << ",";
|
||||||
|
os << r.end.column - r.start.column << ",";
|
||||||
|
}
|
||||||
|
os << "})";
|
||||||
|
|
||||||
|
return os;
|
||||||
|
}
|
||||||
|
|
||||||
|
} // namespace ClangBackEnd
|
||||||
|
@@ -27,6 +27,8 @@
|
|||||||
|
|
||||||
#include <iosfwd>
|
#include <iosfwd>
|
||||||
|
|
||||||
|
#include <gtest/gtest-printers.h>
|
||||||
|
|
||||||
namespace llvm {
|
namespace llvm {
|
||||||
|
|
||||||
class StringRef;
|
class StringRef;
|
||||||
@@ -48,3 +50,17 @@ namespace TestGlobal {
|
|||||||
void setSourceManager(const clang::SourceManager *sourceManager);
|
void setSourceManager(const clang::SourceManager *sourceManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace ClangBackEnd {
|
||||||
|
class TokenInfo;
|
||||||
|
template<typename T>
|
||||||
|
class TokenProcessor;
|
||||||
|
class SuspendResumeJobsEntry;
|
||||||
|
class ReferencesResult;
|
||||||
|
|
||||||
|
std::ostream &operator<<(std::ostream &os, const TokenInfo &tokenInfo);
|
||||||
|
template<class T>
|
||||||
|
std::ostream &operator<<(std::ostream &out, const TokenProcessor<T> &tokenInfos);
|
||||||
|
std::ostream &operator<<(std::ostream &out, const SuspendResumeJobsEntry &entry);
|
||||||
|
std::ostream &operator<<(std::ostream &os, const ReferencesResult &value);
|
||||||
|
|
||||||
|
} // namespace ClangBackEnd
|
||||||
|
@@ -35,15 +35,12 @@
|
|||||||
#include <builddependency.h>
|
#include <builddependency.h>
|
||||||
#include <clangcodemodelclientmessages.h>
|
#include <clangcodemodelclientmessages.h>
|
||||||
#include <clangcodemodelservermessages.h>
|
#include <clangcodemodelservermessages.h>
|
||||||
#include <clangdocumentsuspenderresumer.h>
|
|
||||||
#include <clangpathwatcher.h>
|
#include <clangpathwatcher.h>
|
||||||
#include <clangrefactoringmessages.h>
|
#include <clangrefactoringmessages.h>
|
||||||
#include <clangreferencescollector.h>
|
|
||||||
#include <filepath.h>
|
#include <filepath.h>
|
||||||
#include <filepathcaching.h>
|
#include <filepathcaching.h>
|
||||||
#include <filepathview.h>
|
#include <filepathview.h>
|
||||||
#include <filestatus.h>
|
#include <filestatus.h>
|
||||||
#include <fulltokeninfo.h>
|
|
||||||
#include <includesearchpath.h>
|
#include <includesearchpath.h>
|
||||||
#include <nativefilepath.h>
|
#include <nativefilepath.h>
|
||||||
#include <pchpaths.h>
|
#include <pchpaths.h>
|
||||||
@@ -58,16 +55,12 @@
|
|||||||
#include <symbol.h>
|
#include <symbol.h>
|
||||||
#include <symbolentry.h>
|
#include <symbolentry.h>
|
||||||
#include <symbolindexertaskqueue.h>
|
#include <symbolindexertaskqueue.h>
|
||||||
#include <tokenprocessor.h>
|
|
||||||
#include <toolchainargumentscache.h>
|
#include <toolchainargumentscache.h>
|
||||||
#include <tooltipinfo.h>
|
#include <tooltipinfo.h>
|
||||||
#include <usedmacro.h>
|
#include <usedmacro.h>
|
||||||
|
|
||||||
#include <cpptools/usages.h>
|
#include <cpptools/usages.h>
|
||||||
|
|
||||||
#include <projectexplorer/projectmacro.h>
|
#include <projectexplorer/projectmacro.h>
|
||||||
#include <projectexplorer/headerpath.h>
|
#include <projectexplorer/headerpath.h>
|
||||||
|
|
||||||
#include <coreplugin/find/searchresultitem.h>
|
#include <coreplugin/find/searchresultitem.h>
|
||||||
#include <coreplugin/locator/ilocatorfilter.h>
|
#include <coreplugin/locator/ilocatorfilter.h>
|
||||||
|
|
||||||
@@ -924,35 +917,6 @@ std::ostream &operator<<(std::ostream &os, const DocumentVisibilityChangedMessag
|
|||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &os, const TokenInfo &tokenInfo)
|
|
||||||
{
|
|
||||||
os << "(type: " << tokenInfo.types() << ", "
|
|
||||||
<< " line: " << tokenInfo.line() << ", "
|
|
||||||
<< " column: " << tokenInfo.column() << ", "
|
|
||||||
<< " length: " << tokenInfo.length()
|
|
||||||
<< ")";
|
|
||||||
|
|
||||||
return os;
|
|
||||||
}
|
|
||||||
|
|
||||||
template<class T>
|
|
||||||
std::ostream &operator<<(std::ostream &out, const TokenProcessor<T> &tokenInfos)
|
|
||||||
{
|
|
||||||
out << "[";
|
|
||||||
|
|
||||||
for (const T &entry : tokenInfos)
|
|
||||||
out << entry;
|
|
||||||
|
|
||||||
out << "]";
|
|
||||||
|
|
||||||
return out;
|
|
||||||
}
|
|
||||||
|
|
||||||
template
|
|
||||||
std::ostream &operator<<(std::ostream &out, const TokenProcessor<TokenInfo> &tokenInfos);
|
|
||||||
template
|
|
||||||
std::ostream &operator<<(std::ostream &out, const TokenProcessor<FullTokenInfo> &tokenInfos);
|
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &out, const FilePath &filePath)
|
std::ostream &operator<<(std::ostream &out, const FilePath &filePath)
|
||||||
{
|
{
|
||||||
return out << "(" << filePath.path() << ", " << filePath.slashIndex() << ")";
|
return out << "(" << filePath.path() << ", " << filePath.slashIndex() << ")";
|
||||||
@@ -1078,30 +1042,6 @@ std::ostream &operator<<(std::ostream &out, const RemoveGeneratedFilesMessage &m
|
|||||||
return out << "(" << message.generatedFiles << ")";
|
return out << "(" << message.generatedFiles << ")";
|
||||||
}
|
}
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &out, const SuspendResumeJobsEntry &entry)
|
|
||||||
{
|
|
||||||
return out << "("
|
|
||||||
<< entry.document.filePath() << ", "
|
|
||||||
<< entry.jobRequestType << ", "
|
|
||||||
<< entry.preferredTranslationUnit
|
|
||||||
<< ")";
|
|
||||||
}
|
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &os, const ReferencesResult &value)
|
|
||||||
{
|
|
||||||
os << "ReferencesResult(";
|
|
||||||
os << value.isLocalVariable << ", {";
|
|
||||||
for (const SourceRangeContainer &r : value.references) {
|
|
||||||
os << r.start.line << ",";
|
|
||||||
os << r.start.column << ",";
|
|
||||||
EXPECT_THAT(r.start.line, testing::Eq(r.end.line));
|
|
||||||
os << r.end.column - r.start.column << ",";
|
|
||||||
}
|
|
||||||
os << "})";
|
|
||||||
|
|
||||||
return os;
|
|
||||||
}
|
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &out, const SymbolIndexerTask &task)
|
std::ostream &operator<<(std::ostream &out, const SymbolIndexerTask &task)
|
||||||
{
|
{
|
||||||
return out << "(" << task.filePathId << ", " << task.projectPartId << ")";
|
return out << "(" << task.filePathId << ", " << task.projectPartId << ")";
|
||||||
|
@@ -99,10 +99,8 @@ SOURCES += \
|
|||||||
nativefilepath-test.cpp \
|
nativefilepath-test.cpp \
|
||||||
nativefilepathview-test.cpp \
|
nativefilepathview-test.cpp \
|
||||||
mocktimer.cpp \
|
mocktimer.cpp \
|
||||||
tokenprocessor-test.cpp \
|
|
||||||
projectpartartefact-test.cpp \
|
projectpartartefact-test.cpp \
|
||||||
filestatuscache-test.cpp \
|
filestatuscache-test.cpp \
|
||||||
highlightingresultreporter-test.cpp \
|
|
||||||
precompiledheaderstorage-test.cpp \
|
precompiledheaderstorage-test.cpp \
|
||||||
generatedfiles-test.cpp \
|
generatedfiles-test.cpp \
|
||||||
sourcesmanager-test.cpp \
|
sourcesmanager-test.cpp \
|
||||||
@@ -165,6 +163,7 @@ SOURCES += \
|
|||||||
diagnosticset-test.cpp \
|
diagnosticset-test.cpp \
|
||||||
diagnostic-test.cpp \
|
diagnostic-test.cpp \
|
||||||
fixit-test.cpp \
|
fixit-test.cpp \
|
||||||
|
highlightingresultreporter-test.cpp \
|
||||||
senddocumenttracker-test.cpp \
|
senddocumenttracker-test.cpp \
|
||||||
skippedsourceranges-test.cpp \
|
skippedsourceranges-test.cpp \
|
||||||
sourcelocation-test.cpp \
|
sourcelocation-test.cpp \
|
||||||
@@ -176,6 +175,7 @@ SOURCES += \
|
|||||||
sqlitetable-test.cpp \
|
sqlitetable-test.cpp \
|
||||||
sqlstatementbuilder-test.cpp \
|
sqlstatementbuilder-test.cpp \
|
||||||
token-test.cpp \
|
token-test.cpp \
|
||||||
|
tokenprocessor-test.cpp \
|
||||||
translationunitupdater-test.cpp \
|
translationunitupdater-test.cpp \
|
||||||
unsavedfiles-test.cpp \
|
unsavedfiles-test.cpp \
|
||||||
unsavedfile-test.cpp \
|
unsavedfile-test.cpp \
|
||||||
@@ -207,7 +207,7 @@ SOURCES += \
|
|||||||
SOURCES += clangformat-test.cpp
|
SOURCES += clangformat-test.cpp
|
||||||
}
|
}
|
||||||
|
|
||||||
exists($$GOOGLEBENCHMARK_DIR) {
|
!isEmpty(GOOGLEBENCHMARK_DIR):exists($$GOOGLEBENCHMARK_DIR) {
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
smallstring-benchmark.cpp
|
smallstring-benchmark.cpp
|
||||||
}
|
}
|
||||||
|