summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libs/3rdparty/botan/src/src.pro2
-rw-r--r--src/libs/cplusplus/cplusplus.pro1
-rw-r--r--src/libs/glsl/glsl.pro1
-rw-r--r--src/libs/languageutils/languageutils.pro1
-rw-r--r--src/libs/qmleditorwidgets/qmleditorwidgets.pro1
-rw-r--r--src/libs/qmljs/qmljs.pro1
-rw-r--r--src/libs/qmljs/qmljstypedescriptionreader.cpp6
-rw-r--r--src/libs/qmljsdebugclient/qmljsdebugclient.pro1
-rw-r--r--src/libs/symbianutils/symbianutils.pro1
-rw-r--r--src/libs/utils/utils.pro1
-rw-r--r--src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp2
-rw-r--r--src/plugins/coreplugin/ioutputpane.h7
-rw-r--r--src/plugins/coreplugin/outputpane.cpp22
-rw-r--r--src/plugins/coreplugin/outputpane.h1
-rw-r--r--src/plugins/coreplugin/outputpanemanager.cpp6
-rw-r--r--src/plugins/coreplugin/outputpanemanager.h2
-rw-r--r--src/plugins/debugger/dumper.pro1
-rw-r--r--src/plugins/debugger/ptracepreload.pro1
-rw-r--r--src/plugins/debugger/watchhandler.cpp22
-rw-r--r--src/plugins/fakevim/fakevimplugin.cpp2
-rw-r--r--src/plugins/find/searchresultwindow.cpp8
-rw-r--r--src/plugins/projectexplorer/appoutputpane.cpp24
-rw-r--r--src/plugins/projectexplorer/buildconfiguration.cpp4
-rw-r--r--src/plugins/projectexplorer/gcctoolchain.cpp1
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp2
-rw-r--r--src/plugins/projectexplorer/sessiondialog.cpp4
-rw-r--r--src/plugins/projectexplorer/sessiondialog.h2
-rw-r--r--src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp4
-rw-r--r--src/plugins/qmldesigner/designercore/include/rewriterview.h2
-rw-r--r--src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp4
-rw-r--r--src/plugins/qmldesigner/designercore/model/rewriterview.cpp2
-rw-r--r--src/plugins/qmldesigner/designercore/model/texttomodelmerger.h4
-rw-r--r--src/plugins/qmljstools/qmljsmodelmanager.cpp5
-rw-r--r--src/plugins/qt4projectmanager/makestep.cpp6
-rw-r--r--src/plugins/qt4projectmanager/qt4nodes.cpp12
-rw-r--r--src/plugins/qt4projectmanager/qt4project.cpp16
-rw-r--r--src/plugins/qtsupport/qtversionmanager.cpp4
-rw-r--r--src/qtcreatorlibrary.pri2
-rw-r--r--src/shared/qrceditor/qrceditor.cpp1
-rw-r--r--src/shared/qrceditor/resourcefile.cpp29
-rw-r--r--src/shared/qrceditor/resourcefile_p.h1
-rw-r--r--src/shared/qrceditor/resourceview.cpp5
-rw-r--r--src/shared/qrceditor/resourceview.h1
43 files changed, 149 insertions, 76 deletions
diff --git a/src/libs/3rdparty/botan/src/src.pro b/src/libs/3rdparty/botan/src/src.pro
index 15967fbd1e..63646891e0 100644
--- a/src/libs/3rdparty/botan/src/src.pro
+++ b/src/libs/3rdparty/botan/src/src.pro
@@ -1,8 +1,6 @@
TEMPLATE = lib
TARGET = Botan
-CONFIG += dll
-
PRECOMPILED_HEADER = ../../precompiled_headers/botan_pch.h
include(../../../../qtcreatorlibrary.pri)
diff --git a/src/libs/cplusplus/cplusplus.pro b/src/libs/cplusplus/cplusplus.pro
index 57d009f161..82ee8bfded 100644
--- a/src/libs/cplusplus/cplusplus.pro
+++ b/src/libs/cplusplus/cplusplus.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG+=dll
TARGET = CPlusPlus
DEFINES += NDEBUG
diff --git a/src/libs/glsl/glsl.pro b/src/libs/glsl/glsl.pro
index 3041ec1d65..14dc79d67c 100644
--- a/src/libs/glsl/glsl.pro
+++ b/src/libs/glsl/glsl.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG += dll
TARGET = GLSL
DEFINES += GLSL_BUILD_LIB QT_CREATOR
diff --git a/src/libs/languageutils/languageutils.pro b/src/libs/languageutils/languageutils.pro
index c1478a8e0d..ecf4888922 100644
--- a/src/libs/languageutils/languageutils.pro
+++ b/src/libs/languageutils/languageutils.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG += dll
TARGET = LanguageUtils
DEFINES += QT_CREATOR
diff --git a/src/libs/qmleditorwidgets/qmleditorwidgets.pro b/src/libs/qmleditorwidgets/qmleditorwidgets.pro
index ad9e1dfa21..c449baac71 100644
--- a/src/libs/qmleditorwidgets/qmleditorwidgets.pro
+++ b/src/libs/qmleditorwidgets/qmleditorwidgets.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG+=dll
TARGET = QmlEditorWidgets
DEFINES += QWEAKPOINTER_ENABLE_ARROW
diff --git a/src/libs/qmljs/qmljs.pro b/src/libs/qmljs/qmljs.pro
index 30dfe3d6d9..0c46c7a6d0 100644
--- a/src/libs/qmljs/qmljs.pro
+++ b/src/libs/qmljs/qmljs.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG += dll
TARGET = QmlJS
DEFINES += QMLJS_BUILD_DIR QT_CREATOR
diff --git a/src/libs/qmljs/qmljstypedescriptionreader.cpp b/src/libs/qmljs/qmljstypedescriptionreader.cpp
index a5c49d5b11..2b0770a259 100644
--- a/src/libs/qmljs/qmljstypedescriptionreader.cpp
+++ b/src/libs/qmljs/qmljstypedescriptionreader.cpp
@@ -149,7 +149,11 @@ void TypeDescriptionReader::readModule(UiObjectDefinition *ast)
for (UiObjectMemberList *it = ast->initializer->members; it; it = it->next) {
UiObjectMember *member = it->member;
UiObjectDefinition *component = dynamic_cast<UiObjectDefinition *>(member);
- const QString typeName = toString(component->qualifiedTypeNameId);
+
+ QString typeName;
+ if (component)
+ typeName = toString(component->qualifiedTypeNameId);
+
if (!component || (typeName != "Component" && typeName != "ModuleApi")) {
addWarning(member->firstSourceLocation(), "Expected only 'Component' and 'ModuleApi' object definitions");
continue;
diff --git a/src/libs/qmljsdebugclient/qmljsdebugclient.pro b/src/libs/qmljsdebugclient/qmljsdebugclient.pro
index 43300f4b39..6e82922235 100644
--- a/src/libs/qmljsdebugclient/qmljsdebugclient.pro
+++ b/src/libs/qmljsdebugclient/qmljsdebugclient.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG += dll
TARGET = QmlJSDebugClient
QT += network
DEFINES += QMLJSDEBUGCLIENT_LIBRARY
diff --git a/src/libs/symbianutils/symbianutils.pro b/src/libs/symbianutils/symbianutils.pro
index ed2ff004eb..a9ab5d5c0f 100644
--- a/src/libs/symbianutils/symbianutils.pro
+++ b/src/libs/symbianutils/symbianutils.pro
@@ -1,5 +1,4 @@
TEMPLATE = lib
-CONFIG+=dll
TARGET = symbianutils
DEFINES += SYMBIANUTILS_BUILD_LIB JSON_BUILD_LIB
include(../../qtcreatorlibrary.pri)
diff --git a/src/libs/utils/utils.pro b/src/libs/utils/utils.pro
index f42fec090c..5762de3631 100644
--- a/src/libs/utils/utils.pro
+++ b/src/libs/utils/utils.pro
@@ -3,7 +3,6 @@ TARGET = Utils
QT += gui \
network
-CONFIG += dll
include(../../qtcreatorlibrary.pri)
include(utils_dependencies.pri)
diff --git a/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp b/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
index 40059923d3..481de46419 100644
--- a/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
@@ -143,7 +143,6 @@ void CMakeOpenProjectWizard::init()
{
setOption(QWizard::NoBackButtonOnStartPage);
setWindowTitle(tr("CMake Wizard"));
- setMinimumSize(800, 600);
}
CMakeManager *CMakeOpenProjectWizard::cmakeManager() const
@@ -354,6 +353,7 @@ void CMakeRunPage::initWidgets()
fl->addRow(m_exitCodeLabel);
setTitle(tr("Run CMake"));
+ setMinimumSize(600, 400);
}
void CMakeRunPage::initializePage()
diff --git a/src/plugins/coreplugin/ioutputpane.h b/src/plugins/coreplugin/ioutputpane.h
index edcdb9d218..df033e7658 100644
--- a/src/plugins/coreplugin/ioutputpane.h
+++ b/src/plugins/coreplugin/ioutputpane.h
@@ -78,15 +78,16 @@ public:
virtual void goToPrev() = 0;
public slots:
- void popup() { popup(true); }
- void popup(bool withFocus) { emit showPage(withFocus); }
+ void popup() { popup(true, false); }
+ void popup(bool withFocus) { popup(withFocus, false); }
+ void popup(bool withFocus, bool ensureSizeHint) { emit showPage(withFocus, ensureSizeHint); }
void hide() { emit hidePage(); }
void toggle() { toggle(true); }
void toggle(bool withFocusIfShown) { emit togglePage(withFocusIfShown); }
void navigateStateChanged() { emit navigateStateUpdate(); }
signals:
- void showPage(bool withFocus);
+ void showPage(bool withFocus, bool ensureSizeHint);
void hidePage();
void togglePage(bool withFocusIfShown);
void navigateStateUpdate();
diff --git a/src/plugins/coreplugin/outputpane.cpp b/src/plugins/coreplugin/outputpane.cpp
index 336e7bc656..95543b0d7f 100644
--- a/src/plugins/coreplugin/outputpane.cpp
+++ b/src/plugins/coreplugin/outputpane.cpp
@@ -143,6 +143,28 @@ bool OutputPanePlaceHolder::isMaximized() const
return Internal::OutputPaneManager::instance()->isMaximized();
}
+void OutputPanePlaceHolder::ensureSizeHintAsMinimum()
+{
+ if (!d->m_splitter)
+ return;
+ int idx = d->m_splitter->indexOf(this);
+ if (idx < 0)
+ return;
+
+ QList<int> sizes = d->m_splitter->sizes();
+ Internal::OutputPaneManager *om = Internal::OutputPaneManager::instance();
+ int minimum = (d->m_splitter->orientation() == Qt::Vertical
+ ? om->sizeHint().height() : om->sizeHint().width());
+ int difference = minimum - sizes.at(idx);
+ if (difference <= 0) // is already larger
+ return;
+ for (int i = 0; i < sizes.count(); ++i) {
+ sizes[i] += difference / (sizes.count()-1);
+ }
+ sizes[idx] = minimum;
+ d->m_splitter->setSizes(sizes);
+}
+
void OutputPanePlaceHolder::unmaximize()
{
if (Internal::OutputPaneManager::instance()->isMaximized())
diff --git a/src/plugins/coreplugin/outputpane.h b/src/plugins/coreplugin/outputpane.h
index 5c4c7dc413..b0dbf6af66 100644
--- a/src/plugins/coreplugin/outputpane.h
+++ b/src/plugins/coreplugin/outputpane.h
@@ -64,6 +64,7 @@ public:
void unmaximize();
bool isMaximized() const;
+ void ensureSizeHintAsMinimum();
private slots:
void currentModeChanged(Core::IMode *);
diff --git a/src/plugins/coreplugin/outputpanemanager.cpp b/src/plugins/coreplugin/outputpanemanager.cpp
index 3bf6bc3c60..f4d7c5a9c4 100644
--- a/src/plugins/coreplugin/outputpanemanager.cpp
+++ b/src/plugins/coreplugin/outputpanemanager.cpp
@@ -254,7 +254,7 @@ void OutputPaneManager::init()
const int idx = m_outputWidgetPane->addWidget(outPane->outputWidget(this));
m_pageMap.insert(idx, outPane);
- connect(outPane, SIGNAL(showPage(bool)), this, SLOT(showPage(bool)));
+ connect(outPane, SIGNAL(showPage(bool,bool)), this, SLOT(showPage(bool,bool)));
connect(outPane, SIGNAL(hidePage()), this, SLOT(slotHide()));
connect(outPane, SIGNAL(togglePage(bool)), this, SLOT(togglePage(bool)));
connect(outPane, SIGNAL(navigateStateUpdate()), this, SLOT(updateNavigateState()));
@@ -431,10 +431,12 @@ void OutputPaneManager::updateNavigateState()
}
// Slot connected to showPage signal of each page
-void OutputPaneManager::showPage(bool focus)
+void OutputPaneManager::showPage(bool focus, bool ensureSizeHint)
{
int idx = findIndexForPage(qobject_cast<IOutputPane*>(sender()));
showPage(idx, focus);
+ if (ensureSizeHint && OutputPanePlaceHolder::getCurrent())
+ OutputPanePlaceHolder::getCurrent()->ensureSizeHintAsMinimum();
}
void OutputPaneManager::showPage(int idx, bool focus)
diff --git a/src/plugins/coreplugin/outputpanemanager.h b/src/plugins/coreplugin/outputpanemanager.h
index 0f0423792a..280a470310 100644
--- a/src/plugins/coreplugin/outputpanemanager.h
+++ b/src/plugins/coreplugin/outputpanemanager.h
@@ -78,7 +78,7 @@ protected:
private slots:
void changePage();
- void showPage(bool focus);
+ void showPage(bool focus, bool ensureSizeHint);
void togglePage(bool focus);
void clearPage();
void buttonTriggered();
diff --git a/src/plugins/debugger/dumper.pro b/src/plugins/debugger/dumper.pro
index 3e51d3d3b2..9c352f85d1 100644
--- a/src/plugins/debugger/dumper.pro
+++ b/src/plugins/debugger/dumper.pro
@@ -4,7 +4,6 @@ include(../../qtcreatorlibrary.pri)
TEMPLATE = lib
TARGET = DebuggingHelper
-CONFIG += shared
DESTDIR = $$IDE_LIBRARY_PATH # /tmp would be better in some respect ...
linux-* {
diff --git a/src/plugins/debugger/ptracepreload.pro b/src/plugins/debugger/ptracepreload.pro
index 1a9e00aa74..4c0b0d9846 100644
--- a/src/plugins/debugger/ptracepreload.pro
+++ b/src/plugins/debugger/ptracepreload.pro
@@ -3,7 +3,6 @@ include(../../qtcreatorlibrary.pri)
TEMPLATE = lib
TARGET = ptracepreload
-CONFIG += shared
CONFIG -= qt
DESTDIR = $$IDE_LIBRARY_PATH
diff --git a/src/plugins/debugger/watchhandler.cpp b/src/plugins/debugger/watchhandler.cpp
index 3de5f5bc0f..aacebc2332 100644
--- a/src/plugins/debugger/watchhandler.cpp
+++ b/src/plugins/debugger/watchhandler.cpp
@@ -457,16 +457,16 @@ QString WatchModel::formattedValue(const WatchData &data) const
QString result = value;
if (result.startsWith(QLatin1Char('<'))) {
if (result == QLatin1String("<Edit>"))
- result = WatchHandler::tr("<Edit>");
- else if (result == QLatin1String("<empty>"))
- result = WatchHandler::tr("<empty>");
- else if (result == QLatin1String("<uninitialized>"))
- result = WatchHandler::tr("<uninitialized>");
- else if (result == QLatin1String("<invalid>"))
- result = WatchHandler::tr("<invalid>");
- else if (result == QLatin1String("<not accessible>"))
- result = WatchHandler::tr("<not accessible>");
- else if (result.endsWith(" items>")) {
+ return WatchHandler::tr("<Edit>");
+ if (result == QLatin1String("<empty>"))
+ return WatchHandler::tr("<empty>");
+ if (result == QLatin1String("<uninitialized>"))
+ return WatchHandler::tr("<uninitialized>");
+ if (result == QLatin1String("<invalid>"))
+ return WatchHandler::tr("<invalid>");
+ if (result == QLatin1String("<not accessible>"))
+ return WatchHandler::tr("<not accessible>");
+ if (result.endsWith(" items>")) {
// '<10 items>' or '<>10 items>' (more than)
bool ok;
const bool moreThan = result.at(1) == QLatin1Char('>');
@@ -475,7 +475,7 @@ QString WatchModel::formattedValue(const WatchData &data) const
const int size = result.mid(numberPos, len).toInt(&ok);
QTC_ASSERT(ok, qWarning("WatchHandler: Invalid item count '%s'",
qPrintable(result)))
- result = moreThan ?
+ return moreThan ?
WatchHandler::tr("<more than %n items>", 0, size) :
WatchHandler::tr("<%n items>", 0, size);
}
diff --git a/src/plugins/fakevim/fakevimplugin.cpp b/src/plugins/fakevim/fakevimplugin.cpp
index fc714fe962..9e31c05ee5 100644
--- a/src/plugins/fakevim/fakevimplugin.cpp
+++ b/src/plugins/fakevim/fakevimplugin.cpp
@@ -991,7 +991,7 @@ bool FakeVimPluginPrivate::initialize()
for (int i = 1; i < 10; ++i) {
QAction *act = new QAction(this);
- act->setText(QString("Execute User Action #%1").arg(i));
+ act->setText(tr("Execute User Action #%1").arg(i));
act->setData(i);
QString id = QString("FakeVim.UserAction%1").arg(i);
QString keys = QString("Alt+V,%1").arg(i);
diff --git a/src/plugins/find/searchresultwindow.cpp b/src/plugins/find/searchresultwindow.cpp
index f5e04a2ece..27233ef970 100644
--- a/src/plugins/find/searchresultwindow.cpp
+++ b/src/plugins/find/searchresultwindow.cpp
@@ -48,6 +48,7 @@
#include <QtGui/QFont>
#include <QtGui/QAction>
#include <QtGui/QComboBox>
+#include <QtGui/QScrollArea>
#include <QtGui/QStackedWidget>
static const char SETTINGSKEYSECTIONNAME[] = "SearchResults";
@@ -209,7 +210,10 @@ SearchResultWindow::SearchResultWindow(QWidget *newSearchPanel)
d->m_widget = new QStackedWidget;
d->m_widget->setWindowTitle(displayName());
- d->m_widget->addWidget(newSearchPanel);
+ QScrollArea *newSearchArea = new QScrollArea(d->m_widget);
+ newSearchArea->setFrameStyle(QFrame::NoFrame);
+ newSearchArea->setWidget(newSearchPanel);
+ d->m_widget->addWidget(newSearchArea);
d->m_currentIndex = 0;
d->m_expandCollapseButton = new QToolButton(d->m_widget);
@@ -400,7 +404,7 @@ void SearchResultWindow::setTextEditorFont(const QFont &font)
void SearchResultWindow::openNewSearchPanel()
{
d->setCurrentIndex(0);
- popup();
+ popup(true/*focus*/, true/*sizeHint*/);
}
/*!
diff --git a/src/plugins/projectexplorer/appoutputpane.cpp b/src/plugins/projectexplorer/appoutputpane.cpp
index e5caea75d1..33f9e6ccc6 100644
--- a/src/plugins/projectexplorer/appoutputpane.cpp
+++ b/src/plugins/projectexplorer/appoutputpane.cpp
@@ -427,7 +427,7 @@ bool AppOutputPane::closeTab(int index)
bool AppOutputPane::closeTab(int tabIndex, CloseTabMode closeTabMode)
{
- const int index = indexOf(m_tabWidget->widget(tabIndex));
+ int index = indexOf(m_tabWidget->widget(tabIndex));
QTC_ASSERT(index != -1, return true;)
RunControlTab &tab = m_runControlTabs[index];
@@ -441,13 +441,29 @@ bool AppOutputPane::closeTab(int tabIndex, CloseTabMode closeTabMode)
case CloseTabNoPrompt:
break;
case CloseTabWithPrompt:
+ QWidget *tabWidget = m_tabWidget->widget(tabIndex);
if (!tab.runControl->promptToStop())
return false;
+ // The event loop has run, thus the ordering might have changed, a tab might
+ // have been closed, so do some strange things...
+ tabIndex = m_tabWidget->indexOf(tabWidget);
+ index = indexOf(tabWidget);
+ if (tabIndex == -1 || index == -1)
+ return false;
+ tab = m_runControlTabs[index];
break;
}
- if (tab.runControl->stop() == RunControl::AsynchronousStop) {
- tab.asyncClosing = true;
- return false;
+ if (tab.runControl->isRunning()) { // yes it might have stopped already, then just close
+ QWidget *tabWidget = m_tabWidget->widget(tabIndex);
+ if (tab.runControl->stop() == RunControl::AsynchronousStop) {
+ tab.asyncClosing = true;
+ return false;
+ }
+ tabIndex = m_tabWidget->indexOf(tabWidget);
+ index = indexOf(tabWidget);
+ if (tabIndex == -1 || index == -1)
+ return false;
+ tab = m_runControlTabs[index];
}
}
diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp
index 0841ec719b..3f94a892d0 100644
--- a/src/plugins/projectexplorer/buildconfiguration.cpp
+++ b/src/plugins/projectexplorer/buildconfiguration.cpp
@@ -187,6 +187,10 @@ bool BuildConfiguration::fromMap(const QVariantMap &map)
delete list;
return false;
}
+ if (list->id() == QLatin1String(Constants::BUILDSTEPS_BUILD))
+ list->setDefaultDisplayName(tr("Build"));
+ else if (list->id() == QLatin1String(Constants::BUILDSTEPS_CLEAN))
+ list->setDefaultDisplayName(tr("Clean"));
m_stepLists.append(list);
}
diff --git a/src/plugins/projectexplorer/gcctoolchain.cpp b/src/plugins/projectexplorer/gcctoolchain.cpp
index 13dc89fff0..24aeb95908 100644
--- a/src/plugins/projectexplorer/gcctoolchain.cpp
+++ b/src/plugins/projectexplorer/gcctoolchain.cpp
@@ -382,7 +382,6 @@ void GccToolChain::addToEnvironment(Utils::Environment &env) const
{
if (!m_compilerPath.isEmpty())
env.prependOrSetPath(QFileInfo(m_compilerPath).absolutePath());
- env.set(QLatin1String("LANG"), QLatin1String("C"));
}
void GccToolChain::setDebuggerCommand(const QString &d)
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index 6cbed896af..ef448b1216 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -1178,7 +1178,7 @@ void ProjectExplorerPlugin::showSessionManager()
} else {
d->m_session->save();
}
- SessionDialog sessionDialog(d->m_session);
+ SessionDialog sessionDialog(d->m_session, Core::ICore::instance()->mainWindow());
sessionDialog.setAutoLoadSession(d->m_projectExplorerSettings.autorestoreLastSession);
sessionDialog.exec();
d->m_projectExplorerSettings.autorestoreLastSession = sessionDialog.autoLoadSession();
diff --git a/src/plugins/projectexplorer/sessiondialog.cpp b/src/plugins/projectexplorer/sessiondialog.cpp
index b943b62b7a..0c593463e4 100644
--- a/src/plugins/projectexplorer/sessiondialog.cpp
+++ b/src/plugins/projectexplorer/sessiondialog.cpp
@@ -145,8 +145,8 @@ bool SessionNameInputDialog::isSwitchToRequested() const
}
-SessionDialog::SessionDialog(SessionManager *sessionManager)
- : m_sessionManager(sessionManager)
+SessionDialog::SessionDialog(SessionManager *sessionManager, QWidget *parent)
+ : QDialog(parent), m_sessionManager(sessionManager)
{
m_ui.setupUi(this);
diff --git a/src/plugins/projectexplorer/sessiondialog.h b/src/plugins/projectexplorer/sessiondialog.h
index b8e3da69ef..d9700bc05f 100644
--- a/src/plugins/projectexplorer/sessiondialog.h
+++ b/src/plugins/projectexplorer/sessiondialog.h
@@ -48,7 +48,7 @@ class SessionDialog : public QDialog
{
Q_OBJECT
public:
- SessionDialog(SessionManager *sessionManager);
+ SessionDialog(SessionManager *sessionManager, QWidget *parent = 0);
void setAutoLoadSession(bool);
bool autoLoadSession() const;
diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp
index c2a48ea89f..a90e4d8bd7 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp
@@ -132,12 +132,12 @@ FormEditorWidget::FormEditorWidget(FormEditorView *view)
addAction(m_selectOnlyContentItemsAction.data());
upperActions.append(m_selectOnlyContentItemsAction.data());
- m_rootWidthAction = new LineEditAction("width", this);
+ m_rootWidthAction = new LineEditAction(tr("width"), this);
connect(m_rootWidthAction.data(), SIGNAL(textChanged(QString)), this, SLOT(changeRootItemWidth(QString)));
addAction(m_rootWidthAction.data());
upperActions.append(m_rootWidthAction.data());
- m_rootHeightAction = new LineEditAction("height", this);
+ m_rootHeightAction = new LineEditAction(tr("height"), this);
connect(m_rootHeightAction.data(), SIGNAL(textChanged(QString)), this, SLOT(changeRootItemHeight(QString)));
addAction(m_rootHeightAction.data());
upperActions.append(m_rootHeightAction.data());
diff --git a/src/plugins/qmldesigner/designercore/include/rewriterview.h b/src/plugins/qmldesigner/designercore/include/rewriterview.h
index 1a47517977..482aea9656 100644
--- a/src/plugins/qmldesigner/designercore/include/rewriterview.h
+++ b/src/plugins/qmldesigner/designercore/include/rewriterview.h
@@ -187,8 +187,8 @@ public:
bool renameId(const QString& oldId, const QString& newId);
- const QmlJS::ScopeChain &scopeChain() const;
const QmlJS::Document *document() const;
+ const QmlJS::ScopeChain *scopeChain() const;
QString convertTypeToImportAlias(const QString &type) const;
diff --git a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
index 4b1f4a350c..a77facd865 100644
--- a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
+++ b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
@@ -490,8 +490,8 @@ const QmlJS::ObjectValue *NodeMetaInfoPrivate::getObjectValue() const
QmlJS::ContextPtr NodeMetaInfoPrivate::context() const
{
- if (m_model && m_model->rewriterView()) {
- return m_model->rewriterView()->scopeChain().context();
+ if (m_model && m_model->rewriterView() && m_model->rewriterView()->scopeChain()) {
+ return m_model->rewriterView()->scopeChain()->context();
}
return QmlJS::ContextPtr(0);
}
diff --git a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp
index e0b01c7b47..ade173a2f0 100644
--- a/src/plugins/qmldesigner/designercore/model/rewriterview.cpp
+++ b/src/plugins/qmldesigner/designercore/model/rewriterview.cpp
@@ -624,7 +624,7 @@ bool RewriterView::renameId(const QString& oldId, const QString& newId)
return false;
}
-const QmlJS::ScopeChain &RewriterView::scopeChain() const
+const QmlJS::ScopeChain *RewriterView::scopeChain() const
{
return textToModelMerger()->scopeChain();
}
diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.h b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.h
index 57a55f687e..84b20a9b12 100644
--- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.h
+++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.h
@@ -68,8 +68,8 @@ public:
RewriterView *view() const
{ return m_rewriterView; }
- const QmlJS::ScopeChain &scopeChain() const
- { return *m_scopeChain; }
+ const QmlJS::ScopeChain *scopeChain() const
+ { return m_scopeChain.data(); }
const QmlJS::Document *document() const
{ return m_document.data(); }
diff --git a/src/plugins/qmljstools/qmljsmodelmanager.cpp b/src/plugins/qmljstools/qmljsmodelmanager.cpp
index b3e96de9ce..beb90c1ed2 100644
--- a/src/plugins/qmljstools/qmljsmodelmanager.cpp
+++ b/src/plugins/qmljstools/qmljsmodelmanager.cpp
@@ -354,8 +354,9 @@ void ModelManager::updateProjectInfo(const ProjectInfo &pinfo)
}
updateSourceFiles(newFiles, false);
- // dump builtin types if the shipped definitions are probably outdated
- if (QtSupport::QtVersionNumber(pinfo.qtVersionString) > QtSupport::QtVersionNumber(4, 7, 3))
+ // dump builtin types if the shipped definitions are probably outdated and the
+ // Qt version ships qmlplugindump
+ if (QtSupport::QtVersionNumber(pinfo.qtVersionString) >= QtSupport::QtVersionNumber(4, 8, 0))
m_pluginDumper->loadBuiltinTypes(pinfo);
emit projectInfoUpdated(pinfo);
diff --git a/src/plugins/qt4projectmanager/makestep.cpp b/src/plugins/qt4projectmanager/makestep.cpp
index a7d540e224..835aa560a1 100644
--- a/src/plugins/qt4projectmanager/makestep.cpp
+++ b/src/plugins/qt4projectmanager/makestep.cpp
@@ -190,6 +190,9 @@ bool MakeStep::init()
}
Utils::Environment env = bc->environment();
+ // Force output to english for the parsers. Do this here and not in the toolchain's
+ // addToEnvironment() to not screw up the users run environment.
+ env.set(QLatin1String("LC_ALL"), QLatin1String("C"));
// -w option enables "Enter"/"Leaving directory" messages, which we need for detecting the
// absolute file path
// FIXME doing this without the user having a way to override this is rather bad
@@ -361,6 +364,9 @@ void MakeStepConfigWidget::updateDetails()
}
Utils::Environment env = bc->environment();
+ // Force output to english for the parsers. Do this here and not in the toolchain's
+ // addToEnvironment() to not screw up the users run environment.
+ env.set(QLatin1String("LC_ALL"), QLatin1String("C"));
// -w option enables "Enter"/"Leaving directory" messages, which we need for detecting the
// absolute file path
// FIXME doing this without the user having a way to override this is rather bad
diff --git a/src/plugins/qt4projectmanager/qt4nodes.cpp b/src/plugins/qt4projectmanager/qt4nodes.cpp
index fba68d7562..12831a5a0b 100644
--- a/src/plugins/qt4projectmanager/qt4nodes.cpp
+++ b/src/plugins/qt4projectmanager/qt4nodes.cpp
@@ -165,7 +165,7 @@ enum { debug = 0 };
using namespace Qt4ProjectManager;
using namespace Qt4ProjectManager::Internal;
-Qt4PriFile::Qt4PriFile(Qt4PriFileNode *qt4PriFile)
+Qt4PriFile::Qt4PriFile(Qt4ProjectManager::Qt4PriFileNode *qt4PriFile)
: IFile(qt4PriFile), m_priFile(qt4PriFile)
{
@@ -243,6 +243,8 @@ bool Qt4PriFile::reload(QString *errorString, ReloadFlag flag, ChangeType type)
Implements abstract ProjectNode class
*/
+namespace Qt4ProjectManager {
+
Qt4PriFileNode::Qt4PriFileNode(Qt4Project *project, Qt4ProFileNode* qt4ProFileNode, const QString &filePath)
: ProjectNode(filePath),
m_project(project),
@@ -266,7 +268,6 @@ void Qt4PriFileNode::scheduleUpdate()
m_qt4ProFileNode->scheduleUpdate();
}
-namespace Qt4ProjectManager {
namespace Internal {
struct InternalNode
{
@@ -375,7 +376,7 @@ struct InternalNode
}
// Makes the projectNode's subtree below the given folder match this internal node's subtree
- void updateSubFolders(Qt4PriFileNode *projectNode, ProjectExplorer::FolderNode *folder)
+ void updateSubFolders(Qt4ProjectManager::Qt4PriFileNode *projectNode, ProjectExplorer::FolderNode *folder)
{
updateFiles(projectNode, folder, type);
@@ -440,7 +441,7 @@ struct InternalNode
}
// Makes the folder's files match this internal node's file list
- void updateFiles(Qt4PriFileNode *projectNode, FolderNode *folder, FileType type)
+ void updateFiles(Qt4ProjectManager::Qt4PriFileNode *projectNode, FolderNode *folder, FileType type)
{
QList<FileNode*> existingFileNodes;
foreach (FileNode *fileNode, folder->fileNodes()) {
@@ -485,7 +486,6 @@ struct InternalNode
}
};
}
-}
QStringList Qt4PriFileNode::baseVPaths(QtSupport::ProFileReader *reader, const QString &projectDir)
{
@@ -1291,6 +1291,8 @@ QSet<Utils::FileName> Qt4PriFileNode::filterFilesRecursiveEnumerata(ProjectExplo
return result;
}
+} // namespace Qt4ProjectManager
+
static Qt4ProjectType proFileTemplateTypeToProjectType(ProFileEvaluator::TemplateType type)
{
switch (type) {
diff --git a/src/plugins/qt4projectmanager/qt4project.cpp b/src/plugins/qt4projectmanager/qt4project.cpp
index 208958487f..a99037840b 100644
--- a/src/plugins/qt4projectmanager/qt4project.cpp
+++ b/src/plugins/qt4projectmanager/qt4project.cpp
@@ -118,8 +118,8 @@ class CentralizedFolderWatcher : public QObject
public:
CentralizedFolderWatcher(QObject *parent);
~CentralizedFolderWatcher();
- void watchFolders(const QList<QString> &folders, Qt4PriFileNode *node);
- void unwatchFolders(const QList<QString> &folders, Qt4PriFileNode *node);
+ void watchFolders(const QList<QString> &folders, Qt4ProjectManager::Qt4PriFileNode *node);
+ void unwatchFolders(const QList<QString> &folders, Qt4ProjectManager::Qt4PriFileNode *node);
private slots:
void folderChanged(const QString &folder);
@@ -129,7 +129,7 @@ private slots:
private:
QSet<QString> recursiveDirs(const QString &folder);
QFileSystemWatcher m_watcher;
- QMultiMap<QString, Qt4PriFileNode *> m_map;
+ QMultiMap<QString, Qt4ProjectManager::Qt4PriFileNode *> m_map;
QSet<QString> m_recursiveWatchedFolders;
QTimer m_compressTimer;
@@ -1198,7 +1198,7 @@ QSet<QString> CentralizedFolderWatcher::recursiveDirs(const QString &folder)
return result;
}
-void CentralizedFolderWatcher::watchFolders(const QList<QString> &folders, Qt4PriFileNode *node)
+void CentralizedFolderWatcher::watchFolders(const QList<QString> &folders, Qt4ProjectManager::Qt4PriFileNode *node)
{
if (debugCFW)
qDebug()<<"CFW::watchFolders()"<<folders<<"for node"<<node->path();
@@ -1222,7 +1222,7 @@ void CentralizedFolderWatcher::watchFolders(const QList<QString> &folders, Qt4Pr
}
}
-void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, Qt4PriFileNode *node)
+void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, Qt4ProjectManager::Qt4PriFileNode *node)
{
if (debugCFW)
qDebug()<<"CFW::unwatchFolders()"<<folders<<"for node"<<node->path();
@@ -1246,7 +1246,7 @@ void CentralizedFolderWatcher::unwatchFolders(const QList<QString> &folders, Qt4
// So the rwf is a subdirectory of a folder we aren't watching
// but maybe someone else wants us to watch
bool needToWatch = false;
- QMultiMap<QString, Qt4PriFileNode *>::const_iterator it, end;
+ QMultiMap<QString, Qt4ProjectManager::Qt4PriFileNode *>::const_iterator it, end;
end = m_map.constEnd();
for (it = m_map.constEnd(); it != end; ++it) {
if (rwf.startsWith(it.key())) {
@@ -1293,8 +1293,8 @@ void CentralizedFolderWatcher::delayedFolderChanged(const QString &folder)
while (true) {
if (!dir.endsWith('/'))
dir.append('/');
- QList<Qt4PriFileNode *> nodes = m_map.values(dir);
- foreach (Qt4PriFileNode *node, nodes) {
+ QList<Qt4ProjectManager::Qt4PriFileNode *> nodes = m_map.values(dir);
+ foreach (Qt4ProjectManager::Qt4PriFileNode *node, nodes) {
node->folderChanged(folder);
}
diff --git a/src/plugins/qtsupport/qtversionmanager.cpp b/src/plugins/qtsupport/qtversionmanager.cpp
index 018a5d3d17..6b6bb525b0 100644
--- a/src/plugins/qtsupport/qtversionmanager.cpp
+++ b/src/plugins/qtsupport/qtversionmanager.cpp
@@ -746,6 +746,10 @@ QtVersionManager::MakefileCompatible QtVersionManager::makefileIsFor(const QStri
if (proFile.isEmpty())
return CouldNotParse;
+ // The Makefile.Debug / Makefile.Release lack a # Command: line
+ if (findQMakeLine(makefile, QLatin1String("# Command:")).trimmed().isEmpty())
+ return CouldNotParse;
+
QString line = findQMakeLine(makefile, QLatin1String("# Project:")).trimmed();
if (line.isEmpty())
return CouldNotParse;
diff --git a/src/qtcreatorlibrary.pri b/src/qtcreatorlibrary.pri
index 335e2ea978..e46e3a2d28 100644
--- a/src/qtcreatorlibrary.pri
+++ b/src/qtcreatorlibrary.pri
@@ -13,6 +13,8 @@ include(rpath.pri)
TARGET = $$qtLibraryName($$TARGET)
+CONFIG += shared dll
+
contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
!macx {
diff --git a/src/shared/qrceditor/qrceditor.cpp b/src/shared/qrceditor/qrceditor.cpp
index 8ac36dc299..82751b8158 100644
--- a/src/shared/qrceditor/qrceditor.cpp
+++ b/src/shared/qrceditor/qrceditor.cpp
@@ -417,6 +417,7 @@ void QrcEditor::onAddFiles()
: m_treeview->model()->parent(current).row();
int const cursorFileArrayIndex = currentIsPrefixNode ? 0 : current.row();
QStringList fileNames = m_treeview->fileNamesToAdd();
+ fileNames = m_treeview->existingFilesSubtracted(prefixArrayIndex, fileNames);
resolveLocationIssues(fileNames);
if (fileNames.isEmpty())
return;
diff --git a/src/shared/qrceditor/resourcefile.cpp b/src/shared/qrceditor/resourcefile.cpp
index 9b2466c8b9..9699632b46 100644
--- a/src/shared/qrceditor/resourcefile.cpp
+++ b/src/shared/qrceditor/resourcefile.cpp
@@ -793,36 +793,45 @@ QModelIndex ResourceModel::addFiles(const QModelIndex &model_idx, const QStringL
return index(lastFileArrayIndex, 0, prefixModelIndex);
}
+QStringList ResourceModel::existingFilesSubtracted(int prefixIndex, const QStringList &fileNames) const
+{
+ const QModelIndex prefixModelIdx = index(prefixIndex, 0, QModelIndex());
+ QStringList uniqueList;
+
+ if (prefixModelIdx.isValid()) {
+ foreach (const QString &file, fileNames) {
+ if (!m_resource_file.contains(prefixIndex, file) && !uniqueList.contains(file))
+ uniqueList.append(file);
+ }
+ }
+ return uniqueList;
+}
+
void ResourceModel::addFiles(int prefixIndex, const QStringList &fileNames, int cursorFile,
int &firstFile, int &lastFile)
{
Q_UNUSED(cursorFile)
const QModelIndex prefix_model_idx = index(prefixIndex, 0, QModelIndex());
- const QStringList &file_list = fileNames;
firstFile = -1;
lastFile = -1;
if (!prefix_model_idx.isValid()) {
return;
}
- const int prefix_idx = prefixIndex;
- QStringList unique_list;
- foreach (const QString &file, file_list) {
- if (!m_resource_file.contains(prefix_idx, file) && !unique_list.contains(file))
- unique_list.append(file);
- }
+ QStringList unique_list = existingFilesSubtracted(prefixIndex, fileNames);
if (unique_list.isEmpty()) {
return;
}
- const int cnt = m_resource_file.fileCount(prefix_idx);
+
+ const int cnt = m_resource_file.fileCount(prefixIndex);
beginInsertRows(prefix_model_idx, cnt, cnt + unique_list.count() - 1); // ### FIXME
foreach (const QString &file, unique_list)
- m_resource_file.addFile(prefix_idx, file);
+ m_resource_file.addFile(prefixIndex, file);
- const QFileInfo fi(file_list.last());
+ const QFileInfo fi(unique_list.last());
m_lastResourceDir = fi.absolutePath();
endInsertRows();
diff --git a/src/shared/qrceditor/resourcefile_p.h b/src/shared/qrceditor/resourcefile_p.h
index 4ae2076309..ebcde729d8 100644
--- a/src/shared/qrceditor/resourcefile_p.h
+++ b/src/shared/qrceditor/resourcefile_p.h
@@ -216,6 +216,7 @@ public:
virtual QModelIndex addNewPrefix();
virtual QModelIndex addFiles(const QModelIndex &idx, const QStringList &file_list);
+ QStringList existingFilesSubtracted(int prefixIndex, const QStringList &fileNames) const;
void addFiles(int prefixIndex, const QStringList &fileNames, int cursorFile, int &firstFile, int &lastFile);
void insertPrefix(int prefixIndex, const QString &prefix, const QString &lang);
void insertFile(int prefixIndex, int fileIndex, const QString &fileName, const QString &alias);
diff --git a/src/shared/qrceditor/resourceview.cpp b/src/shared/qrceditor/resourceview.cpp
index 07fd1f36b3..4437a7fad5 100644
--- a/src/shared/qrceditor/resourceview.cpp
+++ b/src/shared/qrceditor/resourceview.cpp
@@ -305,6 +305,11 @@ EntryBackup * ResourceView::removeEntry(const QModelIndex &index)
return m_qrcModel->removeEntry(index);
}
+QStringList ResourceView::existingFilesSubtracted(int prefixIndex, const QStringList &fileNames) const
+{
+ return m_qrcModel->existingFilesSubtracted(prefixIndex, fileNames);
+}
+
void ResourceView::addFiles(int prefixIndex, const QStringList &fileNames, int cursorFile,
int &firstFile, int &lastFile)
{
diff --git a/src/shared/qrceditor/resourceview.h b/src/shared/qrceditor/resourceview.h
index a00afd95a4..5b8a458fa9 100644
--- a/src/shared/qrceditor/resourceview.h
+++ b/src/shared/qrceditor/resourceview.h
@@ -117,6 +117,7 @@ public:
void findSamePlacePostDeletionModelIndex(int &row, QModelIndex &parent) const;
EntryBackup *removeEntry(const QModelIndex &index);
+ QStringList existingFilesSubtracted(int prefixIndex, const QStringList &fileNames) const;
void addFiles(int prefixIndex, const QStringList &fileNames, int cursorFile,
int &firstFile, int &lastFile);
void removeFiles(int prefixIndex, int firstFileIndex, int lastFileIndex);