forked from qt-creator/qt-creator
Merge remote branch 'origin/2.2'
Conflicts: src/plugins/projectexplorer/gcctoolchain.cpp src/plugins/projectexplorer/target.cpp src/plugins/qt4projectmanager/qt-s60/qt4symbiantargetfactory.cpp
This commit is contained in:
@@ -11022,6 +11022,24 @@
|
|||||||
switch to the nfs-kernel-server, or create a symlink so that the
|
switch to the nfs-kernel-server, or create a symlink so that the
|
||||||
settings are stored locally.
|
settings are stored locally.
|
||||||
|
|
||||||
|
\o The Okteta KDE custom widget plugin might be installed as part of
|
||||||
|
some Linux distributions. It can cause Qt Designer to crash. For
|
||||||
|
more information, see:
|
||||||
|
|
||||||
|
\list
|
||||||
|
|
||||||
|
\o \l{https://bugs.launchpad.net/ubuntu/+source/kdeutils/+bug/662005}{Ubuntu bug 662005}
|
||||||
|
\o \l{http://bugreports.qt.nokia.com/browse/QTBUG-12025}{QTBUG-12025}
|
||||||
|
|
||||||
|
\endlist
|
||||||
|
|
||||||
|
To resolve the issue, enter the following command to remove the package:
|
||||||
|
\code
|
||||||
|
sudo apt-get remove okteta
|
||||||
|
\endcode
|
||||||
|
Or delete the following file:
|
||||||
|
\c /usr/lib/kde4/plugins/designer/oktetadesignerplugin.so.
|
||||||
|
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
\section1 Editing Issues
|
\section1 Editing Issues
|
||||||
|
@@ -9544,6 +9544,10 @@ S60 emulator run configuration default display name, %1 is base pro-File name</e
|
|||||||
<source><b>qmake:</b> %1 %2</source>
|
<source><b>qmake:</b> %1 %2</source>
|
||||||
<translation><b>qmake:</b> %1 %2</translation>
|
<translation><b>qmake:</b> %1 %2</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Might make the application vulnerable. Use only in a safe environment.</source>
|
||||||
|
<translation>Kann die Anwendung angreifbar machen. Verwenden sie diese Option nur in sicherer Umgebung.</translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Qt4ProjectManager::Qt4Manager</name>
|
<name>Qt4ProjectManager::Qt4Manager</name>
|
||||||
|
@@ -21045,6 +21045,10 @@ Check if the phone is connected and App TRK is running.</source>
|
|||||||
<source><b>qmake:</b> %1 %2</source>
|
<source><b>qmake:</b> %1 %2</source>
|
||||||
<translation><b>qmake:</b> %1 %2</translation>
|
<translation><b>qmake:</b> %1 %2</translation>
|
||||||
</message>
|
</message>
|
||||||
|
<message>
|
||||||
|
<source>Might make the application vulnerable. Use only in a safe environment.</source>
|
||||||
|
<translation>Может сделать приложение уязвимым. Используйте только в безопасных системах.</translation>
|
||||||
|
</message>
|
||||||
</context>
|
</context>
|
||||||
<context>
|
<context>
|
||||||
<name>Qt4ProjectManager::QmlDebuggingLibrary</name>
|
<name>Qt4ProjectManager::QmlDebuggingLibrary</name>
|
||||||
|
@@ -81,7 +81,10 @@ static QString quoteWinArgument(const QString &arg)
|
|||||||
// The argument must not end with a \ since this would be interpreted
|
// The argument must not end with a \ since this would be interpreted
|
||||||
// as escaping the quote -- rather put the \ behind the quote: e.g.
|
// as escaping the quote -- rather put the \ behind the quote: e.g.
|
||||||
// rather use "foo"\ than "foo\"
|
// rather use "foo"\ than "foo\"
|
||||||
ret.replace(QRegExp(QLatin1String("(\\\\*)$")), QLatin1String("\"\\1"));
|
int i = ret.length();
|
||||||
|
while (i > 0 && ret.at(i - 1) == QLatin1Char('\\'))
|
||||||
|
--i;
|
||||||
|
ret.insert(i, QLatin1Char('"'));
|
||||||
ret.prepend(QLatin1Char('"'));
|
ret.prepend(QLatin1Char('"'));
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
@@ -163,6 +163,19 @@ QTCREATOR_UTILS_EXPORT QString getLongPathName(const QString &name)
|
|||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// makes sure that capitalization of directories is canonical.
|
||||||
|
// This mimics the logic in QDeclarative_isFileCaseCorrect
|
||||||
|
QTCREATOR_UTILS_EXPORT QString normalizePathName(const QString &name)
|
||||||
|
{
|
||||||
|
QString canonicalName = getShortPathName(name);
|
||||||
|
if (canonicalName.isEmpty())
|
||||||
|
return name;
|
||||||
|
canonicalName = getLongPathName(canonicalName);
|
||||||
|
if (canonicalName.isEmpty())
|
||||||
|
return name;
|
||||||
|
return canonicalName;
|
||||||
|
}
|
||||||
|
|
||||||
QTCREATOR_UTILS_EXPORT unsigned long winQPidToPid(const Q_PID qpid)
|
QTCREATOR_UTILS_EXPORT unsigned long winQPidToPid(const Q_PID qpid)
|
||||||
{
|
{
|
||||||
const PROCESS_INFORMATION *processInfo = reinterpret_cast<const PROCESS_INFORMATION*>(qpid);
|
const PROCESS_INFORMATION *processInfo = reinterpret_cast<const PROCESS_INFORMATION*>(qpid);
|
||||||
|
@@ -59,6 +59,9 @@ QTCREATOR_UTILS_EXPORT QString getShortPathName(const QString &name);
|
|||||||
// Returns long name
|
// Returns long name
|
||||||
QTCREATOR_UTILS_EXPORT QString getLongPathName(const QString &name);
|
QTCREATOR_UTILS_EXPORT QString getLongPathName(const QString &name);
|
||||||
|
|
||||||
|
// Returns long name with canonical capitalization.
|
||||||
|
QTCREATOR_UTILS_EXPORT QString normalizePathName(const QString &name);
|
||||||
|
|
||||||
QTCREATOR_UTILS_EXPORT unsigned long winQPidToPid(const Q_PID qpid);
|
QTCREATOR_UTILS_EXPORT unsigned long winQPidToPid(const Q_PID qpid);
|
||||||
|
|
||||||
QTCREATOR_UTILS_EXPORT bool winIs64BitSystem();
|
QTCREATOR_UTILS_EXPORT bool winIs64BitSystem();
|
||||||
|
@@ -217,12 +217,6 @@ bool CommonOptionsPage::matches(const QString &s) const
|
|||||||
//
|
//
|
||||||
///////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
static bool oxygenStyle()
|
|
||||||
{
|
|
||||||
const ManhattanStyle *ms = qobject_cast<const ManhattanStyle *>(qApp->style());
|
|
||||||
return ms && !qstrcmp("OxygenStyle", ms->baseStyle()->metaObject()->className());
|
|
||||||
}
|
|
||||||
|
|
||||||
QString DebuggingHelperOptionPage::id() const
|
QString DebuggingHelperOptionPage::id() const
|
||||||
{
|
{
|
||||||
return _("Z.DebuggingHelper");
|
return _("Z.DebuggingHelper");
|
||||||
@@ -263,28 +257,16 @@ QWidget *DebuggingHelperOptionPage::createPage(QWidget *parent)
|
|||||||
QWidget *w = new QWidget(parent);
|
QWidget *w = new QWidget(parent);
|
||||||
m_ui.setupUi(w);
|
m_ui.setupUi(w);
|
||||||
|
|
||||||
m_ui.dumperLocationChooser->setExpectedKind(Utils::PathChooser::Command);
|
|
||||||
m_ui.dumperLocationChooser->setPromptDialogTitle(QCoreApplication::translate
|
|
||||||
("Debugger", "Choose DebuggingHelper Location"));
|
|
||||||
m_ui.dumperLocationChooser->setInitialBrowsePathBackup(
|
|
||||||
ICore::instance()->resourcePath() + "../../lib");
|
|
||||||
|
|
||||||
m_group.clear();
|
m_group.clear();
|
||||||
DebuggerCore *dc = debuggerCore();
|
DebuggerCore *dc = debuggerCore();
|
||||||
|
|
||||||
m_group.insert(dc->action(UseDebuggingHelpers),
|
m_group.insert(dc->action(UseDebuggingHelpers),
|
||||||
m_ui.debuggingHelperGroupBox);
|
m_ui.debuggingHelperGroupBox);
|
||||||
m_group.insert(dc->action(UseCustomDebuggingHelperLocation),
|
|
||||||
m_ui.customLocationGroupBox);
|
|
||||||
// Suppress Oxygen style's giving flat group boxes bold titles.
|
|
||||||
if (oxygenStyle())
|
|
||||||
m_ui.customLocationGroupBox->setStyleSheet(_("QGroupBox::title { font: ; }"));
|
|
||||||
|
|
||||||
m_group.insert(dc->action(CustomDebuggingHelperLocation),
|
|
||||||
m_ui.dumperLocationChooser);
|
|
||||||
|
|
||||||
m_group.insert(dc->action(UseCodeModel),
|
m_group.insert(dc->action(UseCodeModel),
|
||||||
m_ui.checkBoxUseCodeModel);
|
m_ui.checkBoxUseCodeModel);
|
||||||
|
m_ui.checkBoxUseCodeModel->setToolTip(dc->action(UseCodeModel)->toolTip());
|
||||||
|
|
||||||
m_group.insert(dc->action(ShowThreadNames),
|
m_group.insert(dc->action(ShowThreadNames),
|
||||||
m_ui.checkBoxShowThreadNames);
|
m_ui.checkBoxShowThreadNames);
|
||||||
|
|
||||||
@@ -302,8 +284,6 @@ QWidget *DebuggingHelperOptionPage::createPage(QWidget *parent)
|
|||||||
if (m_searchKeywords.isEmpty()) {
|
if (m_searchKeywords.isEmpty()) {
|
||||||
QTextStream(&m_searchKeywords)
|
QTextStream(&m_searchKeywords)
|
||||||
<< ' ' << m_ui.debuggingHelperGroupBox->title()
|
<< ' ' << m_ui.debuggingHelperGroupBox->title()
|
||||||
<< ' ' << m_ui.customLocationGroupBox->title()
|
|
||||||
<< ' ' << m_ui.dumperLocationLabel->text()
|
|
||||||
<< ' ' << m_ui.checkBoxUseCodeModel->text()
|
<< ' ' << m_ui.checkBoxUseCodeModel->text()
|
||||||
<< ' ' << m_ui.checkBoxShowThreadNames->text();
|
<< ' ' << m_ui.checkBoxShowThreadNames->text();
|
||||||
m_searchKeywords.remove(QLatin1Char('&'));
|
m_searchKeywords.remove(QLatin1Char('&'));
|
||||||
|
@@ -265,20 +265,6 @@ DebuggerSettings::DebuggerSettings(QSettings *settings)
|
|||||||
item->setValue(true);
|
item->setValue(true);
|
||||||
insertItem(UseDebuggingHelpers, item);
|
insertItem(UseDebuggingHelpers, item);
|
||||||
|
|
||||||
item = new SavedAction(this);
|
|
||||||
item->setSettingsKey(debugModeGroup, QLatin1String("UseCustomDebuggingHelperLocation"));
|
|
||||||
item->setCheckable(true);
|
|
||||||
item->setDefaultValue(false);
|
|
||||||
item->setValue(false);
|
|
||||||
insertItem(UseCustomDebuggingHelperLocation, item);
|
|
||||||
|
|
||||||
item = new SavedAction(this);
|
|
||||||
item->setSettingsKey(debugModeGroup, QLatin1String("CustomDebuggingHelperLocation"));
|
|
||||||
item->setCheckable(true);
|
|
||||||
item->setDefaultValue(QString());
|
|
||||||
item->setValue(QString());
|
|
||||||
insertItem(CustomDebuggingHelperLocation, item);
|
|
||||||
|
|
||||||
item = new SavedAction(this);
|
item = new SavedAction(this);
|
||||||
item->setSettingsKey(debugModeGroup, QLatin1String("UseCodeModel"));
|
item->setSettingsKey(debugModeGroup, QLatin1String("UseCodeModel"));
|
||||||
item->setText(tr("Use Code Model"));
|
item->setText(tr("Use Code Model"));
|
||||||
|
@@ -101,8 +101,6 @@ enum DebuggerActionCode
|
|||||||
SwitchModeOnExit,
|
SwitchModeOnExit,
|
||||||
|
|
||||||
UseDebuggingHelpers,
|
UseDebuggingHelpers,
|
||||||
UseCustomDebuggingHelperLocation,
|
|
||||||
CustomDebuggingHelperLocation,
|
|
||||||
|
|
||||||
UseCodeModel,
|
UseCodeModel,
|
||||||
ShowThreadNames,
|
ShowThreadNames,
|
||||||
|
@@ -633,13 +633,6 @@ bool DebuggerEngine::qtDumperLibraryEnabled() const
|
|||||||
|
|
||||||
QStringList DebuggerEngine::qtDumperLibraryLocations() const
|
QStringList DebuggerEngine::qtDumperLibraryLocations() const
|
||||||
{
|
{
|
||||||
if (debuggerCore()->action(UseCustomDebuggingHelperLocation)->value().toBool()) {
|
|
||||||
const QString customLocation =
|
|
||||||
debuggerCore()->action(CustomDebuggingHelperLocation)->value().toString();
|
|
||||||
const QString location =
|
|
||||||
tr("%1 (explicitly set in the Debugger Options)").arg(customLocation);
|
|
||||||
return QStringList(location);
|
|
||||||
}
|
|
||||||
return d->m_startParameters.dumperLibraryLocations;
|
return d->m_startParameters.dumperLibraryLocations;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -650,8 +643,6 @@ void DebuggerEngine::showQtDumperLibraryWarning(const QString &details)
|
|||||||
|
|
||||||
QString DebuggerEngine::qtDumperLibraryName() const
|
QString DebuggerEngine::qtDumperLibraryName() const
|
||||||
{
|
{
|
||||||
if (debuggerCore()->action(UseCustomDebuggingHelperLocation)->value().toBool())
|
|
||||||
return debuggerCore()->action(CustomDebuggingHelperLocation)->value().toString();
|
|
||||||
return startParameters().dumperLibrary;
|
return startParameters().dumperLibrary;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -47,6 +47,7 @@
|
|||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#ifdef Q_OS_WIN
|
||||||
# include "peutils.h"
|
# include "peutils.h"
|
||||||
|
# include <utils/winutils.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <projectexplorer/abi.h>
|
#include <projectexplorer/abi.h>
|
||||||
@@ -686,6 +687,12 @@ static DebuggerStartParameters localStartParameters(RunConfiguration *runConfigu
|
|||||||
sp.startMode = StartInternal;
|
sp.startMode = StartInternal;
|
||||||
sp.environment = rc->environment();
|
sp.environment = rc->environment();
|
||||||
sp.workingDirectory = rc->workingDirectory();
|
sp.workingDirectory = rc->workingDirectory();
|
||||||
|
|
||||||
|
#if defined(Q_OS_WIN)
|
||||||
|
// Work around QTBUG-17529 (QtDeclarative fails with 'File name case mismatch' ...)
|
||||||
|
sp.workingDirectory = Utils::normalizePathName(sp.workingDirectory);
|
||||||
|
#endif
|
||||||
|
|
||||||
sp.executable = rc->executable();
|
sp.executable = rc->executable();
|
||||||
sp.processArgs = rc->commandLineArguments();
|
sp.processArgs = rc->commandLineArguments();
|
||||||
sp.toolChainAbi = rc->abi();
|
sp.toolChainAbi = rc->abi();
|
||||||
|
@@ -50,31 +50,6 @@
|
|||||||
<bool>true</bool>
|
<bool>true</bool>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
<item>
|
|
||||||
<widget class="QGroupBox" name="customLocationGroupBox">
|
|
||||||
<property name="title">
|
|
||||||
<string>Use debugging helper from custom location</string>
|
|
||||||
</property>
|
|
||||||
<property name="flat">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<property name="checkable">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
<layout class="QFormLayout" name="formLayout">
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="dumperLocationLabel">
|
|
||||||
<property name="text">
|
|
||||||
<string>Location: </string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="Utils::PathChooser" name="dumperLocationChooser" native="true"/>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<widget class="QCheckBox" name="checkBoxUseCodeModel">
|
<widget class="QCheckBox" name="checkBoxUseCodeModel">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
|
@@ -668,7 +668,7 @@ void QmlCppEngine::handleRemoteSetupFailed(const QString &message)
|
|||||||
|
|
||||||
void QmlCppEngine::showMessage(const QString &msg, int channel, int timeout) const
|
void QmlCppEngine::showMessage(const QString &msg, int channel, int timeout) const
|
||||||
{
|
{
|
||||||
if (channel == AppOutput || channel == AppError) {
|
if (channel == AppOutput || channel == AppError || channel == AppStuff) {
|
||||||
// message is from CppEngine, allow qml engine to process
|
// message is from CppEngine, allow qml engine to process
|
||||||
d->m_qmlEngine->filterApplicationMessage(msg, channel);
|
d->m_qmlEngine->filterApplicationMessage(msg, channel);
|
||||||
}
|
}
|
||||||
|
@@ -1048,7 +1048,11 @@ QString QmlEngine::mangleFilenamePaths(const QString &filename,
|
|||||||
QFileInfo fileInfo(filename);
|
QFileInfo fileInfo(filename);
|
||||||
|
|
||||||
if (oldBaseDir.exists() && newBaseDir.exists() && fileInfo.exists()) {
|
if (oldBaseDir.exists() && newBaseDir.exists() && fileInfo.exists()) {
|
||||||
if (fileInfo.absoluteFilePath().startsWith(oldBaseDir.canonicalPath())) {
|
Qt::CaseSensitivity caseSensitive = Qt::CaseSensitive;
|
||||||
|
#ifdef Q_OS_WIN
|
||||||
|
caseSensitive = Qt::CaseInsensitive;
|
||||||
|
#endif
|
||||||
|
if (fileInfo.absoluteFilePath().startsWith(oldBaseDir.canonicalPath(), caseSensitive)) {
|
||||||
QString fileRelativePath = fileInfo.canonicalFilePath().mid(oldBaseDir.canonicalPath().length());
|
QString fileRelativePath = fileInfo.canonicalFilePath().mid(oldBaseDir.canonicalPath().length());
|
||||||
QFileInfo projectFile(newBaseDir.canonicalPath() + QLatin1Char('/') + fileRelativePath);
|
QFileInfo projectFile(newBaseDir.canonicalPath() + QLatin1Char('/') + fileRelativePath);
|
||||||
|
|
||||||
|
@@ -71,10 +71,7 @@ ApplicationLauncher::~ApplicationLauncher()
|
|||||||
void ApplicationLauncher::setWorkingDirectory(const QString &dir)
|
void ApplicationLauncher::setWorkingDirectory(const QString &dir)
|
||||||
{
|
{
|
||||||
// Work around QTBUG-17529 (QtDeclarative fails with 'File name case mismatch' ...)
|
// Work around QTBUG-17529 (QtDeclarative fails with 'File name case mismatch' ...)
|
||||||
QString fixedPath = dir;
|
const QString fixedPath = Utils::normalizePathName(dir);
|
||||||
const QString longPath = Utils::getLongPathName(dir);
|
|
||||||
if (!longPath.isEmpty())
|
|
||||||
fixedPath = longPath;
|
|
||||||
|
|
||||||
d->m_winGuiProcess.setWorkingDirectory(fixedPath);
|
d->m_winGuiProcess.setWorkingDirectory(fixedPath);
|
||||||
d->m_consoleProcess.setWorkingDirectory(fixedPath);
|
d->m_consoleProcess.setWorkingDirectory(fixedPath);
|
||||||
|
@@ -505,8 +505,6 @@ bool Target::fromMap(const QVariantMap &map)
|
|||||||
if (i == activeConfiguration)
|
if (i == activeConfiguration)
|
||||||
setActiveDeployConfiguration(dc);
|
setActiveDeployConfiguration(dc);
|
||||||
}
|
}
|
||||||
if (deployConfigurations().isEmpty() && d->deployFactories().isEmpty())
|
|
||||||
return false;
|
|
||||||
|
|
||||||
int rcCount = map.value(QLatin1String(RC_COUNT_KEY), 0).toInt(&ok);
|
int rcCount = map.value(QLatin1String(RC_COUNT_KEY), 0).toInt(&ok);
|
||||||
if (!ok || rcCount < 0)
|
if (!ok || rcCount < 0)
|
||||||
|
@@ -865,6 +865,11 @@ InformationChangedCommand NodeInstanceServer::createAllInformationChangedCommand
|
|||||||
return InformationChangedCommand(informationVector);
|
return InformationChangedCommand(informationVector);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool supportedVariantType(QVariant::Type type)
|
||||||
|
{
|
||||||
|
return type < QVariant::UserType && type != QVariant::Icon;
|
||||||
|
}
|
||||||
|
|
||||||
ValuesChangedCommand NodeInstanceServer::createValuesChangedCommand(const QList<ServerNodeInstance> &instanceList) const
|
ValuesChangedCommand NodeInstanceServer::createValuesChangedCommand(const QList<ServerNodeInstance> &instanceList) const
|
||||||
{
|
{
|
||||||
QVector<PropertyValueContainer> valueVector;
|
QVector<PropertyValueContainer> valueVector;
|
||||||
@@ -872,7 +877,7 @@ ValuesChangedCommand NodeInstanceServer::createValuesChangedCommand(const QList<
|
|||||||
foreach(const ServerNodeInstance &instance, instanceList) {
|
foreach(const ServerNodeInstance &instance, instanceList) {
|
||||||
foreach(const QString &propertyName, instance.propertyNames()) {
|
foreach(const QString &propertyName, instance.propertyNames()) {
|
||||||
QVariant propertyValue = instance.property(propertyName);
|
QVariant propertyValue = instance.property(propertyName);
|
||||||
if (propertyValue.type() < QVariant::UserType)
|
if (supportedVariantType(propertyValue.type()))
|
||||||
valueVector.append(PropertyValueContainer(instance.instanceId(), propertyName, propertyValue, QString()));
|
valueVector.append(PropertyValueContainer(instance.instanceId(), propertyName, propertyValue, QString()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -901,7 +906,7 @@ ValuesChangedCommand NodeInstanceServer::createValuesChangedCommand(const QVecto
|
|||||||
|
|
||||||
if( instance.isValid()) {
|
if( instance.isValid()) {
|
||||||
QVariant propertyValue = instance.property(propertyName);
|
QVariant propertyValue = instance.property(propertyName);
|
||||||
if (propertyValue.type() < QVariant::UserType)
|
if (supportedVariantType(propertyValue.type()))
|
||||||
valueVector.append(PropertyValueContainer(instance.instanceId(), propertyName, propertyValue, QString()));
|
valueVector.append(PropertyValueContainer(instance.instanceId(), propertyName, propertyValue, QString()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -45,7 +45,7 @@
|
|||||||
#include <qt4projectmanager/qtoutputformatter.h>
|
#include <qt4projectmanager/qtoutputformatter.h>
|
||||||
#include <qt4projectmanager/qt4projectmanagerconstants.h>
|
#include <qt4projectmanager/qt4projectmanagerconstants.h>
|
||||||
|
|
||||||
#ifdef Q_OS_WIN32
|
#ifdef Q_OS_WIN
|
||||||
#include <utils/winutils.h>
|
#include <utils/winutils.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -180,20 +180,13 @@ void QmlProjectRunConfiguration::setQtVersionId(int id)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* QtDeclarative checks explicitly that the capitalization for any URL / path
|
/* QtDeclarative checks explicitly that the capitalization for any URL / path
|
||||||
is exactly like the capitalization on disk. This method is uses the same
|
is exactly like the capitalization on disk.*/
|
||||||
native Windows API's to get the exact canonical path. */
|
|
||||||
QString QmlProjectRunConfiguration::canonicalCapsPath(const QString &fileName)
|
QString QmlProjectRunConfiguration::canonicalCapsPath(const QString &fileName)
|
||||||
{
|
{
|
||||||
QString canonicalPath = QFileInfo(fileName).canonicalFilePath();
|
QString canonicalPath = QFileInfo(fileName).canonicalFilePath();
|
||||||
|
|
||||||
#if defined(Q_OS_WIN32)
|
#if defined(Q_OS_WIN)
|
||||||
// don't know whether the shortpath step is really needed,
|
canonicalPath = Utils::normalizePathName(canonicalPath);
|
||||||
// but we do this in QtDeclarative too.
|
|
||||||
QString path = Utils::getShortPathName(canonicalPath);
|
|
||||||
if (!path.isEmpty())
|
|
||||||
path = Utils::getLongPathName(canonicalPath);
|
|
||||||
if (!path.isEmpty())
|
|
||||||
canonicalPath = path;
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return canonicalPath;
|
return canonicalPath;
|
||||||
|
@@ -620,7 +620,7 @@ void QMakeStepConfigWidget::updateQmlDebuggingWarningsLabel()
|
|||||||
|
|
||||||
if (m_step->linkQmlDebuggingLibrary()) {
|
if (m_step->linkQmlDebuggingLibrary()) {
|
||||||
if (m_step->isQmlDebuggingLibrarySupported()) {
|
if (m_step->isQmlDebuggingLibrarySupported()) {
|
||||||
m_ui.qmlDebuggingWarningText->setText("Might make your application vulnerable. Only use in a safe environment!");
|
m_ui.qmlDebuggingWarningText->setText(tr("Might make the application vulnerable. Use only in a safe environment."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -196,7 +196,7 @@ public:
|
|||||||
|
|
||||||
virtual bool allowsRemoteMounts() const { return false; }
|
virtual bool allowsRemoteMounts() const { return false; }
|
||||||
virtual bool allowsPackagingDisabling() const { return false; }
|
virtual bool allowsPackagingDisabling() const { return false; }
|
||||||
virtual bool allowsQmlDebugging() const { return true; }
|
virtual bool allowsQmlDebugging() const { return false; }
|
||||||
|
|
||||||
virtual QString projectVersion(QString *error = 0) const;
|
virtual QString projectVersion(QString *error = 0) const;
|
||||||
virtual QString packageName() const;
|
virtual QString packageName() const;
|
||||||
@@ -258,7 +258,7 @@ public:
|
|||||||
|
|
||||||
virtual bool allowsRemoteMounts() const { return false; }
|
virtual bool allowsRemoteMounts() const { return false; }
|
||||||
virtual bool allowsPackagingDisabling() const { return false; }
|
virtual bool allowsPackagingDisabling() const { return false; }
|
||||||
virtual bool allowsQmlDebugging() const { return true; }
|
virtual bool allowsQmlDebugging() const { return false; }
|
||||||
|
|
||||||
static QString defaultDisplayName();
|
static QString defaultDisplayName();
|
||||||
|
|
||||||
|
@@ -4276,6 +4276,7 @@ void BaseTextEditorWidget::extraAreaMouseEvent(QMouseEvent *e)
|
|||||||
if (!contextMenu->isEmpty())
|
if (!contextMenu->isEmpty())
|
||||||
contextMenu->exec(e->globalPos());
|
contextMenu->exec(e->globalPos());
|
||||||
delete contextMenu;
|
delete contextMenu;
|
||||||
|
e->accept();
|
||||||
}
|
}
|
||||||
} else if (d->extraAreaSelectionAnchorBlockNumber >= 0) {
|
} else if (d->extraAreaSelectionAnchorBlockNumber >= 0) {
|
||||||
QTextCursor selection = cursor;
|
QTextCursor selection = cursor;
|
||||||
|
Reference in New Issue
Block a user