diff --git a/doc/images/creator_createanimation.png b/doc/images/creator_createanimation.png
deleted file mode 100644
index 05375fda47a..00000000000
Binary files a/doc/images/creator_createanimation.png and /dev/null differ
diff --git a/doc/images/creator_createcode.png b/doc/images/creator_createcode.png
deleted file mode 100644
index 835c273edf5..00000000000
Binary files a/doc/images/creator_createcode.png and /dev/null differ
diff --git a/doc/images/creator_createcomponents.png b/doc/images/creator_createcomponents.png
deleted file mode 100644
index 8223a286770..00000000000
Binary files a/doc/images/creator_createcomponents.png and /dev/null differ
diff --git a/doc/images/creator_createproject.png b/doc/images/creator_createproject.png
deleted file mode 100644
index edede18598a..00000000000
Binary files a/doc/images/creator_createproject.png and /dev/null differ
diff --git a/doc/images/creator_createscreen.png b/doc/images/creator_createscreen.png
deleted file mode 100644
index 537273d7691..00000000000
Binary files a/doc/images/creator_createscreen.png and /dev/null differ
diff --git a/doc/images/creator_createuserinter.png b/doc/images/creator_createuserinter.png
deleted file mode 100644
index e24d52987b8..00000000000
Binary files a/doc/images/creator_createuserinter.png and /dev/null differ
diff --git a/doc/src/howto/creator-help.qdoc b/doc/src/howto/creator-help.qdoc
index 3d7c8fd3874..cffc5cee508 100644
--- a/doc/src/howto/creator-help.qdoc
+++ b/doc/src/howto/creator-help.qdoc
@@ -60,11 +60,12 @@
\section1 Viewing Function Tooltips
To hide function tooltips by default, select \gui {Tools > Options >
- Text Editor > Show help tooltips > On Shift+Mouseover}. You can still view
- the tooltips by pressing and holding down the \key Shift key.
+ Text Editor > Show help tooltips using the mouse > On Shift+Mouseover}. You
+ can still view the tooltips by pressing and holding down the \key Shift
+ key.
To use a keyboard shortcut for viewing help tooltips, select
- \gui {Using keyboard shortcut (Alt)}.
+ \gui {Show help tooltips using keyboard shortcut (Alt)}.
\section1 Finding Information in Qt Documentation
diff --git a/doc/src/qtcreator.qdoc b/doc/src/qtcreator.qdoc
index 3b1bb028dab..86815fdf858 100644
--- a/doc/src/qtcreator.qdoc
+++ b/doc/src/qtcreator.qdoc
@@ -190,10 +190,7 @@
\li \l {Creating Buttons}
\li \l {Creating Scalable Buttons and Borders}
\li \l {Creating Screens}
- \li \l {Animating Screens}
- \li \l {Adding User Interaction Methods}
\li \l {Exporting Designs from Graphics Software}
- \li \l {Implementing Application Logic}
\li \l {Using QML Modules with Plugins}
\endlist
\li \l{Developing Widget Based Applications}
diff --git a/doc/src/qtquick/qtquick-app-development.qdoc b/doc/src/qtquick/qtquick-app-development.qdoc
index 61caacd9a81..a9a152e8ce1 100644
--- a/doc/src/qtquick/qtquick-app-development.qdoc
+++ b/doc/src/qtquick/qtquick-app-development.qdoc
@@ -31,67 +31,40 @@
\title Developing Qt Quick Applications
- You can either create Qt Quick projects from scratch or import existing
- projects to \QC.
-
- You can use the code editor (\l{Working in Edit Mode}{Edit mode}) or the
- visual editor (\l{Using Qt Quick Designer}{Design mode}) to develop Qt Quick
- applications.
-
- Typically, application development proceeds as follows:
-
- \table
- \row
- \li \inlineimage creator_createproject.png
- \li \inlineimage creator_createcomponents.png
- \li \inlineimage creator_createscreen.png
- \row
- \li \l {Creating Qt Quick Projects}{Create or import projects.}
- \li \l {Creating Components}{Create components.}
- \li \l {Creating Screens}{Create screens.}
- \row
- \li \inlineimage creator_createanimation.png
- \li \inlineimage creator_createuserinter.png
- \li \inlineimage creator_createcode.png
- \row
- \li \l {Animating Screens}{Add animation to screens.}
- \li \l {Adding User Interaction Methods}
- {Add user interaction methods.}
- \li \l {Implementing Application Logic}
- {Implement the application logic.}
- \endtable
-
- \section1 Related Topics
-
\list
+
+ \li \l {Creating Qt Quick Projects}
+
+ You can either create Qt Quick projects from scratch or import
+ existing projects to \QC.
\li \l {Using Qt Quick Designer}
- \li \l {Creating Buttons}
- \li \l {Creating Scalable Buttons and Borders}
+
+ You can use the code editor (Edit mode) or the visual editor (Design
+ mode) to develop Qt Quick applications.
+
+ \li \l {Creating Components}
+
+ You can use predefined QML types to create components or use a set
+ of Qt Quick Controls for creating classic desktop-style user
+ interfaces using Qt Quick 2.1 (available since Qt 5.1).
+ \li \l {Creating Screens}
+
+ You can use predefined QML types, Qt Quick Controls, and your own
+ components to create screens. You can use states and transitions to
+ navigate between screens.
\li \l {Exporting Designs from Graphics Software}
+
+ You can export designs from graphics software, such as Adobe
+ Photoshop and GIMP, to QML files. You can then edit QML files in
+ \QC.
\li \l {Using QML Modules with Plugins}
+ QML modules may use plugins to expose components defined in C++ to
+ QML applications. \QC cannot load the plugins to determine the
+ details of the contained components, and therefore, the modules must
+ provide extra type information for code completion and the semantic
+ checks to work correctly.
+
\endlist
*/
-
-
-/*!
-
- \contentspage index.html
- \previouspage quick-export-to-qml.html
- \page quick-application-logic.html
- \nextpage creator-qml-modules-with-plugins.html
-
- \title Implementing Application Logic
-
- A user interface is only a part of an application, and not really useful by itself.
- You can use Qt or JavaScript to implement the application logic. For more information on
- using JavaScript, see
- \l{http://qt-project.org/doc/qt-5.0/qtqml/qtqml-javascript-topic.html}
- {Integrating QML and JavaScript}.
-
- For an example of how to use JavaScript to develop a game, see the
- \l{http://qt-project.org/doc/qt-5.0/qtquick/qtquick2-qml-advtutorial.html}
- {QML Advanced Tutorial}.
-
- */
diff --git a/doc/src/qtquick/qtquick-exporting-qml.qdoc b/doc/src/qtquick/qtquick-exporting-qml.qdoc
index 010b91ef52f..9244df48d2d 100644
--- a/doc/src/qtquick/qtquick-exporting-qml.qdoc
+++ b/doc/src/qtquick/qtquick-exporting-qml.qdoc
@@ -25,9 +25,9 @@
/*!
\contentspage index.html
- \previouspage quick-user-interaction.html
+ \previouspage quick-screens.html
\page quick-export-to-qml.html
- \nextpage quick-application-logic.html
+ \nextpage creator-qml-modules-with-plugins.html
\title Exporting Designs from Graphics Software
diff --git a/doc/src/qtquick/qtquick-modules-with-plugins.qdoc b/doc/src/qtquick/qtquick-modules-with-plugins.qdoc
index e28920cd6ea..7536b1cba2a 100644
--- a/doc/src/qtquick/qtquick-modules-with-plugins.qdoc
+++ b/doc/src/qtquick/qtquick-modules-with-plugins.qdoc
@@ -24,7 +24,7 @@
/*!
\contentspage index.html
- \previouspage quick-application-logic.html
+ \previouspage quick-export-to-qml.html
\page creator-qml-modules-with-plugins.html
\nextpage creator-using-qt-designer.html
diff --git a/doc/src/qtquick/qtquick-screens.qdoc b/doc/src/qtquick/qtquick-screens.qdoc
index e9b62f89d5f..86904ceaa78 100644
--- a/doc/src/qtquick/qtquick-screens.qdoc
+++ b/doc/src/qtquick/qtquick-screens.qdoc
@@ -27,7 +27,7 @@
\contentspage index.html
\previouspage quick-scalable-image.html
\page quick-screens.html
- \nextpage quick-animations.html
+ \nextpage quick-export-to-qml.html
\title Creating Screens
@@ -183,17 +183,7 @@
\endlist
-*/
-
-
-/*!
-
- \contentspage index.html
- \previouspage quick-screens.html
- \page quick-animations.html
- \nextpage quick-user-interaction.html
-
- \title Animating Screens
+ \section1 Animating Screens
To make movement between states smooth, you can specify transitions. You can
use different types of animated transitions. For example, you can animate
@@ -210,17 +200,7 @@
see \l{http://qt-project.org/doc/qt-5.0/qtquick/qml-qtquick2-transition.html}
{Transition}.
-*/
-
-
-/*!
-
- \contentspage index.html
- \previouspage quick-animations.html
- \page quick-user-interaction.html
- \nextpage quick-export-to-qml.html
-
- \title Adding User Interaction Methods
+ \section1 Adding User Interaction Methods
You can add the following basic interaction methods to scenes:
@@ -242,4 +222,16 @@
\endlist
+ \section1 Implementing Application Logic
+
+ A user interface is only a part of an application, and not really useful by itself.
+ You can use Qt or JavaScript to implement the application logic. For more information on
+ using JavaScript, see
+ \l{http://qt-project.org/doc/qt-5.0/qtqml/qtqml-javascript-topic.html}
+ {Integrating QML and JavaScript}.
+
+ For an example of how to use JavaScript to develop a game, see the
+ \l{http://qt-project.org/doc/qt-5.0/qtquick/qtquick2-qml-advtutorial.html}
+ {QML Advanced Tutorial}.
+
*/
diff --git a/qbs/functions.js b/qbs/imports/QtcFunctions/functions.js
similarity index 100%
rename from qbs/functions.js
rename to qbs/imports/QtcFunctions/functions.js
diff --git a/src/libs/QtcLibrary.qbs b/qbs/imports/QtcLibrary.qbs
similarity index 85%
rename from src/libs/QtcLibrary.qbs
rename to qbs/imports/QtcLibrary.qbs
index 03ab3374d3a..f7272066fbf 100644
--- a/src/libs/QtcLibrary.qbs
+++ b/qbs/imports/QtcLibrary.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../qbs/functions.js" as QtcFunctions
+import QtcFunctions
DynamicLibrary {
Depends { name: "cpp" }
@@ -22,11 +22,12 @@ DynamicLibrary {
cpp.rpaths: qbs.targetOS.contains("osx")
? ["@loader_path/..", "@executable_path/.."]
: ["$ORIGIN", "$ORIGIN/.."]
- cpp.includePaths: [path]
+ property string libIncludeBase: ".." // #include
+ cpp.includePaths: [libIncludeBase]
Export {
Depends { name: "cpp" }
- cpp.includePaths: [path]
+ cpp.includePaths: [libIncludeBase]
}
Group {
diff --git a/src/plugins/QtcPlugin.qbs b/qbs/imports/QtcPlugin.qbs
similarity index 90%
rename from src/plugins/QtcPlugin.qbs
rename to qbs/imports/QtcPlugin.qbs
index fd78073cde4..624d8bab7ee 100644
--- a/src/plugins/QtcPlugin.qbs
+++ b/qbs/imports/QtcPlugin.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../../qbs/functions.js" as QtcFunctions
+import QtcFunctions
Product {
type: ["dynamiclibrary", "pluginSpec"]
@@ -33,7 +33,9 @@ Product {
else if (qbs.buildVariant == "debug" && qbs.toolchain.contains("msvc"))
return ["/INCREMENTAL:NO"] // Speed up startup time when debugging with cdb
}
- cpp.includePaths: [path]
+
+ property string pluginIncludeBase: ".." // #include
+ cpp.includePaths: [pluginIncludeBase]
Group {
name: "PluginSpec"
@@ -55,6 +57,6 @@ Product {
Export {
Depends { name: "ExtensionSystem" }
Depends { name: "cpp" }
- cpp.includePaths: [path]
+ cpp.includePaths: [pluginIncludeBase]
}
}
diff --git a/src/tools/QtcTool.qbs b/qbs/imports/QtcTool.qbs
similarity index 100%
rename from src/tools/QtcTool.qbs
rename to qbs/imports/QtcTool.qbs
diff --git a/qbs/pluginspec/pluginspec.qbs b/qbs/modules/pluginspec/pluginspec.qbs
similarity index 100%
rename from qbs/pluginspec/pluginspec.qbs
rename to qbs/modules/pluginspec/pluginspec.qbs
diff --git a/qtcreator.pro b/qtcreator.pro
index f663e494b06..f2b368b8ce6 100644
--- a/qtcreator.pro
+++ b/qtcreator.pro
@@ -104,7 +104,7 @@ macx {
copy_menu_nib_installer.commands = cp -R \"$$MENU_NIB\" \"$${INSTALLER_NAME}.app/Contents/Resources\"
codesign_installer.commands = codesign -s \"$(SIGNING_IDENTITY)\" $(SIGNING_FLAGS) \"$${INSTALLER_NAME}.app\"
- dmg_installer.commands = hdiutil create -srcfolder "$${INSTALLER_NAME}.app" -volname \"Qt Creator\" -format UDBZ "$${BASENAME}-installer.dmg" -ov -scrub -stretch 2g
+ dmg_installer.commands = hdiutil create -srcfolder "$${INSTALLER_NAME}.app" -volname \"Qt Creator\" -format UDBZ "$${BASENAME}-installer.dmg" -ov -scrub -size 1g -verbose
QMAKE_EXTRA_TARGETS += codesign_installer dmg_installer copy_menu_nib_installer
}
diff --git a/qtcreator.qbs b/qtcreator.qbs
index d5b2e4bef92..6228a1b53d6 100644
--- a/qtcreator.qbs
+++ b/qtcreator.qbs
@@ -52,7 +52,7 @@ Project {
"QT_NO_CAST_TO_ASCII",
"QT_NO_CAST_FROM_ASCII"
].concat(testsEnabled ? ["WITH_TESTS"] : [])
- moduleSearchPaths: "qbs"
+ qbsSearchPaths: "qbs"
references: [
"src/src.qbs",
diff --git a/scripts/makedmg.sh b/scripts/makedmg.sh
index 5c4f69f3a6f..15c6492f47a 100755
--- a/scripts/makedmg.sh
+++ b/scripts/makedmg.sh
@@ -12,7 +12,9 @@ cp -a "${sourceFolder}/" "${intermediateFolder}"
ln -s /Applications "${intermediateFolder}"
cp "$(dirname "${BASH_SOURCE[0]}")/../LICENSE.LGPL" "${intermediateFolder}/LICENSE_LGPL.txt"
echo Creating image...
-hdiutil create -srcfolder "${intermediateFolder}" -volname "${title}" -format UDBZ "${finalDMGName}" -ov -scrub -stretch 2g
+hdiutil create -srcfolder "${intermediateFolder}" -volname "${title}" -format UDBZ "${finalDMGName}" -ov -scrub -size 1g -verbose
+# make sure that the image is umounted etc
+sleep 4
# clean up
rm -rf "${intermediateFolder}"
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentHorizontalButtons.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentHorizontalButtons.qml
index db214fd5c1a..c25f41639f8 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentHorizontalButtons.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentHorizontalButtons.qml
@@ -44,10 +44,10 @@ import HelperWidgets 2.0
Row {
id: alignmentHorizontalButtons
- Rectangle {
+ RoundedPanel {
width: 14
height: parent.height
- color: "gray"
+ roundLeft: true
ExtendedFunctionButton {
anchors.verticalCenter: parent.verticalCenter
backendValue: alignmentHorizontalButtons.backendValue
@@ -106,6 +106,7 @@ Row {
exclusive: true
ButtonRowButton {
+ roundLeftButton: false
iconSource: blueHighlight ? "images/alignmentleft-h-icon.png" : "images/alignmentleft-icon.png"
onClicked: {
if (checked)
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentVerticalButtons.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentVerticalButtons.qml
index 94d62580db5..25a398bda96 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentVerticalButtons.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/AligmentVerticalButtons.qml
@@ -44,10 +44,11 @@ import HelperWidgets 2.0
Row {
id: alignmentVerticalButtons
- Rectangle {
+ RoundedPanel {
width: 14
height: parent.height
- color: "gray"
+ roundLeft: true
+
ExtendedFunctionButton {
anchors.verticalCenter: parent.verticalCenter
backendValue: alignmentVerticalButtons.backendValue
@@ -106,6 +107,7 @@ Row {
exclusive: true
ButtonRowButton {
+ roundLeftButton: false
iconSource: blueHighlight ? "images/alignmenttop-h-icon.png" : "images/alignmenttop-icon.png"
onClicked: {
if (checked)
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/BoolButtonRowButton.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/BoolButtonRowButton.qml
index 8a378a91eb1..7128cdbe905 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/BoolButtonRowButton.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/BoolButtonRowButton.qml
@@ -99,6 +99,6 @@ ButtonRowButton {
ExtendedFunctionButton {
backendValue: boolButtonRowButton.backendValue
x: 0
- y: 2
+ y: 4
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ButtonRowButton.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ButtonRowButton.qml
index c74a195498f..5bf7df9b041 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ButtonRowButton.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ButtonRowButton.qml
@@ -35,12 +35,14 @@ Item {
id: buttonRowButton
property bool checked: false
+ property bool roundLeftButton: true
+
property alias iconSource: image.source
signal clicked()
- width: 20 + leftPadding
- height: 20
+ width: 24 + leftPadding
+ height: 24
property int leftPadding: 0
@@ -52,9 +54,33 @@ Item {
return -1;
}
- Rectangle {
- color: checked ? "black" : "gray"
+ function isFirst() {
+ return index() === 0;
+ }
+
+ function isLast() {
+ return index() === (parent.children.length - 1);
+ }
+
+ RoundedPanel {
+ roundLeft: isFirst() && roundLeftButton
+ roundRight: isLast()
+
anchors.fill: parent
+ visible: checked
+
+ gradient: Gradient {
+ GradientStop {color: '#444' ; position: 0}
+ GradientStop {color: '#333' ; position: 1}
+ }
+ }
+
+ RoundedPanel {
+ roundLeft: isFirst()
+ roundRight: isLast()
+
+ anchors.fill: parent
+ visible: !checked
}
Image {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ColorButton.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ColorButton.qml
index c8db251dd59..6c81e0ac43f 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ColorButton.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ColorButton.qml
@@ -28,7 +28,7 @@
****************************************************************************/
import QtQuick 2.1
-import QtQuick.Controls 1.0
+import QtQuick.Controls 1.0 as Controls
Item {
id: colorButton
@@ -271,6 +271,9 @@ Item {
Label {
text: "H:"
width: 16
+ color: "#eee"
+ elide: Text.ElideRight
+ anchors.verticalCenter: parent.verticalCenter
}
SliderSpinBox {
id: hueSlider2
@@ -289,9 +292,12 @@ Item {
Row {
z: 2
spacing: 4
- Label {
+ Controls.Label {
text: "S:"
width: 16
+ color: "#eee"
+ elide: Text.ElideRight
+ anchors.verticalCenter: parent.verticalCenter
}
SliderSpinBox {
@@ -311,9 +317,12 @@ Item {
Row {
z: 1
spacing: 4
- Label {
+ Controls.Label {
text: "L:"
width: 16
+ color: "#eee"
+ elide: Text.ElideRight
+ anchors.verticalCenter: parent.verticalCenter
}
SliderSpinBox {
id: lightnessSlider
@@ -332,9 +341,12 @@ Item {
Row {
z: 0
spacing: 4
- Label {
+ Controls.Label {
text: "A:"
width: 16
+ color: "#eee"
+ elide: Text.ElideRight
+ anchors.verticalCenter: parent.verticalCenter
}
SliderSpinBox {
@@ -348,7 +360,6 @@ Item {
if (colorButton.alpha !== value)
colorButton.alpha = value
}
-
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ComboBox.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ComboBox.qml
index 390bb699a2a..1534cbdfd3e 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ComboBox.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/ComboBox.qml
@@ -29,9 +29,11 @@
import QtQuick 2.1
import QtQuick.Controls 1.1 as Controls
+import QtQuick.Controls.Styles 1.1
Controls.ComboBox {
id: comboBox
+
property variant backendValue
QtObject {
@@ -46,7 +48,6 @@ Controls.ComboBox {
backendValue.value = currentText;
}
-
onFocusChanged: {
if (focus) {
transaction.start();
@@ -55,5 +56,6 @@ Controls.ComboBox {
}
}
-
+ style: CustomComboBoxStyle {
+ }
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomComboBoxStyle.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomComboBoxStyle.qml
new file mode 100644
index 00000000000..d522f8bfed0
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomComboBoxStyle.qml
@@ -0,0 +1,92 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import QtQuick.Controls 1.1 as Controls
+import QtQuick.Controls.Styles 1.1
+
+ComboBoxStyle {
+ property color borderColor: "#222"
+ property color highlightColor: "orange"
+ property color textColor: "#eee"
+
+ background: Item {
+ implicitWidth: 100
+ implicitHeight: 25
+
+ RoundedPanel {
+ anchors.fill: parent
+ roundLeft: true
+ roundRight: true
+ visible: !control.pressed
+ }
+
+ RoundedPanel {
+ gradient: Gradient {
+ GradientStop {color: '#444' ; position: 0}
+ GradientStop {color: '#333' ; position: 1}
+ }
+ anchors.fill: parent
+ roundLeft: true
+ roundRight: true
+ visible: control.pressed
+ }
+
+ Rectangle {
+ border.color: highlightColor
+ anchors.fill: parent
+ anchors.margins: -1
+ color: "transparent"
+ radius: 4
+ opacity: 0.3
+ visible: control.activeFocus
+ }
+ Image {
+ id: imageItem
+ source: "images/down-arrow.png"
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.right: parent.right
+ anchors.rightMargin: 8
+ opacity: control.enabled ? 0.7 : 0.5
+ }
+ }
+
+ label: Item {
+ implicitWidth: textitem.implicitWidth + 20
+ Text {
+ id: textitem
+ anchors.left: parent.left
+ anchors.leftMargin: 4
+ anchors.verticalCenter: parent.verticalCenter
+ text: control.currentText
+ renderType: Text.NativeRendering
+ color: textColor
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomSpinBoxStyle.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomSpinBoxStyle.qml
new file mode 100644
index 00000000000..1e11856a227
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/CustomSpinBoxStyle.qml
@@ -0,0 +1,86 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import QtQuick.Controls 1.1 as Controls
+import QtQuick.Controls.Styles 1.1
+
+SpinBoxStyle {
+
+ selectionColor: spinBox.textColor
+ selectedTextColor: "black"
+ textColor: spinBox.textColor
+ padding.top: 3
+ padding.bottom: 1
+
+ incrementControl: Item {
+ implicitWidth: 14
+ implicitHeight: parent.height/2
+ opacity: styleData.upEnabled ? styleData.upPressed ? 0.5 : 1 : 0.5
+ Image {
+ source: "images/up-arrow.png"
+ anchors.centerIn: parent
+ anchors.verticalCenterOffset: 2
+ anchors.horizontalCenterOffset: -4
+ }
+ }
+
+ decrementControl: Item {
+ implicitWidth: 14
+ implicitHeight: parent.height/2
+ opacity: styleData.downEnabled ? styleData.downPressed ? 0.5 : 1 : 0.5
+ Image {
+ source: "images/down-arrow.png"
+ anchors.centerIn: parent
+ anchors.verticalCenterOffset: -1
+ anchors.horizontalCenterOffset: -4
+ }
+ }
+
+ background: Rectangle {
+ implicitWidth: Math.max(60, styleData.contentWidth)
+ implicitHeight: 23
+ border.color: borderColor
+ radius: 3
+ gradient: Gradient {
+ GradientStop {color: "#2c2c2c" ; position: 0}
+ GradientStop {color: "#343434" ; position: 0.15}
+ GradientStop {color: "#373737" ; position: 1}
+ }
+ Rectangle {
+ border.color: highlightColor
+ anchors.fill: parent
+ anchors.margins: -1
+ color: "transparent"
+ radius: 4
+ opacity: 0.3
+ visible: control.activeFocus
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FlickableSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FlickableSection.qml
new file mode 100644
index 00000000000..90aa27dff56
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FlickableSection.qml
@@ -0,0 +1,177 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Flickable")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Content size")
+ }
+
+ SecondColumnLayout {
+
+ Label {
+ text: "W"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.contentWidth
+ minimumValue: 0
+ maximumValue: 8000
+ }
+
+ Label {
+ text: "W"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.contentHeight
+ minimumValue: 0
+ maximumValue: 8000
+
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Flick direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ backendValue: backendValues.flickableDirection
+ model: ["AutoFlickDirection", "HorizontalFlick", "VerticalFlick", "HorizontalAndVerticalFlick"]
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Behavior")
+ toolTip: qsTr("Bounds behavior")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ backendValue: backendValues.boundsBehavior
+ model: ["StopAtBounds", "DragOverBounds", "DragAndOvershootBounds"]
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Behavior")
+ toolTip: qsTr("Bounds behavior")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ backendValue: backendValues.boundsBehavior
+ model: ["StopAtBounds", "DragOverBounds", "DragAndOvershootBounds"]
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text:qsTr("Interactive")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.interactive
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Max. velocity")
+ toolTip: qsTr("Maximum flick velocity")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.maximumFlickVelocity
+ minimumValue: 0
+ maximumValue: 8000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Deceleration")
+ toolTip: qsTr("Flick deceleration")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.flickDeceleration
+ minimumValue: 0
+ maximumValue: 8000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FontSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FontSection.qml
index 4d5c2f791af..96a8b64f58b 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FontSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/FontSection.qml
@@ -119,6 +119,10 @@ Section {
}
}
+
+ style: CustomComboBoxStyle {
+ }
+
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/Label.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/Label.qml
index 1a80cbd38ba..7da1bac7ef2 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/Label.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/Label.qml
@@ -34,6 +34,8 @@ import QtQuick.Layouts 1.0
Controls.Label {
id: label
+ property string toolTip: ""
+
width: parent.width < 300 ? 80 : Math.min(140, parent.width - 220)
color: "#eee"
elide: Text.ElideRight
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/RoundedPanel.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/RoundedPanel.qml
new file mode 100644
index 00000000000..992ff27bf20
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/RoundedPanel.qml
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt Quick Controls module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names
+** of its contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import QtQuick.Controls 1.0 as Controls
+import QtQuick.Layouts 1.0
+
+Rectangle {
+
+ property bool roundLeft: false
+ property bool roundRight: false
+
+
+ radius: roundLeft || roundRight ? 4 : 0
+ gradient: Gradient {
+ GradientStop {color: '#555' ; position: 0}
+ GradientStop {color: '#444' ; position: 1}
+ }
+
+ border.width: roundLeft || roundRight ? 1 : 0
+ border.color: roundLeft ? "#7f7f7f" : "#2e2e2e"
+
+ Rectangle {
+ gradient: parent.gradient
+ anchors.fill: parent
+ visible: roundLeft
+ anchors.leftMargin: 10
+ anchors.topMargin: 1
+ anchors.bottomMargin: 1
+ }
+
+ Rectangle {
+ gradient: parent.gradient
+ anchors.fill: parent
+ visible: roundRight
+ anchors.rightMargin: 10
+ anchors.topMargin: 1
+ anchors.bottomMargin: 1
+ }
+
+ Rectangle {
+ color: "#7f7f7f"
+ anchors.top: parent.top
+ anchors.left: parent.left
+ anchors.right: parent.right
+ height: 1
+ anchors.leftMargin: roundLeft ? 3 : 0
+ anchors.rightMargin: roundRight ? 3 : 0
+ }
+
+ Rectangle {
+ color: "#2e2e2e"
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+ anchors.right: parent.right
+ height: 1
+ anchors.leftMargin: roundLeft ? 2 : 0
+ anchors.rightMargin: roundRight ? 2 : 0
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SliderSpinBox.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SliderSpinBox.qml
index 7b3c20a395b..a36f9acf9a3 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SliderSpinBox.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SliderSpinBox.qml
@@ -34,6 +34,10 @@ SpinBox {
id: spinBox
width: 76
+ property color borderColor: "#222"
+ property color highlightColor: "orange"
+ property color textColor: "#eee"
+
function showSlider() {
timer.stop()
timer2.start()
@@ -106,4 +110,8 @@ SpinBox {
slider.opacity = 0;
}
}
+
+ style: CustomSpinBoxStyle {
+
+ }
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SpinBox.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SpinBox.qml
index a093a6603ed..6e5f6c06db5 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SpinBox.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/SpinBox.qml
@@ -90,57 +90,6 @@ Controls.SpinBox {
}
}
- style: SpinBoxStyle {
-
- selectionColor: spinBox.textColor
- selectedTextColor: "black"
- textColor: spinBox.textColor
- padding.top: 3
- padding.bottom: 1
-
- incrementControl: Item {
- implicitWidth: 14
- implicitHeight: parent.height/2
- opacity: styleData.upEnabled ? styleData.upPressed ? 0.5 : 1 : 0.5
- Image {
- source: "images/up-arrow.png"
- anchors.centerIn: parent
- anchors.verticalCenterOffset: 2
- anchors.horizontalCenterOffset: -4
- }
- }
-
- decrementControl: Item {
- implicitWidth: 14
- implicitHeight: parent.height/2
- opacity: styleData.downEnabled ? styleData.downPressed ? 0.5 : 1 : 0.5
- Image {
- source: "images/down-arrow.png"
- anchors.centerIn: parent
- anchors.verticalCenterOffset: -1
- anchors.horizontalCenterOffset: -4
- }
- }
-
- background: Rectangle {
- implicitWidth: Math.max(60, styleData.contentWidth)
- implicitHeight: 23
- border.color: borderColor
- radius: 3
- gradient: Gradient {
- GradientStop {color: "#2c2c2c" ; position: 0}
- GradientStop {color: "#343434" ; position: 0.15}
- GradientStop {color: "#373737" ; position: 1}
- }
- Rectangle {
- border.color: highlightColor
- anchors.fill: parent
- anchors.margins: -1
- color: "transparent"
- radius: 4
- opacity: 0.3
- visible: control.activeFocus
- }
- }
+ style: CustomSpinBoxStyle {
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/qmldir b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/qmldir
index c58945acbb6..ec6e3d0a8fa 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/qmldir
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/HelperWidgets/qmldir
@@ -29,3 +29,4 @@ AligmentHorizontalButtons 2.0 AligmentHorizontalButtons.qml
AligmentVerticalButtons 2.0 AligmentVerticalButtons.qml
StandardTextSection 2.0 StandardTextSection.qml
FontSection 2.0 FontSection.qml
+FlickableSection 2.0 FlickableSection.qml
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/AdvancedSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/AdvancedSection.qml
index d90957ecef8..2784bb7fa00 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/AdvancedSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/AdvancedSection.qml
@@ -34,13 +34,13 @@ import QtQuick.Layouts 1.0
Section {
anchors.left: parent.left
anchors.right: parent.right
- caption: "Advanced"
+ caption: qsTr("Advanced")
SectionLayout {
rows: 3
Label {
- text: "Scale"
+ text: qsTr("Scale")
}
SecondColumnLayout {
@@ -57,7 +57,7 @@ Section {
}
}
Label {
- text: "Rotation"
+ text: qsTr("Rotation")
}
SecondColumnLayout {
SpinBox {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/BorderImageSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/BorderImageSpecifics.qml
new file mode 100644
index 00000000000..f87ec5d9ded
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/BorderImageSpecifics.qml
@@ -0,0 +1,198 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Border Image")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Source")
+ }
+
+ SecondColumnLayout {
+ LineEdit {
+ backendValue: backendValues.source
+ implicitWidth: 180
+ }
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Border Left")
+ }
+
+ SecondColumnLayout {
+
+ SpinBox {
+ backendValue: backendValues.border_left
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Border Right")
+ }
+
+ SecondColumnLayout {
+
+ SpinBox {
+ backendValue: backendValues.border_right
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Border Top")
+ }
+
+ SecondColumnLayout {
+
+ SpinBox {
+ backendValue: backendValues.border_top
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Border Bottom")
+ }
+
+ SecondColumnLayout {
+
+ SpinBox {
+ backendValue: backendValues.border_bottom
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Horizontal Fill mode")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["Stretch", "Repeat", "Round"]
+ backendValue: backendValues.horizontalTileMode
+ implicitWidth: 180
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Vertical Fill mode")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["Stretch", "Repeat", "Round"]
+ backendValue: backendValues.verticalTileMode
+ implicitWidth: 180
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+
+ Label {
+ text: qsTr("Source size")
+ }
+
+ SecondColumnLayout {
+ Label {
+ text: "W"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.sourceSize_width
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ Label {
+ text: "H"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.sourceSize_height
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ColumnSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ColumnSpecifics.qml
new file mode 100644
index 00000000000..c8ee80a4d46
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ColumnSpecifics.qml
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Column")
+
+ Label {
+ text: qsTr("Spacing")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.spacing
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+ }
+}
+
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlickableSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlickableSpecifics.qml
new file mode 100644
index 00000000000..020c8d39a4a
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlickableSpecifics.qml
@@ -0,0 +1,42 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ FlickableSection {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlipableSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlipableSpecifics.qml
new file mode 100644
index 00000000000..90f2c84fc4e
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlipableSpecifics.qml
@@ -0,0 +1,43 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Flipable")
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlowSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlowSpecifics.qml
new file mode 100644
index 00000000000..57f640cfc02
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/FlowSpecifics.qml
@@ -0,0 +1,91 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Flow")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Flow")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "TopToBottom"]
+ backendValue: backendValues.flow
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Layout Direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "RightToLeft"]
+ backendValue: backendValues.layoutDirection
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Spacing")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.spacing
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GeometrySection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GeometrySection.qml
index 15636eddfe8..d174be3bdc9 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GeometrySection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GeometrySection.qml
@@ -43,7 +43,7 @@ import HelperWidgets 2.0
import QtQuick.Layouts 1.0
Section {
- caption: "Geometry"
+ caption: qsTr("Geometry")
SectionLayout {
columnSpacing: 6
@@ -51,7 +51,7 @@ Section {
rows: 2
Label {
- text: "Position"
+ text: qsTr("Position")
}
SecondColumnLayout {
@@ -81,7 +81,7 @@ Section {
ExpandingSpacer{}
}
Label {
- text: "Size"
+ text: qsTr("Size")
}
SecondColumnLayout {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridSpecifics.qml
new file mode 100644
index 00000000000..c4a13f597f9
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridSpecifics.qml
@@ -0,0 +1,125 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Grid")
+
+
+ SectionLayout {
+
+ Label {
+ text: qsTr("Columns")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.columns
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Rows")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.rows
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+
+ Label {
+ text: qsTr("Flow")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "TopToBottom"]
+ backendValue: backendValues.flow
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Layout Direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "RightToLeft"]
+ backendValue: backendValues.layoutDirection
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Spacing")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.spacing
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridViewSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridViewSpecifics.qml
new file mode 100644
index 00000000000..cf13bf93bdd
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/GridViewSpecifics.qml
@@ -0,0 +1,281 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ FlickableSection {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ }
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Grid View")
+
+ SectionLayout {
+
+ Label {
+ text: qsTr("Cache")
+ toolTip: qsTr("Cache buffer")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.cacheBuffer
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Cell Size")
+ }
+
+ SecondColumnLayout {
+
+ Label {
+ text: "W"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.cellWidth
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ Label {
+ text: "H"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.cellHeight
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+
+ Label {
+ text: qsTr("Flow")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "TopToBottom"]
+ backendValue: backendValues.flow
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Navigation wraps")
+ toolTip: qsTr("Determines whether the grid wraps key navigation.")
+ }
+
+ SectionLayout {
+ CheckBox {
+ backendValue: backendValues.keyNavigationWraps
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Layout Direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "RightToLeft"]
+ backendValue: backendValues.layoutDirection
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Snap mode")
+ toolTip: qsTr("Determines how the view scrolling will settle following a drag or flick.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["NoSnap", "SnapToRow", "SnapOneRow"]
+ backendValue: backendValues.snapMode
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ }
+ }
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Grid View Highlight")
+
+ SectionLayout {
+
+ Label {
+ text: qsTr("Range")
+ toolTip: qsTr("Highlight range")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["NoHighlightRange", "ApplyRange", "StrictlyEnforceRange"]
+ backendValue: backendValues.highlightRangeMode
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+
+ Label {
+ text: qsTr("Move duration")
+ toolTip: qsTr("Move animation duration of the highlight delegate.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.highlightMoveDuration
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Move speed")
+ toolTip: qsTr("Move animation speed of the highlight delegate.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.highlightMoveSpeed
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Preferred begin")
+ toolTip: qsTr("Preferred highlight begin - must be smaller than Preferred end.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.preferredHighlightBegin
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Preferred end")
+ toolTip: qsTr("Preferred highlight end - must be larger than Preferred begin.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.preferredHighlightEnd
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Follows current")
+ toolTip: qsTr("Determines whether the highlight is managed by the view.")
+ }
+
+ SectionLayout {
+ CheckBox {
+ backendValue: backendValues.highlightFollowsCurrentItem
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ImageSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ImageSpecifics.qml
new file mode 100644
index 00000000000..3fba1ff36b6
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ImageSpecifics.qml
@@ -0,0 +1,109 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Image")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Source")
+ }
+
+ SecondColumnLayout {
+ LineEdit {
+ backendValue: backendValues.source
+ implicitWidth: 180
+ }
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Fill mode")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["Stretch", "PreserveAspectFit", "PreserveAspectCrop", "Tile", "TileVertically", "TileHorizontally"]
+ backendValue: backendValues.fillMode
+ implicitWidth: 180
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Source size")
+ }
+
+ SecondColumnLayout {
+ Label {
+ text: "W"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.sourceSize_width
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ Label {
+ text: "H"
+ width: 12
+ }
+
+ SpinBox {
+ backendValue: backendValues.sourceSize_height
+ minimumValue: -2000
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ItemPane.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ItemPane.qml
index c2a353dfce8..f201ebf8fb8 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ItemPane.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ItemPane.qml
@@ -43,14 +43,14 @@ Rectangle {
Column {
width: itemPane.width
Section {
- caption: "Type"
+ caption: qsTr("Type")
anchors.left: parent.left
anchors.right: parent.right
SectionLayout {
Label {
- text: "Type"
+ text: qsTr("Type")
}
@@ -60,7 +60,7 @@ Rectangle {
}
Label {
- text: "id"
+ text: qsTr("id")
}
@@ -69,7 +69,7 @@ Rectangle {
id: lineEdit
enabled: isBaseState
backendValue: backendValues.id
- placeholderText: "id"
+ placeholderText: qsTr("id")
text: backendValues.id.value
Layout.fillWidth: true
Layout.maximumWidth: 320
@@ -93,18 +93,18 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
- caption: "Visibilty"
+ caption: qsTr("Visibilty")
SectionLayout {
rows: 2
Label {
- text: "Visibilty"
+ text: qsTr("Visibilty")
}
SecondColumnLayout {
CheckBox {
- text: "Is Visible"
+ text: qsTr("Is Visible")
backendValue: backendValues.visible
}
@@ -115,7 +115,7 @@ Rectangle {
}
CheckBox {
- text: "Clip"
+ text: qsTr("Clip")
backendValue: backendValues.clip
}
Item {
@@ -124,7 +124,7 @@ Rectangle {
}
Label {
- text: "Opacity"
+ text: qsTr("Opacity")
}
SecondColumnLayout {
@@ -171,7 +171,7 @@ Rectangle {
}
Tab {
- title: "Layout"
+ title: qsTr("Layout")
component: Column {
anchors.left: parent.left
anchors.right: parent.right
@@ -183,7 +183,7 @@ Rectangle {
Tab {
anchors.fill: parent
- title: "Advanced"
+ title: qsTr("Advanced")
component: Column {
anchors.left: parent.left
anchors.right: parent.right
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/LayoutSection.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/LayoutSection.qml
index c18b721ea8b..b85d8b731fd 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/LayoutSection.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/LayoutSection.qml
@@ -45,12 +45,12 @@ import QtQuick.Layouts 1.0
Section {
anchors.left: parent.left
anchors.right: parent.right
- caption: "Layout"
+ caption: qsTr("Layout")
ColumnLayout {
width: parent.width
Label {
- text: "Anchors"
+ text: qsTr("Anchors")
}
AnchorButtons {
@@ -74,7 +74,9 @@ Section {
Text {
- text: "Target"
+ text: qsTr("Target")
+ color: "#eee"
+ elide: Text.ElideRight
}
ComboBox {
@@ -84,6 +86,8 @@ Section {
Text {
text: "Margin"
+ color: "#eee"
+ elide: Text.ElideRight
}
RowLayout {
@@ -128,7 +132,9 @@ Section {
Text {
- text: "Target"
+ text: qsTr("Target")
+ color: "#eee"
+ elide: Text.ElideRight
}
ComboBox {
@@ -137,7 +143,9 @@ Section {
Text {
- text: "Margin"
+ text: qsTr("Margin")
+ color: "#eee"
+ elide: Text.ElideRight
}
RowLayout {
@@ -182,7 +190,10 @@ Section {
Text {
- text: "Target"
+ text: qsTr("Target")
+ color: "#eee"
+ elide: Text.ElideRight
+
}
ComboBox {
@@ -191,7 +202,10 @@ Section {
Text {
- text: "Margin"
+ text: qsTr("Margin")
+ color: "#eee"
+ elide: Text.ElideRight
+
}
RowLayout {
@@ -236,7 +250,10 @@ Section {
Text {
- text: "Target"
+ text: qsTr("Target")
+ color: "#eee"
+ elide: Text.ElideRight
+
}
ComboBox {
@@ -245,7 +262,10 @@ Section {
Text {
- text: "Margin"
+ text: qsTr("Margin")
+ color: "#eee"
+ elide: Text.ElideRight
+
}
RowLayout {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ListViewSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ListViewSpecifics.qml
new file mode 100644
index 00000000000..c72364f0dfd
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ListViewSpecifics.qml
@@ -0,0 +1,282 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ FlickableSection {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ }
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("List View")
+
+ SectionLayout {
+
+ Label {
+ text: qsTr("Cache")
+ toolTip: qsTr("Cache buffer")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.cacheBuffer
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Navigation wraps")
+ toolTip: qsTr("Determines whether the grid wraps key navigation.")
+ }
+
+ SectionLayout {
+ CheckBox {
+ backendValue: backendValues.keyNavigationWraps
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Orientation")
+ toolTip: qsTr("Orientation of the list.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["Horizontal", "Vertical"]
+ backendValue: backendValues.orientation
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Layout Direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "RightToLeft"]
+ backendValue: backendValues.layoutDirection
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Snap mode")
+ toolTip: qsTr("Determines how the view scrolling will settle following a drag or flick.")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["NoSnap", "SnapToRow", "SnapOneRow"]
+ backendValue: backendValues.snapMode
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Spacing")
+ toolTip: qsTr("Spacing between items.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.spacing
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ }
+ }
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("List View Highlight")
+
+ SectionLayout {
+
+ Label {
+ text: qsTr("Range")
+ toolTip: qsTr("Highlight range")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["NoHighlightRange", "ApplyRange", "StrictlyEnforceRange"]
+ backendValue: backendValues.highlightRangeMode
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+
+ Label {
+ text: qsTr("Move duration")
+ toolTip: qsTr("Move animation duration of the highlight delegate.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.highlightMoveDuration
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Move speed")
+ toolTip: qsTr("Move animation speed of the highlight delegate.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.highlightMoveSpeed
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Resize duration")
+ toolTip: qsTr("Resize animation duration of the highlight delegate.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.highlightResizeDuration
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Preferred begin")
+ toolTip: qsTr("Preferred highlight begin - must be smaller than Preferred end.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.preferredHighlightBegin
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Preferred end")
+ toolTip: qsTr("Preferred highlight end - must be larger than Preferred begin.")
+ }
+
+ SectionLayout {
+ SpinBox {
+ backendValue: backendValues.preferredHighlightEnd
+ minimumValue: 0;
+ maximumValue: 1000;
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Follows current")
+ toolTip: qsTr("Determines whether the highlight is managed by the view.")
+ }
+
+ SectionLayout {
+ CheckBox {
+ backendValue: backendValues.highlightFollowsCurrentItem
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/MouseAreaSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/MouseAreaSpecifics.qml
new file mode 100644
index 00000000000..153c2cf49ed
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/MouseAreaSpecifics.qml
@@ -0,0 +1,74 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Mouse Area")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Enabled")
+ toolTip: qsTr("This property holds whether the item accepts mouse events.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.enabled
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Hover Enabled")
+ toolTip: qsTr("This property holds whether hover events are handled.")
+ }
+
+ SecondColumnLayout {
+ CheckBox {
+ backendValue: backendValues.hoverEnabled
+ }
+
+ ExpandingSpacer {
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RectangleSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RectangleSpecifics.qml
index 7ac6bdbbf9b..04e89619ec3 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RectangleSpecifics.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RectangleSpecifics.qml
@@ -71,7 +71,7 @@ Column {
SectionLayout {
rows: 2
Label {
- text: "Border"
+ text: qsTr("Border")
}
SecondColumnLayout {
SpinBox {
@@ -84,7 +84,7 @@ Column {
}
}
Label {
- text: "Radius"
+ text: qsTr("Radius")
}
SecondColumnLayout {
SpinBox {
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RowSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RowSpecifics.qml
new file mode 100644
index 00000000000..e26f165a43f
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RowSpecifics.qml
@@ -0,0 +1,76 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of Qt Creator.
+**
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+****************************************************************************/
+
+import QtQuick 2.1
+import HelperWidgets 2.0
+import QtQuick.Layouts 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ caption: qsTr("Row")
+
+ SectionLayout {
+ Label {
+ text: qsTr("Layout Direction")
+ }
+
+ SecondColumnLayout {
+ ComboBox {
+ model: ["LeftToRight", "RightToLeft"]
+ backendValue: backendValues.layoutDirection
+ }
+
+ ExpandingSpacer {
+
+ }
+ }
+
+ Label {
+ text: qsTr("Spacing")
+ }
+
+ SecondColumnLayout {
+ SpinBox {
+ backendValue: backendValues.spacing
+ minimumValue: 0
+ maximumValue: 2000
+ decimals: 0
+ }
+
+ ExpandingSpacer {
+ }
+ }
+ }
+ }
+}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextEditSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextEditSpecifics.qml
index 056c5f7d96a..bc471cc8ce0 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextEditSpecifics.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextEditSpecifics.qml
@@ -43,7 +43,7 @@ Column {
ColorEditor {
caption: qsTr(" Text Color")
backendendValue: backendValues.color
- supportGradient: true
+ supportGradient: false
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextInputSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextInputSpecifics.qml
index 84c6c134f02..e05a850c989 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextInputSpecifics.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextInputSpecifics.qml
@@ -43,7 +43,7 @@ Column {
ColorEditor {
caption: qsTr(" Text Color")
backendendValue: backendValues.color
- supportGradient: true
+ supportGradient: false
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextSpecifics.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextSpecifics.qml
index bb28928324f..d2d6688b982 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextSpecifics.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/TextSpecifics.qml
@@ -31,7 +31,6 @@ import QtQuick 2.1
import HelperWidgets 2.0
import QtQuick.Layouts 1.0
-
Column {
anchors.left: parent.left
anchors.right: parent.right
@@ -44,7 +43,7 @@ Column {
ColorEditor {
caption: qsTr(" Text Color")
backendendValue: backendValues.color
- supportGradient: true
+ supportGradient: false
}
}
diff --git a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/emptyPane.qml b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/emptyPane.qml
index a3423ae9268..15f6a80781e 100644
--- a/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/emptyPane.qml
+++ b/share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/emptyPane.qml
@@ -28,15 +28,25 @@
****************************************************************************/
import QtQuick 2.1
+import HelperWidgets 2.0
Rectangle {
- width: 100
- height: 200
- color: "#ff2323"
+ id: itemPane
+ width: 320
+ height: 400
+ color: "#404040"
- Text {
- id: test
- text: "empty"
- anchors.fill: parent
+ Section {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ SectionLayout {
+
+ Label {
+ id: test
+ text: qsTr("None or multiple items selected.");
+ anchors.fill: parent
+ }
+ }
}
}
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/bar-descriptor.xml b/share/qtcreator/templates/wizards/bb-guiapp/bar-descriptor.xml
deleted file mode 100644
index 8ad05ef4562..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/bar-descriptor.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
- com.example.%ProjectName%
- %ProjectName%
- 1.0.0
- DESCRIPTION
-
-
- none
- false
- true
- landscape
-
-
-
-
-
-
- run_native
- %ProjectName%
-
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/icon.png b/share/qtcreator/templates/wizards/bb-guiapp/icon.png
deleted file mode 100644
index 5260eb64d91..00000000000
Binary files a/share/qtcreator/templates/wizards/bb-guiapp/icon.png and /dev/null differ
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/main.cpp b/share/qtcreator/templates/wizards/bb-guiapp/main.cpp
deleted file mode 100644
index 524ad5b6338..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/main.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#include
-#include "mainwidget.h"
-
-int main(int argc, char *argv[])
-{
- QApplication a(argc, argv);
- // Set default BB10 style. You can also use bb10dark style
- a.setStyle(QLatin1String("bb10bright"));
-
- MainWidget w;
- w.showMaximized();
-
- return a.exec();
-}
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.cpp b/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.cpp
deleted file mode 100644
index 4c353088e41..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "mainwidget.h"
-#include "ui_mainwidget.h"
-
-MainWidget::MainWidget(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::MainWidget)
-{
- ui->setupUi(this);
-}
-
-MainWidget::~MainWidget()
-{
- delete ui;
-}
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.h b/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.h
deleted file mode 100644
index bc6b7faf775..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef MAINWIDGET_H
-#define MAINWIDGET_H
-
-#include
-
-namespace Ui {
-class MainWidget;
-}
-
-class MainWidget : public QWidget
-{
- Q_OBJECT
-
-public:
- explicit MainWidget(QWidget *parent = 0);
- ~MainWidget();
-
-private:
- Ui::MainWidget *ui;
-};
-
-#endif // MAINWIDGET_H
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.ui b/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.ui
deleted file mode 100644
index a3c38c7a8a4..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/mainwidget.ui
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
- MainWidget
-
-
-
- 0
- 0
- 400
- 300
-
-
-
- Form
-
-
- -
-
-
- Hello World
-
-
- Qt::AlignCenter
-
-
-
-
-
-
-
-
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/project.pro b/share/qtcreator/templates/wizards/bb-guiapp/project.pro
deleted file mode 100644
index d4b4aedb639..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/project.pro
+++ /dev/null
@@ -1,7 +0,0 @@
-TEMPLATE = app
-
-SOURCES += main.cpp mainwidget.cpp
-HEADERS += mainwidget.h
-FORMS += mainwidget.ui
-
-OTHER_FILES += bar-descriptor.xml
diff --git a/share/qtcreator/templates/wizards/bb-guiapp/wizard.xml b/share/qtcreator/templates/wizards/bb-guiapp/wizard.xml
deleted file mode 100644
index 08fd91ea22b..00000000000
--- a/share/qtcreator/templates/wizards/bb-guiapp/wizard.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
- icon.png
- BlackBerry Qt Gui Application;
- Creates a Qt Gui application for BlackBerry.
-
-
-
-
-
-
-
-
-
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/bar-descriptor.xml b/share/qtcreator/templates/wizards/bb-qt5-guiapp/bar-descriptor.xml
deleted file mode 100644
index b9825ddac99..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/bar-descriptor.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
- com.example.%ProjectName%
- %ProjectName%
- 1.0.0
- DESCRIPTION
- PUBLISHER
- COPYRIGHT
-
-
- none
- false
- true
- landscape
-
-
-
-
-
-
- -platform
- qnx
-
- run_native
-
- %ProjectName%
-
-
- lib
- plugins
- imports
-
-
-
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/icon.png b/share/qtcreator/templates/wizards/bb-qt5-guiapp/icon.png
deleted file mode 100644
index 5260eb64d91..00000000000
Binary files a/share/qtcreator/templates/wizards/bb-qt5-guiapp/icon.png and /dev/null differ
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/main.cpp b/share/qtcreator/templates/wizards/bb-qt5-guiapp/main.cpp
deleted file mode 100644
index 68ab283ccfd..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/main.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-#include
-#include "mainwidget.h"
-
-int main(int argc, char *argv[])
-{
- QApplication a(argc, argv);
- // Set default BB10 style. You can also use bb10dark style
- a.setStyle(QLatin1String("bb10bright"));
-
- MainWidget w;
- w.showFullScreen();
-
-
- return a.exec();
-}
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.cpp b/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.cpp
deleted file mode 100644
index 4c353088e41..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#include "mainwidget.h"
-#include "ui_mainwidget.h"
-
-MainWidget::MainWidget(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::MainWidget)
-{
- ui->setupUi(this);
-}
-
-MainWidget::~MainWidget()
-{
- delete ui;
-}
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.h b/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.h
deleted file mode 100644
index 9c17cff5fc6..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef MAINWIDGET_H
-#define MAINWIDGET_H
-
-#include
-
-namespace Ui {
-class MainWidget;
-}
-
-class MainWidget : public QWidget
-{
- Q_OBJECT
-
-public:
- explicit MainWidget(QWidget *parent = 0);
- ~MainWidget();
-
-private:
- Ui::MainWidget *ui;
-};
-
-#endif // MAINWIDGET_H
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.ui b/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.ui
deleted file mode 100644
index a3c38c7a8a4..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/mainwidget.ui
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
- MainWidget
-
-
-
- 0
- 0
- 400
- 300
-
-
-
- Form
-
-
- -
-
-
- Hello World
-
-
- Qt::AlignCenter
-
-
-
-
-
-
-
-
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/project.pro b/share/qtcreator/templates/wizards/bb-qt5-guiapp/project.pro
deleted file mode 100644
index 88835eca2cb..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/project.pro
+++ /dev/null
@@ -1,11 +0,0 @@
-TEMPLATE = app
-
-QT += widgets
-
-SOURCES += main.cpp mainwidget.cpp
-HEADERS += mainwidget.h
-FORMS += mainwidget.ui
-
-OTHER_FILES += bar-descriptor.xml
-
-
diff --git a/share/qtcreator/templates/wizards/bb-qt5-guiapp/wizard.xml b/share/qtcreator/templates/wizards/bb-qt5-guiapp/wizard.xml
deleted file mode 100644
index 92f8d4bff5d..00000000000
--- a/share/qtcreator/templates/wizards/bb-qt5-guiapp/wizard.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
- icon.png
- BlackBerry Qt 5 GUI Application;
- Creates an experimental Qt 5 GUI application for BlackBerry 10. You need to provide your own build of Qt 5 for BlackBerry 10 since Qt 5 is not provided in the current BlackBerry 10 NDK and is not included in DevAlpha devices.
-
-
-
-
-
-
-
-
-
diff --git a/src/app/app.pro b/src/app/app.pro
index 1242209065f..b7430651e74 100644
--- a/src/app/app.pro
+++ b/src/app/app.pro
@@ -10,7 +10,7 @@ SOURCES += main.cpp ../tools/qtcreatorcrashhandler/crashhandlersetup.cpp
include(../rpath.pri)
-LIBS *= -l$$qtLibraryName(ExtensionSystem) -l$$qtLibraryName(Aggregation)
+LIBS *= -l$$qtLibraryName(ExtensionSystem) -l$$qtLibraryName(Aggregation) -l$$qtLibraryName(Utils)
QT_BREAKPAD_ROOT_PATH = $$(QT_BREAKPAD_ROOT_PATH)
!isEmpty(QT_BREAKPAD_ROOT_PATH) {
diff --git a/src/libs/3rdparty/cplusplus/Bind.cpp b/src/libs/3rdparty/cplusplus/Bind.cpp
index 0defcc0a1f6..eb34bba3968 100644
--- a/src/libs/3rdparty/cplusplus/Bind.cpp
+++ b/src/libs/3rdparty/cplusplus/Bind.cpp
@@ -2002,6 +2002,8 @@ bool Bind::visit(QtPropertyDeclarationAST *ast)
flags |= QtPropertyDeclaration::ReadFunction;
} else if (name == "WRITE") {
flags |= QtPropertyDeclaration::WriteFunction;
+ } else if (name == "MEMBER") {
+ flags |= QtPropertyDeclaration::MemberVariable;
} else if (name == "RESET") {
flags |= QtPropertyDeclaration::ResetFunction;
} else if (name == "NOTIFY") {
diff --git a/src/libs/3rdparty/cplusplus/Parser.cpp b/src/libs/3rdparty/cplusplus/Parser.cpp
index b67920266fe..bf798038543 100644
--- a/src/libs/3rdparty/cplusplus/Parser.cpp
+++ b/src/libs/3rdparty/cplusplus/Parser.cpp
@@ -2138,16 +2138,17 @@ bool Parser::parseAccessDeclaration(DeclarationAST *&node)
/*
Q_PROPERTY(type name
- READ getFunction
- [WRITE setFunction]
- [RESET resetFunction]
- [NOTIFY notifySignal]
- [DESIGNABLE bool]
- [SCRIPTABLE bool]
- [STORED bool]
- [USER bool]
- [CONSTANT]
- [FINAL])
+ (READ getFunction [WRITE setFunction]
+ | MEMBER memberName [(READ getFunction | WRITE setFunction)])
+ [RESET resetFunction]
+ [NOTIFY notifySignal]
+ [REVISION int]
+ [DESIGNABLE bool]
+ [SCRIPTABLE bool]
+ [STORED bool]
+ [USER bool]
+ [CONSTANT]
+ [FINAL])
Note that "type" appears to be any valid type. So these are valid:
Q_PROPERTY(const char *zoo READ zoo)
@@ -2155,7 +2156,8 @@ bool Parser::parseAccessDeclaration(DeclarationAST *&node)
Furthermore, the only restriction on the order of the items in between the
parenthesis is that the type is the first parameter and the name comes after
- the type.
+ the type. Especially, there seems to be no restriction on the READ/WRITE/MEMBER
+ order.
*/
bool Parser::parseQtPropertyDeclaration(DeclarationAST *&node)
{
@@ -2201,6 +2203,7 @@ bool Parser::parseQtPropertyDeclaration(DeclarationAST *&node)
switch (peekAtQtContextKeyword()) {
case Token_READ:
case Token_WRITE:
+ case Token_MEMBER:
case Token_RESET:
case Token_NOTIFY:
case Token_REVISION:
diff --git a/src/libs/3rdparty/cplusplus/QtContextKeywords.cpp b/src/libs/3rdparty/cplusplus/QtContextKeywords.cpp
index cc4fdff1f1e..87403aed14f 100644
--- a/src/libs/3rdparty/cplusplus/QtContextKeywords.cpp
+++ b/src/libs/3rdparty/cplusplus/QtContextKeywords.cpp
@@ -63,7 +63,20 @@ static inline int classify5(const char *s) {
}
static inline int classify6(const char *s) {
- if (s[0] == 'N') {
+ if (s[0] == 'M') {
+ if (s[1] == 'E') {
+ if (s[2] == 'M') {
+ if (s[3] == 'B') {
+ if (s[4] == 'E') {
+ if (s[5] == 'R') {
+ return Token_MEMBER;
+ }
+ }
+ }
+ }
+ }
+ }
+ else if (s[0] == 'N') {
if (s[1] == 'O') {
if (s[2] == 'T') {
if (s[3] == 'I') {
diff --git a/src/libs/3rdparty/cplusplus/QtContextKeywords.h b/src/libs/3rdparty/cplusplus/QtContextKeywords.h
index b84ccf6ffce..a7a1f1c3f8d 100644
--- a/src/libs/3rdparty/cplusplus/QtContextKeywords.h
+++ b/src/libs/3rdparty/cplusplus/QtContextKeywords.h
@@ -18,7 +18,8 @@ enum {
Token_CONSTANT,
Token_DESIGNABLE,
Token_SCRIPTABLE,
- Token_REVISION
+ Token_REVISION,
+ Token_MEMBER
};
CPLUSPLUS_EXPORT int classifyQtContextKeyword(const char *s, int n);
diff --git a/src/libs/3rdparty/cplusplus/Symbols.h b/src/libs/3rdparty/cplusplus/Symbols.h
index b6a711b8f87..6551dc7616b 100644
--- a/src/libs/3rdparty/cplusplus/Symbols.h
+++ b/src/libs/3rdparty/cplusplus/Symbols.h
@@ -556,18 +556,19 @@ public:
NoFlags = 0,
ReadFunction = 1 << 0,
WriteFunction = 1 << 1,
- ResetFunction = 1 << 2,
- NotifyFunction = 1 << 3,
- DesignableFlag = 1 << 4,
- DesignableFunction = 1 << 5,
- ScriptableFlag = 1 << 6,
- ScriptableFunction = 1 << 7,
- StoredFlag = 1 << 8,
- StoredFunction = 1 << 9,
- UserFlag = 1 << 10,
- UserFunction = 1 << 11,
- ConstantFlag = 1 << 12,
- FinalFlag = 1 << 13
+ MemberVariable = 1 << 2,
+ ResetFunction = 1 << 3,
+ NotifyFunction = 1 << 4,
+ DesignableFlag = 1 << 5,
+ DesignableFunction = 1 << 6,
+ ScriptableFlag = 1 << 7,
+ ScriptableFunction = 1 << 8,
+ StoredFlag = 1 << 9,
+ StoredFunction = 1 << 10,
+ UserFlag = 1 << 11,
+ UserFunction = 1 << 12,
+ ConstantFlag = 1 << 13,
+ FinalFlag = 1 << 14
};
public:
diff --git a/src/libs/aggregation/aggregation.qbs b/src/libs/aggregation/aggregation.qbs
index 2c299fc4326..6c0e6e8d6b5 100644
--- a/src/libs/aggregation/aggregation.qbs
+++ b/src/libs/aggregation/aggregation.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "Aggregation"
diff --git a/src/libs/cplusplus/cplusplus.qbs b/src/libs/cplusplus/cplusplus.qbs
index 9df7f897079..2331804a55f 100644
--- a/src/libs/cplusplus/cplusplus.qbs
+++ b/src/libs/cplusplus/cplusplus.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "CPlusPlus"
diff --git a/src/libs/extensionsystem/extensionsystem.qbs b/src/libs/extensionsystem/extensionsystem.qbs
index 1762f978f21..9b654b0b036 100644
--- a/src/libs/extensionsystem/extensionsystem.qbs
+++ b/src/libs/extensionsystem/extensionsystem.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "ExtensionSystem"
diff --git a/src/libs/glsl/glsl.qbs b/src/libs/glsl/glsl.qbs
index 7c8c0304e1d..4a9d6e41657 100644
--- a/src/libs/glsl/glsl.qbs
+++ b/src/libs/glsl/glsl.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "GLSL"
diff --git a/src/libs/languageutils/languageutils.qbs b/src/libs/languageutils/languageutils.qbs
index 3f4a53e93c3..12326d2df86 100644
--- a/src/libs/languageutils/languageutils.qbs
+++ b/src/libs/languageutils/languageutils.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "LanguageUtils"
diff --git a/src/libs/qmldebug/qmldebug.qbs b/src/libs/qmldebug/qmldebug.qbs
index 601c0e4c5d1..7181013a80e 100644
--- a/src/libs/qmldebug/qmldebug.qbs
+++ b/src/libs/qmldebug/qmldebug.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "QmlDebug"
diff --git a/src/libs/qmleditorwidgets/qmleditorwidgets.qbs b/src/libs/qmleditorwidgets/qmleditorwidgets.qbs
index 7bcb914945e..9c60cfb1828 100644
--- a/src/libs/qmleditorwidgets/qmleditorwidgets.qbs
+++ b/src/libs/qmleditorwidgets/qmleditorwidgets.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "QmlEditorWidgets"
diff --git a/src/libs/qmljs/qmljs.qbs b/src/libs/qmljs/qmljs.qbs
index 8df00b7ed4c..ae5334c4bbc 100644
--- a/src/libs/qmljs/qmljs.qbs
+++ b/src/libs/qmljs/qmljs.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "QmlJS"
diff --git a/src/libs/ssh/ssh.qbs b/src/libs/ssh/ssh.qbs
index 2b1949927ef..c8a0c5ef919 100644
--- a/src/libs/ssh/ssh.qbs
+++ b/src/libs/ssh/ssh.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "QtcSsh"
diff --git a/src/libs/utils/buildablehelperlibrary.cpp b/src/libs/utils/buildablehelperlibrary.cpp
index 492da529e43..6a54838f14f 100644
--- a/src/libs/utils/buildablehelperlibrary.cpp
+++ b/src/libs/utils/buildablehelperlibrary.cpp
@@ -44,6 +44,7 @@ bool BuildableHelperLibrary::isQtChooser(const QFileInfo &info)
QString BuildableHelperLibrary::qtChooserToQmakePath(const QString &path)
{
+ const char toolDir[] = "QTTOOLDIR=\"";
QProcess proc;
proc.start(path, QStringList(QLatin1String("-print-env")));
if (!proc.waitForStarted(1000))
@@ -51,10 +52,10 @@ QString BuildableHelperLibrary::qtChooserToQmakePath(const QString &path)
if (!proc.waitForFinished(1000))
return QString();
QByteArray output = proc.readAllStandardOutput();
- int pos = output.indexOf("QTTOOLDIR=");
+ int pos = output.indexOf(toolDir);
if (pos == -1)
return QString();
- pos += strlen("QTTOOLDIR=\"");
+ pos += int(sizeof(toolDir)) - 1;
int end = output.indexOf('\"', pos);
if (end == -1)
return QString();
diff --git a/src/libs/utils/filewizarddialog.cpp b/src/libs/utils/filewizarddialog.cpp
index 483fb7e400e..d655d8822d0 100644
--- a/src/libs/utils/filewizarddialog.cpp
+++ b/src/libs/utils/filewizarddialog.cpp
@@ -30,8 +30,6 @@
#include "filewizarddialog.h"
#include "filewizardpage.h"
-#include "hostosinfo.h"
-
#include
/*!
@@ -49,18 +47,6 @@ FileWizardDialog::FileWizardDialog(QWidget *parent) :
Wizard(parent),
m_filePage(new FileWizardPage)
{
- setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
- setOption(QWizard::NoCancelButton, false);
- setOption(QWizard::NoDefaultButton, false);
- if (HostOsInfo::isMacHost()) {
- setButtonLayout(QList()
- << QWizard::CancelButton
- << QWizard::Stretch
- << QWizard::BackButton
- << QWizard::NextButton
- << QWizard::CommitButton
- << QWizard::FinishButton);
- }
const int filePageId = addPage(m_filePage);
wizardProgress()->item(filePageId)->setTitle(tr("Location"));
connect(m_filePage, SIGNAL(activated()), button(QWizard::FinishButton), SLOT(animateClick()));
diff --git a/src/libs/utils/process_ctrlc_stub.qbs b/src/libs/utils/process_ctrlc_stub.qbs
index 141b04e9f3b..8f0a3f763c0 100644
--- a/src/libs/utils/process_ctrlc_stub.qbs
+++ b/src/libs/utils/process_ctrlc_stub.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../tools/QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "qtcreator_ctrlc_stub"
diff --git a/src/libs/utils/process_stub.qbs b/src/libs/utils/process_stub.qbs
index f0da7336b20..6f1a06310c1 100644
--- a/src/libs/utils/process_stub.qbs
+++ b/src/libs/utils/process_stub.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../tools/QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "qtcreator_process_stub"
diff --git a/src/libs/utils/utils.qbs b/src/libs/utils/utils.qbs
index f3b058936f1..c40db11a3eb 100644
--- a/src/libs/utils/utils.qbs
+++ b/src/libs/utils/utils.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "Utils"
diff --git a/src/libs/utils/wizard.cpp b/src/libs/utils/wizard.cpp
index 743c628de9b..dfe849ae07a 100644
--- a/src/libs/utils/wizard.cpp
+++ b/src/libs/utils/wizard.cpp
@@ -28,6 +28,7 @@
****************************************************************************/
#include "wizard.h"
+#include "hostosinfo.h"
#include
#include
@@ -318,6 +319,20 @@ Wizard::Wizard(QWidget *parent, Qt::WindowFlags flags) :
connect(this, SIGNAL(pageAdded(int)), this, SLOT(_q_pageAdded(int)));
connect(this, SIGNAL(pageRemoved(int)), this, SLOT(_q_pageRemoved(int)));
setSideWidget(new LinearProgressWidget(d_ptr->m_wizardProgress, this));
+ setOption(QWizard::NoCancelButton, false);
+ setOption(QWizard::NoDefaultButton, false);
+ setOption(QWizard::NoBackButtonOnStartPage, true);
+ setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
+
+ if (Utils::HostOsInfo::isMacHost()) {
+ setButtonLayout(QList()
+ << QWizard::CancelButton
+ << QWizard::Stretch
+ << QWizard::BackButton
+ << QWizard::NextButton
+ << QWizard::CommitButton
+ << QWizard::FinishButton);
+ }
}
Wizard::~Wizard()
diff --git a/src/libs/zeroconf/zeroconf.qbs b/src/libs/zeroconf/zeroconf.qbs
index 02cc7f85623..d16f576b1b2 100644
--- a/src/libs/zeroconf/zeroconf.qbs
+++ b/src/libs/zeroconf/zeroconf.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "zeroconf"
diff --git a/src/plugins/0001-WelcomePage-fixes-for-the-filter-combobox-for-exampl.patch b/src/plugins/0001-WelcomePage-fixes-for-the-filter-combobox-for-exampl.patch
deleted file mode 100644
index 9860746c239..00000000000
--- a/src/plugins/0001-WelcomePage-fixes-for-the-filter-combobox-for-exampl.patch
+++ /dev/null
@@ -1,144 +0,0 @@
-From d39debcd0e4ce78df47597cea7e27df1964a1820 Mon Sep 17 00:00:00 2001
-From: Thomas Hartmann
-Date: Wed, 12 Jun 2013 15:43:47 +0200
-Subject: [PATCH] WelcomePage: fixes for the filter combobox for examples
-
-"All Versions" did not work correctly and just contributed to
-confusion. So it is removed. Since we need a sensible default
-setting we now search for the Qt with the highest version that has
-examples and demos.
-
-Change-Id: I495252a99753ebe511b598c61a79bbb0cd293e40
----
- src/plugins/qtsupport/exampleslistmodel.cpp | 73 ++++++++++++++++++++-------
- 1 files changed, 54 insertions(+), 19 deletions(-)
-
-diff --git a/src/plugins/qtsupport/exampleslistmodel.cpp b/src/plugins/qtsupport/exampleslistmodel.cpp
-index baad189..d6603c1 100644
---- a/src/plugins/qtsupport/exampleslistmodel.cpp
-+++ b/src/plugins/qtsupport/exampleslistmodel.cpp
-@@ -48,13 +48,13 @@
- namespace QtSupport {
- namespace Internal {
-
--const int allQtVersionsId = -0xff;
-+const int noQtVersionsId = -0xff;
- static const char currentQtVersionFilterSettingsKeyC[] = "WelcomePageQtVersionFilter";
-
- int uniqueQtVersionIdSetting()
- {
- QSettings *settings = Core::ICore::settings();
-- int id = settings->value(QLatin1String(currentQtVersionFilterSettingsKeyC), allQtVersionsId).toInt();
-+ int id = settings->value(QLatin1String(currentQtVersionFilterSettingsKeyC), noQtVersionsId).toInt();
- return id;
- }
-
-@@ -77,6 +77,38 @@ public:
- setRoleNames(roleNames);
- }
-
-+ int findHightestQtVersion()
-+ {
-+ QtVersionManager *versionManager = QtVersionManager::instance();
-+ QList qtVersions = versionManager->validVersions();
-+
-+ BaseQtVersion *newVersion = 0;
-+
-+ foreach (BaseQtVersion *version, qtVersions) {
-+
-+ if (version->isValid() && version->hasDemos() && version->hasExamples()) {
-+ if (!newVersion) {
-+ newVersion = version;
-+ } else {
-+ if (version->qtVersion() > newVersion->qtVersion()) {
-+ newVersion = version;
-+ } else if (version->qtVersion() == newVersion->qtVersion()
-+ && version->uniqueId() < newVersion->uniqueId()) {
-+ newVersion = version;
-+ }
-+ }
-+ }
-+ }
-+
-+ if (!newVersion && !qtVersions.isEmpty())
-+ newVersion = qtVersions.first();
-+
-+ if (!newVersion)
-+ return noQtVersionsId;
-+
-+ return newVersion->uniqueId();
-+ }
-+
- void setupQtVersions()
- {
- beginResetModel();
-@@ -90,30 +122,33 @@ public:
- if (defaultVersion && qtVersions.contains(defaultVersion))
- qtVersions.move(qtVersions.indexOf(defaultVersion), 0);
-
-- QStandardItem *newItem = new QStandardItem();
-- newItem->setData(tr("All Versions"), Qt::UserRole + 1);
-- newItem->setData(allQtVersionsId, Qt::UserRole + 2);
-- appendRow(newItem);
--
- int qtVersionSetting = uniqueQtVersionIdSetting();
-- if (qtVersionSetting != allQtVersionsId) {
-+ int newQtVersionSetting = noQtVersionsId;
-+ if (qtVersionSetting != noQtVersionsId) {
- //ensure that the unique Qt id is valid
-- int newQtVersionSetting = allQtVersionsId;
- foreach (BaseQtVersion *version, qtVersions) {
-- if (version->uniqueId() == qtVersionSetting)
-+ if (version->uniqueId() == qtVersionSetting) {
- newQtVersionSetting = qtVersionSetting;
-+ }
- }
-+ }
-
-- if (newQtVersionSetting != qtVersionSetting) {
-- setUniqueQtVersionIdSetting(newQtVersionSetting);
-- }
-+ if (newQtVersionSetting == noQtVersionsId) {
-+ newQtVersionSetting = findHightestQtVersion();
-+ }
-+
-+ if (newQtVersionSetting != qtVersionSetting) {
-+ setUniqueQtVersionIdSetting(newQtVersionSetting);
- }
-
-+
- foreach (BaseQtVersion *version, qtVersions) {
-- QStandardItem *newItem = new QStandardItem();
-- newItem->setData(version->displayName(), Qt::UserRole + 1);
-- newItem->setData(version->uniqueId(), Qt::UserRole + 2);
-- appendRow(newItem);
-+ if (version->hasDemos() || version->hasExamples()) {
-+ QStandardItem *newItem = new QStandardItem();
-+ newItem->setData(version->displayName(), Qt::UserRole + 1);
-+ newItem->setData(version->uniqueId(), Qt::UserRole + 2);
-+ appendRow(newItem);
-+ }
- }
- endResetModel();
- }
-@@ -147,7 +182,7 @@ ExamplesListModel::ExamplesListModel(QObject *parent) :
- m_updateOnQtVersionsChanged(false),
- m_initialized(false),
- m_helpInitialized(false),
-- m_uniqueQtId(allQtVersionsId)
-+ m_uniqueQtId(noQtVersionsId)
- {
- QHash roleNames;
- roleNames[Name] = "name";
-@@ -517,7 +552,7 @@ QStringList ExamplesListModel::exampleSources(QString *examplesInstallPath, QStr
- foreach (BaseQtVersion *version, qtVersions) {
-
- //filter for qt versions
-- if (version->uniqueId() != m_uniqueQtId && m_uniqueQtId != allQtVersionsId)
-+ if (version->uniqueId() != m_uniqueQtId && m_uniqueQtId != noQtVersionsId)
- continue;
-
- // qt5 with examples OR demos manifest
---
-1.7.6.msysgit.0
-
diff --git a/src/plugins/analyzerbase/analyzerbase.qbs b/src/plugins/analyzerbase/analyzerbase.qbs
index 47216b5aa4c..53f872c148e 100644
--- a/src/plugins/analyzerbase/analyzerbase.qbs
+++ b/src/plugins/analyzerbase/analyzerbase.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "AnalyzerBase"
diff --git a/src/plugins/android/android.qbs b/src/plugins/android/android.qbs
index 4f539107187..5a6a3e5980c 100644
--- a/src/plugins/android/android.qbs
+++ b/src/plugins/android/android.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Android"
diff --git a/src/plugins/android/androidconfigurations.cpp b/src/plugins/android/androidconfigurations.cpp
index fa71d84f907..a0db9a061aa 100644
--- a/src/plugins/android/androidconfigurations.cpp
+++ b/src/plugins/android/androidconfigurations.cpp
@@ -822,7 +822,9 @@ void AndroidConfigurations::updateAutomaticKitList()
foreach (Kit *k, existingKits) {
ProjectExplorer::ToolChain *tc = ToolChainKitInformation::toolChain(k);
- if (tc && tc->type() == QLatin1String(Constants::ANDROID_TOOLCHAIN_TYPE)) {
+ QtSupport::BaseQtVersion *qtVersion = QtSupport::QtKitInformation::qtVersion(k);
+ if (tc && tc->type() == QLatin1String(Constants::ANDROID_TOOLCHAIN_TYPE)
+ && qtVersion && qtVersion->type() == QLatin1String(Constants::ANDROIDQT)) {
k->makeUnSticky();
k->setAutoDetected(false);
} else {
diff --git a/src/plugins/android/androiddeployqtstep.cpp b/src/plugins/android/androiddeployqtstep.cpp
index ea5d6eeac00..56ca22ec9f4 100644
--- a/src/plugins/android/androiddeployqtstep.cpp
+++ b/src/plugins/android/androiddeployqtstep.cpp
@@ -79,6 +79,9 @@ QList AndroidDeployQtStepFactory::availableCreationIds(ProjectExplorer
return QList();
if (parent->contains(AndroidDeployQtStep::Id))
return QList();
+ QtSupport::BaseQtVersion *qtVersion = QtSupport::QtKitInformation::qtVersion(parent->target()->kit());
+ if (!qtVersion || qtVersion->qtVersion() < QtSupport::QtVersionNumber(5, 2, 0))
+ return QList();
return QList() << AndroidDeployQtStep::Id;
}
@@ -164,9 +167,13 @@ void AndroidDeployQtStep::ctor()
bool AndroidDeployQtStep::init()
{
if (AndroidManager::checkForQt51Files(project()->projectDirectory()))
- emit addOutput(tr("Found old android folder in source directory. Qt 5.2 does not use that folder by default."), ErrorOutput);
+ emit addOutput(tr("Found old Android folder in source directory. Qt 5.2 does not use that folder by default."), ErrorOutput);
m_targetArch = AndroidManager::targetArch(target());
+ if (m_targetArch.isEmpty()) {
+ emit addOutput(tr("No Android arch set by the .pro file."), ErrorOutput);
+ return false;
+ }
m_deviceAPILevel = AndroidManager::minimumSDK(target());
AndroidDeviceInfo info = AndroidConfigurations::instance().showDeviceDialog(project(), m_deviceAPILevel, m_targetArch);
if (info.serialNumber.isEmpty()) // aborted
@@ -511,13 +518,13 @@ QAbstractItemModel *AndroidDeployQtStep::keystoreCertificates()
keytoolProc.start(AndroidConfigurations::instance().keytoolPath().toString(), params);
if (!keytoolProc.waitForStarted() || !keytoolProc.waitForFinished()) {
QMessageBox::critical(0, tr("Error"),
- tr("Failed to run keytool"));
+ tr("Failed to run keytool."));
return 0;
}
if (keytoolProc.exitCode()) {
QMessageBox::critical(0, tr("Error"),
- tr("Invalid password"));
+ tr("Invalid password."));
m_keystorePasswd.clear();
}
rawCerts = QString::fromLatin1(keytoolProc.readAllStandardOutput());
diff --git a/src/plugins/android/androiddeployqtwidget.ui b/src/plugins/android/androiddeployqtwidget.ui
index 37d0d4e4b56..599ae3f9bc8 100644
--- a/src/plugins/android/androiddeployqtwidget.ui
+++ b/src/plugins/android/androiddeployqtwidget.ui
@@ -174,7 +174,7 @@
-
- Verbose Output
+ Verbose output
@@ -210,7 +210,7 @@
-
- Android deploy Qt Input File:
+ Android deploy Qt input file:
@@ -309,7 +309,7 @@ The APK will not be usable on any other device.
-
- Additional libraries
+ Additional Libraries
-
@@ -317,7 +317,7 @@ The APK will not be usable on any other device.
-
- List of extra libraries to include in Android package and load on start-up.
+ List of extra libraries to include in Android package and load on startup.
QAbstractItemView::ExtendedSelection
@@ -335,7 +335,7 @@ The APK will not be usable on any other device.
- Select a library to include in package
+ Select library to include in package.
Add
@@ -348,7 +348,7 @@ The APK will not be usable on any other device.
-
- Remove currently selected library from list
+ Remove currently selected library from list.
Remove
diff --git a/src/plugins/android/androiddeploystepfactory.cpp b/src/plugins/android/androiddeploystepfactory.cpp
index 07e879b86b1..b0f6a263f64 100644
--- a/src/plugins/android/androiddeploystepfactory.cpp
+++ b/src/plugins/android/androiddeploystepfactory.cpp
@@ -58,6 +58,9 @@ QList AndroidDeployStepFactory::availableCreationIds(BuildStepList *pa
return QList();
if (parent->contains(AndroidDeployStep::Id))
return QList();
+ QtSupport::BaseQtVersion *qtVersion = QtSupport::QtKitInformation::qtVersion(parent->target()->kit());
+ if (qtVersion && qtVersion->qtVersion() >= QtSupport::QtVersionNumber(5, 2, 0))
+ return QList();
return QList() << AndroidDeployStep::Id;
}
diff --git a/src/plugins/android/androidmanager.cpp b/src/plugins/android/androidmanager.cpp
index e87e972e840..29208b19ffd 100644
--- a/src/plugins/android/androidmanager.cpp
+++ b/src/plugins/android/androidmanager.cpp
@@ -633,7 +633,7 @@ bool AndroidManager::createAndroidTemplatesIfNecessary(ProjectExplorer::Target *
}
if (forceUpdate)
- QMessageBox::warning(0, tr("Warning"), tr("Android files have been updated automatically"));
+ QMessageBox::warning(0, tr("Warning"), tr("Android files have been updated automatically."));
return true;
}
@@ -936,7 +936,7 @@ bool AndroidManager::saveLibsXml(ProjectExplorer::Target *target, QDomDocument &
void AndroidManager::raiseError(const QString &reason)
{
- QMessageBox::critical(0, tr("Error creating Android templates"), reason);
+ QMessageBox::critical(0, tr("Error creating Android templates."), reason);
}
QString AndroidManager::loadLocal(ProjectExplorer::Target *target, int apiLevel, ItemType item, const QString &attribute)
@@ -1046,7 +1046,7 @@ bool AndroidManager::openXmlFile(QDomDocument &doc, const Utils::FileName &fileN
return false;
if (!doc.setContent(f.readAll())) {
- raiseError(tr("Can't parse '%1'").arg(fileName.toUserOutput()));
+ raiseError(tr("Cannot parse '%1'.").arg(fileName.toUserOutput()));
return false;
}
return true;
@@ -1059,7 +1059,7 @@ bool AndroidManager::saveXmlFile(ProjectExplorer::Target *target, QDomDocument &
QFile f(fileName.toString());
if (!f.open(QIODevice::WriteOnly)) {
- raiseError(tr("Can't open '%1'").arg(fileName.toUserOutput()));
+ raiseError(tr("Cannot open '%1'.").arg(fileName.toUserOutput()));
return false;
}
return f.write(doc.toByteArray(4)) >= 0;
@@ -1195,6 +1195,8 @@ QString AndroidManager::libraryPrefix()
void AndroidManager::cleanLibsOnDevice(ProjectExplorer::Target *target)
{
const QString targetArch = AndroidManager::targetArch(target);
+ if (targetArch.isEmpty())
+ return;
int deviceAPILevel = AndroidManager::minimumSDK(target);
AndroidDeviceInfo info = AndroidConfigurations::instance().showDeviceDialog(target->project(), deviceAPILevel, targetArch);
if (info.serialNumber.isEmpty()) // aborted
@@ -1206,7 +1208,7 @@ void AndroidManager::cleanLibsOnDevice(ProjectExplorer::Target *target)
if (info.type == AndroidDeviceInfo::Emulator) {
deviceSerialNumber = AndroidConfigurations::instance().startAVD(deviceSerialNumber, deviceAPILevel, targetArch);
if (deviceSerialNumber.isEmpty())
- Core::MessageManager::write(tr("Starting android virtual device failed."));
+ Core::MessageManager::write(tr("Starting Android virtual device failed."));
}
QProcess *process = new QProcess();
@@ -1223,6 +1225,8 @@ void AndroidManager::cleanLibsOnDevice(ProjectExplorer::Target *target)
void AndroidManager::installQASIPackage(ProjectExplorer::Target *target, const QString &packagePath)
{
const QString targetArch = AndroidManager::targetArch(target);
+ if (targetArch.isEmpty())
+ return;
int deviceAPILevel = AndroidManager::minimumSDK(target);
AndroidDeviceInfo info = AndroidConfigurations::instance().showDeviceDialog(target->project(), deviceAPILevel, targetArch);
if (info.serialNumber.isEmpty()) // aborted
@@ -1233,7 +1237,7 @@ void AndroidManager::installQASIPackage(ProjectExplorer::Target *target, const Q
if (info.type == AndroidDeviceInfo::Emulator) {
deviceSerialNumber = AndroidConfigurations::instance().startAVD(deviceSerialNumber, deviceAPILevel, targetArch);
if (deviceSerialNumber.isEmpty())
- Core::MessageManager::write(tr("Starting android virtual device failed."));
+ Core::MessageManager::write(tr("Starting Android virtual device failed."));
}
QProcess *process = new QProcess();
diff --git a/src/plugins/android/androidmanifesteditorwidget.cpp b/src/plugins/android/androidmanifesteditorwidget.cpp
index ddf27b89230..66b3f9c6da9 100644
--- a/src/plugins/android/androidmanifesteditorwidget.cpp
+++ b/src/plugins/android/androidmanifesteditorwidget.cpp
@@ -156,7 +156,7 @@ void AndroidManifestEditorWidget::initializePage()
m_packageNameLineEdit = new QLineEdit(packageGroupBox);
m_packageNameLineEdit->setToolTip(tr(
"
Please choose a valid package name "
- "for your application (e.g. \"org.example.myapplication\").
"
+ "for your application (for example, \"org.example.myapplication\").
"
"Packages are usually defined using a hierarchical naming pattern, "
"with levels in the hierarchy separated by periods (.) (pronounced \"dot\").
"
"In general, a package name begins with the top level domain name"
@@ -203,8 +203,8 @@ void AndroidManifestEditorWidget::initializePage()
m_androidTargetSdkVersion = new QComboBox(packageGroupBox);
m_androidTargetSdkVersion->setToolTip(
- tr("Sets the targe SDK, set this to the highest tested version."
- "This disables compatibility behavior of the system for your application."));
+ tr("Sets the target SDK. Set this to the highest tested version."
+ "This disables compatibility behavior of the system for your application."));
m_androidTargetSdkVersion->addItem(tr("Not set"), 0);
formLayout->addRow(tr("Target SDK:"), m_androidTargetSdkVersion);
@@ -245,7 +245,7 @@ void AndroidManifestEditorWidget::initializePage()
m_lIconButton = new QToolButton(applicationGroupBox);
m_lIconButton->setMinimumSize(QSize(48, 48));
m_lIconButton->setMaximumSize(QSize(48, 48));
- m_lIconButton->setToolTip(tr("Select low dpi icon"));
+ m_lIconButton->setToolTip(tr("Select low DPI icon."));
iconLayout->addWidget(m_lIconButton);
iconLayout->addItem(new QSpacerItem(28, 20, QSizePolicy::Expanding, QSizePolicy::Minimum));
@@ -253,7 +253,7 @@ void AndroidManifestEditorWidget::initializePage()
m_mIconButton = new QToolButton(applicationGroupBox);
m_mIconButton->setMinimumSize(QSize(48, 48));
m_mIconButton->setMaximumSize(QSize(48, 48));
- m_mIconButton->setToolTip(tr("Select medium dpi icon"));
+ m_mIconButton->setToolTip(tr("Select medium DPI icon."));
iconLayout->addWidget(m_mIconButton);
iconLayout->addItem(new QSpacerItem(28, 20, QSizePolicy::Expanding, QSizePolicy::Minimum));
@@ -261,7 +261,7 @@ void AndroidManifestEditorWidget::initializePage()
m_hIconButton = new QToolButton(applicationGroupBox);
m_hIconButton->setMinimumSize(QSize(48, 48));
m_hIconButton->setMaximumSize(QSize(48, 48));
- m_hIconButton->setToolTip(tr("Select high dpi icon"));
+ m_hIconButton->setToolTip(tr("Select high DPI icon."));
iconLayout->addWidget(m_hIconButton);
formLayout->addRow(tr("Application icon:"), iconLayout);
@@ -504,6 +504,9 @@ void AndroidManifestEditorWidget::resizeEvent(QResizeEvent *event)
bool AndroidManifestEditorWidget::open(QString *errorString, const QString &fileName, const QString &realFileName)
{
bool result = PlainTextEditorWidget::open(errorString, fileName, realFileName);
+
+ updateSdkVersions();
+
if (!result)
return result;
@@ -521,7 +524,6 @@ bool AndroidManifestEditorWidget::open(QString *errorString, const QString &file
}
// some error occured
updateInfoBar(error, errorLine, errorColumn);
- updateSdkVersions();
setActivePage(Source);
return true;
@@ -651,13 +653,13 @@ bool AndroidManifestEditorWidget::checkDocument(QDomDocument doc, QString *error
{
QDomElement manifest = doc.documentElement();
if (manifest.tagName() != QLatin1String("manifest")) {
- *errorMessage = tr("The structure of the android manifest file is corrupt. Expected a top level 'manifest' node.");
+ *errorMessage = tr("The structure of the Android manifest file is corrupted. Expected a top level 'manifest' node.");
*errorLine = -1;
*errorColumn = -1;
return false;
} else if (manifest.firstChildElement(QLatin1String("application")).firstChildElement(QLatin1String("activity")).isNull()) {
// missing either application or activity element
- *errorMessage = tr("The structure of the Android manifest file is corrupt. Expected an 'application' and 'activity' sub node.");
+ *errorMessage = tr("The structure of the Android manifest file is corrupted. Expected an 'application' and 'activity' sub node.");
*errorLine = -1;
*errorColumn = -1;
return false;
@@ -697,7 +699,8 @@ void AndroidManifestEditorWidget::updateInfoBar()
void AndroidManifestEditorWidget::updateSdkVersions()
{
const QString docPath(static_cast(editor()->document())->filePath());
- QPair apiLevels = AndroidManager::apiLevelRange(androidProject(docPath)->activeTarget());
+ Project *project = androidProject(docPath);
+ QPair apiLevels = AndroidManager::apiLevelRange(project ? project->activeTarget() : 0);
for (int i = apiLevels.first; i < apiLevels.second + 1; ++i)
m_androidMinSdkVersion->addItem(tr("API %1: %2")
.arg(i)
@@ -716,9 +719,9 @@ void AndroidManifestEditorWidget::updateInfoBar(const QString &errorMessage, int
Core::InfoBar *infoBar = editorDocument()->infoBar();
QString text;
if (line < 0)
- text = tr("Could not parse file: '%1'").arg(errorMessage);
+ text = tr("Could not parse file: '%1'.").arg(errorMessage);
else
- text = tr("%2: Could not parse file: '%1'").arg(errorMessage).arg(line);
+ text = tr("%2: Could not parse file: '%1'.").arg(errorMessage).arg(line);
Core::InfoBarEntry infoBarEntry(infoBarId, text);
infoBarEntry.setCustomButtonInfo(tr("Goto error"), this, SLOT(gotoError()));
infoBar->removeInfo(infoBarId);
@@ -865,6 +868,16 @@ void setUsesSdk(QDomDocument &doc, QDomElement &manifest, int minimumSdk, int ta
}
}
+int extractVersion(const QString &string)
+{
+ if (!string.startsWith(QLatin1String("API")))
+ return 0;
+ int index = string.indexOf(QLatin1Char(':'));
+ if (index == -1)
+ return 0;
+ return string.midRef(4, index - 4).toInt();
+}
+
void AndroidManifestEditorWidget::syncToEditor()
{
QDomDocument doc;
@@ -879,8 +892,8 @@ void AndroidManifestEditorWidget::syncToEditor()
manifest.setAttribute(QLatin1String("android:versionCode"), m_versionCode->value());
manifest.setAttribute(QLatin1String("android:versionName"), m_versionNameLinedit->text());
- setUsesSdk(doc, manifest, m_androidMinSdkVersion->currentText().toInt(),
- m_androidTargetSdkVersion->currentText().toInt());
+ setUsesSdk(doc, manifest, extractVersion(m_androidMinSdkVersion->currentText()),
+ extractVersion(m_androidTargetSdkVersion->currentText()));
setAndroidAppLibName(doc, manifest.firstChildElement(QLatin1String("application"))
.firstChildElement(QLatin1String("activity")),
diff --git a/src/plugins/android/androidpackagecreationfactory.cpp b/src/plugins/android/androidpackagecreationfactory.cpp
index 2bc7e7460fa..6d19e081aab 100644
--- a/src/plugins/android/androidpackagecreationfactory.cpp
+++ b/src/plugins/android/androidpackagecreationfactory.cpp
@@ -36,6 +36,8 @@
#include
#include
+#include
+
using namespace ProjectExplorer;
namespace Android {
@@ -54,6 +56,9 @@ QList AndroidPackageCreationFactory::availableCreationIds(BuildStepLis
return QList();
if (parent->contains(AndroidPackageCreationStep::CreatePackageId))
return QList();
+ QtSupport::BaseQtVersion *qtVersion = QtSupport::QtKitInformation::qtVersion(parent->target()->kit());
+ if (qtVersion && qtVersion->qtVersion() >= QtSupport::QtVersionNumber(5, 2, 0))
+ return QList();
return QList() << AndroidPackageCreationStep::CreatePackageId;
}
diff --git a/src/plugins/android/androidpotentialkit.cpp b/src/plugins/android/androidpotentialkit.cpp
index d55a23db6ae..9083d018f4f 100644
--- a/src/plugins/android/androidpotentialkit.cpp
+++ b/src/plugins/android/androidpotentialkit.cpp
@@ -83,7 +83,7 @@ AndroidPotentialKitWidget::AndroidPotentialKitWidget(QWidget *parent)
QGridLayout *layout = new QGridLayout(mainWidget);
layout->setMargin(0);
QLabel *label = new QLabel;
- label->setText(tr("Creator needs additional settings to enable Android support."
+ label->setText(tr("Qt Creator needs additional settings to enable Android support."
"You can configure those settings in the Options dialog."));
label->setWordWrap(true);
layout->addWidget(label, 0, 0, 1, 2);
diff --git a/src/plugins/android/androidrunconfiguration.cpp b/src/plugins/android/androidrunconfiguration.cpp
index d84bce54b8f..a7d433b0af6 100644
--- a/src/plugins/android/androidrunconfiguration.cpp
+++ b/src/plugins/android/androidrunconfiguration.cpp
@@ -37,10 +37,17 @@
#include
#include
#include
+#include
+#include
#include
+namespace {
+const char PRO_FILE_KEY[] = "Qt4ProjectManager.Qt4RunConfiguration.ProFile";
+}
+
using namespace ProjectExplorer;
+using Qt4ProjectManager::Qt4Project;
namespace Android {
namespace Internal {
@@ -49,12 +56,17 @@ AndroidRunConfiguration::AndroidRunConfiguration(Target *parent, Core::Id id, co
: RunConfiguration(parent, id)
, m_proFilePath(path)
{
+ Qt4Project *project = static_cast(parent->project());
+ m_parseSuccess = project->validParse(m_proFilePath);
+ m_parseInProgress = project->parseInProgress(m_proFilePath);
init();
}
AndroidRunConfiguration::AndroidRunConfiguration(Target *parent, AndroidRunConfiguration *source)
: RunConfiguration(parent, source)
, m_proFilePath(source->m_proFilePath)
+ , m_parseSuccess(source->m_parseSuccess)
+ , m_parseInProgress(source->m_parseInProgress)
{
init();
}
@@ -62,6 +74,55 @@ AndroidRunConfiguration::AndroidRunConfiguration(Target *parent, AndroidRunConfi
void AndroidRunConfiguration::init()
{
setDefaultDisplayName(defaultDisplayName());
+ connect(target()->project(), SIGNAL(proFileUpdated(Qt4ProjectManager::Qt4ProFileNode*,bool,bool)),
+ this, SLOT(proFileUpdated(Qt4ProjectManager::Qt4ProFileNode*,bool,bool)));
+}
+
+bool AndroidRunConfiguration::fromMap(const QVariantMap &map)
+{
+ const QDir projectDir = QDir(target()->project()->projectDirectory());
+ m_proFilePath = QDir::cleanPath(projectDir.filePath(map.value(QLatin1String(PRO_FILE_KEY)).toString()));
+ m_parseSuccess = static_cast(target()->project())->validParse(m_proFilePath);
+ m_parseInProgress = static_cast(target()->project())->parseInProgress(m_proFilePath);
+
+ return RunConfiguration::fromMap(map);
+}
+
+QVariantMap AndroidRunConfiguration::toMap() const
+{
+ const QDir projectDir = QDir(target()->project()->projectDirectory());
+ QVariantMap map(RunConfiguration::toMap());
+ map.insert(QLatin1String(PRO_FILE_KEY), projectDir.relativeFilePath(m_proFilePath));
+ return map;
+}
+
+bool AndroidRunConfiguration::isEnabled() const
+{
+ return m_parseSuccess && !m_parseInProgress;
+}
+
+QString AndroidRunConfiguration::disabledReason() const
+{
+ if (m_parseInProgress)
+ return tr("The .pro file '%1' is currently being parsed.")
+ .arg(QFileInfo(m_proFilePath).fileName());
+
+ if (!m_parseSuccess)
+ return static_cast(target()->project())->disabledReasonForRunConfiguration(m_proFilePath);
+ return QString();
+}
+
+void AndroidRunConfiguration::proFileUpdated(Qt4ProjectManager::Qt4ProFileNode *pro, bool success, bool parseInProgress)
+{
+ if (m_proFilePath != pro->path())
+ return;
+
+ bool enabled = isEnabled();
+ QString reason = disabledReason();
+ m_parseSuccess = success;
+ m_parseInProgress = parseInProgress;
+ if (enabled != isEnabled() || reason != disabledReason())
+ emit enabledChanged();
}
QWidget *AndroidRunConfiguration::createConfigurationWidget()
diff --git a/src/plugins/android/androidrunconfiguration.h b/src/plugins/android/androidrunconfiguration.h
index 9e0fd50cd7c..7290b84d7bd 100644
--- a/src/plugins/android/androidrunconfiguration.h
+++ b/src/plugins/android/androidrunconfiguration.h
@@ -35,6 +35,8 @@
#include
+namespace Qt4ProjectManager { class Qt4ProFileNode; }
+
namespace Android {
namespace Internal {
@@ -59,14 +61,22 @@ public:
const QString remoteChannel() const;
const QString dumperLib() const;
+ bool isEnabled() const;
+ QString disabledReason() const;
protected:
AndroidRunConfiguration(ProjectExplorer::Target *parent, AndroidRunConfiguration *source);
QString defaultDisplayName();
+ bool fromMap(const QVariantMap &map);
+ QVariantMap toMap() const;
+private slots:
+ void proFileUpdated(Qt4ProjectManager::Qt4ProFileNode *pro, bool success, bool parseInProgress);
private:
void init();
QString m_proFilePath;
+ bool m_parseSuccess;
+ bool m_parseInProgress;
};
} // namespace Internal
diff --git a/src/plugins/android/androidrunfactories.cpp b/src/plugins/android/androidrunfactories.cpp
index a76656c33a3..493380b7090 100644
--- a/src/plugins/android/androidrunfactories.cpp
+++ b/src/plugins/android/androidrunfactories.cpp
@@ -94,7 +94,7 @@ QList AndroidRunConfigurationFactory::availableCreationIds(Target *par
const Core::Id base = Core::Id(ANDROID_RC_ID_PREFIX);
foreach (Qt4ProFileNode *node, nodes)
if (node->projectType() == ApplicationTemplate || node->projectType() == LibraryTemplate)
- ids << base.withSuffix(node->targetInformation().target);
+ ids << base.withSuffix(node->path());
return ids;
}
diff --git a/src/plugins/android/createandroidmanifestwizard.cpp b/src/plugins/android/createandroidmanifestwizard.cpp
index eeee6b4c61b..1ecdadc22e7 100644
--- a/src/plugins/android/createandroidmanifestwizard.cpp
+++ b/src/plugins/android/createandroidmanifestwizard.cpp
@@ -69,7 +69,7 @@ ChooseProFilePage::ChooseProFilePage(CreateAndroidManifestWizard *wizard, const
QFormLayout *fl = new QFormLayout(this);
QLabel *label = new QLabel(this);
label->setWordWrap(true);
- label->setText(tr("Select the .pro file for which you want to create a AndroidManifest.xml file"));
+ label->setText(tr("Select the .pro file for which you want to create an AndroidManifest.xml file."));
fl->addRow(label);
m_comboBox = new QComboBox(this);
@@ -108,13 +108,13 @@ ChooseDirectoryPage::ChooseDirectoryPage(CreateAndroidManifestWizard *wizard)
fl->addRow(tr("Android package source directory:"), m_androidPackageSourceDir);
if (androidPackageDir.isEmpty()) {
- label->setText(tr("Select the android package source directory. "
- "The files in the android package source directory are copied to the builddirectory's "
- "android directory and overwrite the default files."));
+ label->setText(tr("Select the Android package source directory. "
+ "The files in the Android package source directory are copied to the build directory's "
+ "Android directory and the default files are overwritten."));
m_androidPackageSourceDir->setPath(QFileInfo(m_wizard->node()->path()).absolutePath().append(QLatin1String("/android")));
} else {
- label->setText(tr("The android manifest file will be created in the ANDROID_PACKAGE_SOURCE_DIR set in the .pro file."));
+ label->setText(tr("The Android manifest file will be created in the ANDROID_PACKAGE_SOURCE_DIR set in the .pro file."));
m_androidPackageSourceDir->setPath(androidPackageDir);
m_androidPackageSourceDir->setReadOnly(true);
}
@@ -131,8 +131,6 @@ ChooseDirectoryPage::ChooseDirectoryPage(CreateAndroidManifestWizard *wizard)
CreateAndroidManifestWizard::CreateAndroidManifestWizard(ProjectExplorer::Target *target)
: m_target(target), m_node(0)
{
- setOption(QWizard::NoBackButtonOnStartPage);
- setOption(QWizard::NoCancelButton, false);
setWindowTitle(tr("Create Android Manifest Wizard"));
Qt4Project *project = static_cast(target->project());
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
index 0f3168030d1..473a61cd5a3 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
+++ b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.cpp
@@ -57,12 +57,6 @@ AutotoolsOpenProjectWizard::AutotoolsOpenProjectWizard(AutotoolsManager *manager
setPage(BuildPathPageId, new BuildPathPage(this));
setStartId(BuildPathPageId);
- init();
-}
-
-void AutotoolsOpenProjectWizard::init()
-{
- setOption(QWizard::NoBackButtonOnStartPage);
setWindowTitle(tr("Autotools Wizard"));
}
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
index 6cf5edd796a..d22ec98cbf9 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
+++ b/src/plugins/autotoolsprojectmanager/autotoolsopenprojectwizard.h
@@ -63,7 +63,6 @@ public:
AutotoolsManager *autotoolsManager() const;
private:
- void init();
AutotoolsManager *m_manager;
QString m_buildDirectory;
QString m_sourceDirectory;
diff --git a/src/plugins/autotoolsprojectmanager/autotoolsprojectmanager.qbs b/src/plugins/autotoolsprojectmanager/autotoolsprojectmanager.qbs
index 4bfba21bbfa..5b699a03e7c 100644
--- a/src/plugins/autotoolsprojectmanager/autotoolsprojectmanager.qbs
+++ b/src/plugins/autotoolsprojectmanager/autotoolsprojectmanager.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "AutotoolsProjectManager"
diff --git a/src/plugins/baremetal/baremetal.qbs b/src/plugins/baremetal/baremetal.qbs
index d72987025c6..7f8287e2e55 100644
--- a/src/plugins/baremetal/baremetal.qbs
+++ b/src/plugins/baremetal/baremetal.qbs
@@ -1,6 +1,6 @@
import qbs
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "BareMetal"
diff --git a/src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp b/src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
index cee788b3165..14e625da4c7 100644
--- a/src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
+++ b/src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
@@ -55,7 +55,7 @@ public:
} //namespace Internal
BareMetalDeviceConfigurationWizard::BareMetalDeviceConfigurationWizard(QWidget *parent) :
- QWizard(parent),
+ Utils::Wizard(parent),
d(new Internal::BareMetalDeviceConfigrationWizardPrivate(this))
{
setWindowTitle(tr("New Bare Metal Device Configuration Setup"));
diff --git a/src/plugins/baremetal/baremetaldeviceconfigurationwizard.h b/src/plugins/baremetal/baremetaldeviceconfigurationwizard.h
index 3b63d9fa541..4a35d41dea7 100644
--- a/src/plugins/baremetal/baremetaldeviceconfigurationwizard.h
+++ b/src/plugins/baremetal/baremetaldeviceconfigurationwizard.h
@@ -31,15 +31,14 @@
#define BAREMETALDEVICECONFIGURATIONWIZARD_H
#include
-
-#include
+#include
namespace BareMetal {
namespace Internal {
class BareMetalDeviceConfigrationWizardPrivate;
} // namespace Internal
-class BareMetalDeviceConfigurationWizard : public QWizard
+class BareMetalDeviceConfigurationWizard : public Utils::Wizard
{
Q_OBJECT
public:
diff --git a/src/plugins/bazaar/bazaar.qbs b/src/plugins/bazaar/bazaar.qbs
index c885f49be17..8a5791e6be3 100644
--- a/src/plugins/bazaar/bazaar.qbs
+++ b/src/plugins/bazaar/bazaar.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Bazaar"
diff --git a/src/plugins/bazaar/bazaarclient.cpp b/src/plugins/bazaar/bazaarclient.cpp
index ceb56b5ca65..431ff8c6a50 100644
--- a/src/plugins/bazaar/bazaarclient.cpp
+++ b/src/plugins/bazaar/bazaarclient.cpp
@@ -246,9 +246,9 @@ public:
const BazaarCommandParameters &p, QWidget *parent = 0) :
VcsBase::VcsBaseEditorParameterWidget(parent), m_client(client), m_params(p)
{
- mapSetting(addToggleButton(QLatin1String("-w"), tr("Ignore whitespace")),
+ mapSetting(addToggleButton(QLatin1String("-w"), tr("Ignore Whitespace")),
client->settings()->boolPointer(BazaarSettings::diffIgnoreWhiteSpaceKey));
- mapSetting(addToggleButton(QLatin1String("-B"), tr("Ignore blank lines")),
+ mapSetting(addToggleButton(QLatin1String("-B"), tr("Ignore Blank Lines")),
client->settings()->boolPointer(BazaarSettings::diffIgnoreBlankLinesKey));
}
diff --git a/src/plugins/bineditor/bineditor.qbs b/src/plugins/bineditor/bineditor.qbs
index f9384838e3a..f18676ea80e 100644
--- a/src/plugins/bineditor/bineditor.qbs
+++ b/src/plugins/bineditor/bineditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "BinEditor"
diff --git a/src/plugins/bookmarks/bookmarks.qbs b/src/plugins/bookmarks/bookmarks.qbs
index 4601f5a50d8..4264356767f 100644
--- a/src/plugins/bookmarks/bookmarks.qbs
+++ b/src/plugins/bookmarks/bookmarks.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Bookmarks"
diff --git a/src/plugins/classview/classview.qbs b/src/plugins/classview/classview.qbs
index be6ab5b42f2..a3699245d02 100644
--- a/src/plugins/classview/classview.qbs
+++ b/src/plugins/classview/classview.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "ClassView"
diff --git a/src/plugins/clearcase/clearcase.qbs b/src/plugins/clearcase/clearcase.qbs
index dcd94ac24cb..72edcc26b88 100644
--- a/src/plugins/clearcase/clearcase.qbs
+++ b/src/plugins/clearcase/clearcase.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "ClearCase"
diff --git a/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp b/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
index 477a1802240..a68a919c1d3 100644
--- a/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
+++ b/src/plugins/cmakeprojectmanager/cmakeopenprojectwizard.cpp
@@ -273,8 +273,6 @@ CMakeOpenProjectWizard::CMakeOpenProjectWizard(CMakeManager *cmakeManager, CMake
void CMakeOpenProjectWizard::init()
{
- setOption(QWizard::NoBackButtonOnStartPage);
- setOption(QWizard::NoCancelButton, false);
setWindowTitle(tr("CMake Wizard"));
}
diff --git a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.qbs b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.qbs
index 1734c6cc94e..42eafccae7a 100644
--- a/src/plugins/cmakeprojectmanager/cmakeprojectmanager.qbs
+++ b/src/plugins/cmakeprojectmanager/cmakeprojectmanager.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "CMakeProjectManager"
diff --git a/src/plugins/coreplugin/basefilewizard.cpp b/src/plugins/coreplugin/basefilewizard.cpp
index 8412e6ea459..4df472472c8 100644
--- a/src/plugins/coreplugin/basefilewizard.cpp
+++ b/src/plugins/coreplugin/basefilewizard.cpp
@@ -37,7 +37,6 @@
#include
#include
#include
-#include
#include
#include
@@ -345,28 +344,6 @@ bool BaseFileWizard::writeFiles(const GeneratedFiles &files, QString *errorMessa
return true;
}
-/*!
- Sets some standard options on a QWizard.
-*/
-
-void BaseFileWizard::setupWizard(QWizard *w)
-{
- w->setOption(QWizard::NoCancelButton, false);
- w->setOption(QWizard::NoDefaultButton, false);
- w->setOption(QWizard::NoBackButtonOnStartPage, true);
- w->setWindowFlags(w->windowFlags() & ~Qt::WindowContextHelpButtonHint);
-
- if (Utils::HostOsInfo::isMacHost()) {
- w->setButtonLayout(QList()
- << QWizard::CancelButton
- << QWizard::Stretch
- << QWizard::BackButton
- << QWizard::NextButton
- << QWizard::CommitButton
- << QWizard::FinishButton);
- }
-}
-
/*!
Reads the \c shortTitle dynamic property of \a pageId and applies it as
the title of corresponding progress item.
@@ -571,7 +548,6 @@ QWizard *StandardFileWizard::createWizardDialog(QWidget *parent,
if (wizardDialogParameters.flags().testFlag(WizardDialogParameters::ForceCapitalLetterForFileName))
standardWizardDialog->setForceFirstCapitalLetterForFileName(true);
standardWizardDialog->setWindowTitle(tr("New %1").arg(displayName()));
- setupWizard(standardWizardDialog);
standardWizardDialog->setPath(wizardDialogParameters.defaultPath());
foreach (QWizardPage *p, wizardDialogParameters.extensionPages())
BaseFileWizard::applyExtensionPageShortTitle(standardWizardDialog, standardWizardDialog->addPage(p));
diff --git a/src/plugins/coreplugin/basefilewizard.h b/src/plugins/coreplugin/basefilewizard.h
index 6eac0a66877..257b65e8e22 100644
--- a/src/plugins/coreplugin/basefilewizard.h
+++ b/src/plugins/coreplugin/basefilewizard.h
@@ -114,7 +114,6 @@ public:
virtual void runWizard(const QString &path, QWidget *parent, const QString &platform, const QVariantMap &extraValues);
static QString buildFileName(const QString &path, const QString &baseName, const QString &extension);
- static void setupWizard(QWizard *);
static void applyExtensionPageShortTitle(Utils::Wizard *wizard, int pageId);
protected:
diff --git a/src/plugins/coreplugin/coreplugin.pro b/src/plugins/coreplugin/coreplugin.pro
index 5557326a9a1..10b4087a432 100644
--- a/src/plugins/coreplugin/coreplugin.pro
+++ b/src/plugins/coreplugin/coreplugin.pro
@@ -237,6 +237,6 @@ else:unix {
OTHER_FILES += editormanager/BinFiles.mimetypes.xml
equals(TEST, 1) {
- SOURCES += plugintestutils.cpp
- HEADERS += plugintestutils.h
+ SOURCES += testdatadir.cpp
+ HEADERS += testdatadir.h
}
diff --git a/src/plugins/coreplugin/coreplugin.qbs b/src/plugins/coreplugin/coreplugin.qbs
index e3ff4475452..b7b6c93b38e 100644
--- a/src/plugins/coreplugin/coreplugin.qbs
+++ b/src/plugins/coreplugin/coreplugin.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Core"
@@ -181,8 +181,8 @@ QtcPlugin {
name: "Tests"
condition: project.testsEnabled
files: [
- "plugintestutils.cpp",
- "plugintestutils.h",
+ "testdatadir.cpp",
+ "testdatadir.h",
]
}
diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp
index 4a9890f05ed..93a7c3c739d 100644
--- a/src/plugins/coreplugin/editormanager/editormanager.cpp
+++ b/src/plugins/coreplugin/editormanager/editormanager.cpp
@@ -1147,7 +1147,7 @@ bool EditorManager::closeEditors(const QList &editorsToClose, bool ask
emit m_instance->editorsClosed(acceptedEditors.toList());
foreach (IEditor *editor, acceptedEditors)
- editor->deleteLater();
+ delete editor;
if (currentView && !currentViewHandled) {
if (IEditor *editor = currentView->currentEditor())
diff --git a/src/plugins/coreplugin/plugintestutils.cpp b/src/plugins/coreplugin/testdatadir.cpp
similarity index 70%
rename from src/plugins/coreplugin/plugintestutils.cpp
rename to src/plugins/coreplugin/testdatadir.cpp
index 964c709ae2f..c049585f97e 100644
--- a/src/plugins/coreplugin/plugintestutils.cpp
+++ b/src/plugins/coreplugin/testdatadir.cpp
@@ -28,30 +28,14 @@
****************************************************************************/
-#include "plugintestutils.h"
+#include "testdatadir.h"
-#include "editormanager/editormanager.h"
-#include "editormanager/ieditor.h"
-
-#include
#include
#include
#include
#include
-void Core::Tests::closeAndDeleteEditors(QList editorsToClose)
-{
- EditorManager::closeEditors(editorsToClose, /*askAboutModifiedEditors=*/ false);
- // The editors are going to be deleted by the event loop (deleteLater()),
- // but for tests we need them deleted now.
- foreach (Core::IEditor *editor, editorsToClose)
- QCoreApplication::sendPostedEvents(editor, QEvent::DeferredDelete);
-}
-
-void Core::Tests::closeAndDeleteEditor(Core::IEditor *editor)
-{
- closeAndDeleteEditors(QList() << editor);
-}
+using namespace Core::Internal::Tests;
static void maybeAppendSlash(QString *string)
{
@@ -60,7 +44,7 @@ static void maybeAppendSlash(QString *string)
string->append(slash);
}
-Core::Tests::TestDataDir::TestDataDir(const QString &directory)
+TestDataDir::TestDataDir(const QString &directory)
: m_directory(directory)
{
maybeAppendSlash(&m_directory);
@@ -69,12 +53,12 @@ Core::Tests::TestDataDir::TestDataDir(const QString &directory)
QVERIFY(fi.isDir());
}
-QString Core::Tests::TestDataDir::file(const QString &fileName) const
+QString TestDataDir::file(const QString &fileName) const
{
return directory() + fileName;
}
-QString Core::Tests::TestDataDir::directory(const QString &subdir, bool clean) const
+QString TestDataDir::directory(const QString &subdir, bool clean) const
{
QString path = m_directory;
if (!subdir.isEmpty())
diff --git a/src/plugins/coreplugin/plugintestutils.h b/src/plugins/coreplugin/testdatadir.h
similarity index 85%
rename from src/plugins/coreplugin/plugintestutils.h
rename to src/plugins/coreplugin/testdatadir.h
index dc4316a51d2..d8d654ca022 100644
--- a/src/plugins/coreplugin/plugintestutils.h
+++ b/src/plugins/coreplugin/testdatadir.h
@@ -28,25 +28,17 @@
****************************************************************************/
-#ifndef PLUGINTESTUTILS_H
-#define PLUGINTESTUTILS_H
+#ifndef TESTDATADIR_H
+#define TESTDATADIR_H
#include "core_global.h"
-#include
#include
namespace Core {
-
-class IEditor;
-
+namespace Internal {
namespace Tests {
-/// Closing and deleting editors
-void CORE_EXPORT closeAndDeleteEditor(Core::IEditor *editor);
-void CORE_EXPORT closeAndDeleteEditors(QList editorsToClose);
-
-/// Referencing test data
class CORE_EXPORT TestDataDir
{
public:
@@ -61,6 +53,7 @@ private:
};
} // namespace Tests
+} // namespace Internal
} // namespace Core
-#endif // PLUGINTESTUTILS_H
+#endif // TESTDATADIR_H
diff --git a/src/plugins/cpaster/cpaster.qbs b/src/plugins/cpaster/cpaster.qbs
index 01815bb7c5c..623d48fce32 100644
--- a/src/plugins/cpaster/cpaster.qbs
+++ b/src/plugins/cpaster/cpaster.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "CodePaster"
diff --git a/src/plugins/cpaster/frontend/frontend.qbs b/src/plugins/cpaster/frontend/frontend.qbs
index 70be0e9f00c..ba7d8a378be 100644
--- a/src/plugins/cpaster/frontend/frontend.qbs
+++ b/src/plugins/cpaster/frontend/frontend.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../../tools/QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "cpaster"
diff --git a/src/plugins/cppeditor/cppclasswizard.cpp b/src/plugins/cppeditor/cppclasswizard.cpp
index d56ea5cc5da..eb3a0ae243b 100644
--- a/src/plugins/cppeditor/cppclasswizard.cpp
+++ b/src/plugins/cppeditor/cppclasswizard.cpp
@@ -114,7 +114,6 @@ CppClassWizardDialog::CppClassWizardDialog(QWidget *parent) :
Utils::Wizard(parent),
m_classNamePage(new ClassNamePage(this))
{
- Core::BaseFileWizard::setupWizard(this);
setWindowTitle(tr("C++ Class Wizard"));
const int classNameId = addPage(m_classNamePage);
wizardProgress()->item(classNameId)->setTitle(tr("Details"));
diff --git a/src/plugins/cppeditor/cppdoxygen_test.cpp b/src/plugins/cppeditor/cppdoxygen_test.cpp
index 5ee9989f608..8feffc6579a 100644
--- a/src/plugins/cppeditor/cppdoxygen_test.cpp
+++ b/src/plugins/cppeditor/cppdoxygen_test.cpp
@@ -30,7 +30,6 @@
#include "cppeditor.h"
#include
-#include
#include
#include
#include
@@ -116,7 +115,8 @@ TestCase::TestCase(const QByteArray &input)
TestCase::~TestCase()
{
- Core::Tests::closeAndDeleteEditor(editor);
+ EditorManager::closeEditor(editor, false);
+ QCoreApplication::processEvents(); // process any pending events
// Remove the test file from the code-model
CppTools::CppModelManagerInterface *mmi = CppTools::CppModelManagerInterface::instance();
diff --git a/src/plugins/cppeditor/cppeditor.qbs b/src/plugins/cppeditor/cppeditor.qbs
index 91d52d4d70f..7ca766b74cf 100644
--- a/src/plugins/cppeditor/cppeditor.qbs
+++ b/src/plugins/cppeditor/cppeditor.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "CppEditor"
diff --git a/src/plugins/cppeditor/cppquickfix_test.cpp b/src/plugins/cppeditor/cppquickfix_test.cpp
index 53c74826fd5..31c4b6513f1 100644
--- a/src/plugins/cppeditor/cppquickfix_test.cpp
+++ b/src/plugins/cppeditor/cppquickfix_test.cpp
@@ -34,7 +34,6 @@
#include "cppquickfixassistant.h"
#include "cppquickfixes.h"
-#include
#include
#include
#include
@@ -239,7 +238,6 @@ void TestCase::init(const QStringList &includePaths)
// Rehighlight
testFile->editorWidget->semanticRehighlight(true);
-
// Wait for the semantic info from the future
while (testFile->editorWidget->semanticInfo().doc.isNull())
QCoreApplication::processEvents();
@@ -265,7 +263,8 @@ TestCase::~TestCase()
if (testFile->editor)
editorsToClose << testFile->editor;
}
- Core::Tests::closeAndDeleteEditors(editorsToClose);
+ EditorManager::closeEditors(editorsToClose, false);
+ QCoreApplication::processEvents(); // process any pending events
// Remove the test files from the code-model
CppModelManagerInterface *mmi = CppModelManagerInterface::instance();
diff --git a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
index 4e8b1f3d790..7d3e2d1cb90 100644
--- a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
+++ b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp
@@ -232,7 +232,8 @@ IAssistProcessor *VirtualFunctionAssistProvider::createProcessor() const
enum VirtualType { Virtual, PureVirtual };
-static bool isVirtualFunction_helper(Function *function, const Snapshot &snapshot,
+static bool isVirtualFunction_helper(const Function *function,
+ const Snapshot &snapshot,
VirtualType virtualType)
{
if (!function)
@@ -270,12 +271,12 @@ static bool isVirtualFunction_helper(Function *function, const Snapshot &snapsho
return false;
}
-bool FunctionHelper::isVirtualFunction(Function *function, const Snapshot &snapshot)
+bool FunctionHelper::isVirtualFunction(const Function *function, const Snapshot &snapshot)
{
return isVirtualFunction_helper(function, snapshot, Virtual);
}
-bool FunctionHelper::isPureVirtualFunction(Function *function, const Snapshot &snapshot)
+bool FunctionHelper::isPureVirtualFunction(const Function *function, const Snapshot &snapshot)
{
return isVirtualFunction_helper(function, snapshot, PureVirtual);
}
diff --git a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.h b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.h
index b3bb76c24d1..c634b4ed44f 100644
--- a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.h
+++ b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.h
@@ -64,14 +64,15 @@ private:
class FunctionHelper
{
public:
- static bool isVirtualFunction(CPlusPlus::Function *function,
- const CPlusPlus::Snapshot &snapshot);
+ static bool isVirtualFunction(const CPlusPlus::Function *function,
+ const CPlusPlus::Snapshot &snapshot);
- static bool isPureVirtualFunction(CPlusPlus::Function *function,
- const CPlusPlus::Snapshot &snapshot);
+ static bool isPureVirtualFunction(const CPlusPlus::Function *function,
+ const CPlusPlus::Snapshot &snapshot);
static QList overrides(CPlusPlus::Class *startClass,
- CPlusPlus::Function *function, const CPlusPlus::Snapshot &snapshot);
+ CPlusPlus::Function *function,
+ const CPlusPlus::Snapshot &snapshot);
};
} // namespace Internal
diff --git a/src/plugins/cppeditor/followsymbol_switchmethoddecldef_test.cpp b/src/plugins/cppeditor/followsymbol_switchmethoddecldef_test.cpp
index dc001394046..441af4b440f 100644
--- a/src/plugins/cppeditor/followsymbol_switchmethoddecldef_test.cpp
+++ b/src/plugins/cppeditor/followsymbol_switchmethoddecldef_test.cpp
@@ -32,7 +32,6 @@
#include "cppelementevaluator.h"
#include "cppvirtualfunctionassistprovider.h"
-#include
#include
#include
#include
@@ -325,7 +324,8 @@ TestCase::~TestCase()
if (testFile->editor)
editorsToClose << testFile->editor;
}
- Core::Tests::closeAndDeleteEditors(editorsToClose);
+ EditorManager::closeEditors(editorsToClose, false);
+ QCoreApplication::processEvents(); // process any pending events
// Remove the test files from the code-model
CppModelManagerInterface *mmi = CppTools::CppModelManagerInterface::instance();
diff --git a/src/plugins/cpptools/cppcompletion_test.cpp b/src/plugins/cpptools/cppcompletion_test.cpp
index 3616561d095..755d0d9b987 100644
--- a/src/plugins/cpptools/cppcompletion_test.cpp
+++ b/src/plugins/cpptools/cppcompletion_test.cpp
@@ -31,7 +31,6 @@
#include "cppcompletionassist.h"
#include "cppmodelmanager.h"
-#include
#include
#include
#include
@@ -92,7 +91,7 @@ public:
~CompletionTestCase()
{
- Core::Tests::closeAndDeleteEditor(editor);
+ EditorManager::closeEditor(editor, /*askAboutModifiedEditors=*/ false);
cmm->GC();
QVERIFY(cmm->snapshot().isEmpty());
}
diff --git a/src/plugins/cpptools/cppheadersource_test.cpp b/src/plugins/cpptools/cppheadersource_test.cpp
index e6937598568..26d833d1c40 100644
--- a/src/plugins/cpptools/cppheadersource_test.cpp
+++ b/src/plugins/cpptools/cppheadersource_test.cpp
@@ -30,7 +30,7 @@
#include "cpptoolsplugin.h"
#include "cpptoolsreuse.h"
-#include
+#include
#include
#include
@@ -46,7 +46,7 @@ void CppToolsPlugin::test_headersource()
QFETCH(QString, headerFileName);
bool wasHeader;
- Core::Tests::TestDataDir dataDir(
+ Core::Internal::Tests::TestDataDir dataDir(
_(SRCDIR "/../../../tests/cppheadersource/") + _(QTest::currentDataTag()));
const QString sourcePath = dataDir.file(sourceFileName);
diff --git a/src/plugins/cpptools/cpplocatorfilter_test.cpp b/src/plugins/cpptools/cpplocatorfilter_test.cpp
index e83eb6767ab..7b6c3ae2745 100644
--- a/src/plugins/cpptools/cpplocatorfilter_test.cpp
+++ b/src/plugins/cpptools/cpplocatorfilter_test.cpp
@@ -36,7 +36,7 @@
#include "cppmodelmanager.h"
#include
-#include
+#include
#include
#include
#include
@@ -46,6 +46,7 @@
#include
using namespace Core;
+using namespace Core::Internal::Tests;
using namespace CppTools::Internal;
using namespace ExtensionSystem;
using namespace Locator;
@@ -57,7 +58,7 @@ Q_DECLARE_METATYPE(ILocatorFilter *)
namespace {
-class MyTestDataDir : public Core::Tests::TestDataDir
+class MyTestDataDir : public Core::Internal::Tests::TestDataDir
{
public:
MyTestDataDir(const QString &testDataDirectory)
@@ -124,7 +125,8 @@ private:
virtual void doAfterLocatorRun()
{
- Core::Tests::closeAndDeleteEditor(m_editor);
+ EditorManager::closeEditor(m_editor, /*askAboutModifiedEditors=*/ false);
+ QCoreApplication::processEvents();
QVERIFY(EditorManager::documentModel()->openedDocuments().isEmpty());
m_modelManager->GC();
QVERIFY(m_modelManager->snapshot().isEmpty());
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp
index 4c0c5ecba7d..4dcbb2b6eaf 100644
--- a/src/plugins/cpptools/cppmodelmanager.cpp
+++ b/src/plugins/cpptools/cppmodelmanager.cpp
@@ -681,6 +681,19 @@ private:
const QSet m_newSourceFiles;
};
+/// Make sure that m_projectMutex is locked when calling this.
+void CppModelManager::recalculateFileToProjectParts()
+{
+ m_fileToProjectParts.clear();
+ foreach (const ProjectInfo &projectInfo, m_projectToProjectsInfo) {
+ foreach (const ProjectPart::Ptr &projectPart, projectInfo.projectParts()) {
+ foreach (const ProjectFile &cxxFile, projectPart->files) {
+ m_fileToProjectParts[cxxFile.path].append(projectPart);
+ }
+ }
+ }
+}
+
QFuture CppModelManager::updateProjectInfo(const ProjectInfo &newProjectInfo)
{
if (!newProjectInfo.isValid())
@@ -738,14 +751,7 @@ QFuture CppModelManager::updateProjectInfo(const ProjectInfo &newProjectIn
// Update Project/ProjectInfo and File/ProjectPart table
m_dirty = true;
m_projectToProjectsInfo.insert(project, newProjectInfo);
- m_fileToProjectParts.clear();
- foreach (const ProjectInfo &projectInfo, m_projectToProjectsInfo) {
- foreach (const ProjectPart::Ptr &projectPart, projectInfo.projectParts()) {
- foreach (const ProjectFile &cxxFile, projectPart->files) {
- m_fileToProjectParts[cxxFile.path].append(projectPart);
- }
- }
- }
+ recalculateFileToProjectParts();
} // Mutex scope
@@ -823,6 +829,7 @@ void CppModelManager::onAboutToRemoveProject(ProjectExplorer::Project *project)
QMutexLocker locker(&m_projectMutex);
m_dirty = true;
m_projectToProjectsInfo.remove(project);
+ recalculateFileToProjectParts();
} while (0);
delayedGC();
@@ -841,6 +848,7 @@ void CppModelManager::onAboutToUnloadSession()
do {
QMutexLocker locker(&m_projectMutex);
m_projectToProjectsInfo.clear();
+ recalculateFileToProjectParts();
m_dirty = true;
} while (0);
}
diff --git a/src/plugins/cpptools/cppmodelmanager.h b/src/plugins/cpptools/cppmodelmanager.h
index e86875a63fb..0bc4ee750d4 100644
--- a/src/plugins/cpptools/cppmodelmanager.h
+++ b/src/plugins/cpptools/cppmodelmanager.h
@@ -170,6 +170,8 @@ private slots:
private:
void delayedGC();
+ void recalculateFileToProjectParts();
+
void replaceSnapshot(const CPlusPlus::Snapshot &newSnapshot);
void removeFilesFromSnapshot(const QSet &removedFiles);
void removeProjectInfoFilesAndIncludesFromSnapshot(const ProjectInfo &projectInfo);
diff --git a/src/plugins/cpptools/cppmodelmanager_test.cpp b/src/plugins/cpptools/cppmodelmanager_test.cpp
index bf17c90cd3e..3d1383b4695 100644
--- a/src/plugins/cpptools/cppmodelmanager_test.cpp
+++ b/src/plugins/cpptools/cppmodelmanager_test.cpp
@@ -33,7 +33,7 @@
#include "modelmanagertesthelper.h"
#include
-#include
+#include
#include
#include
#include
@@ -62,7 +62,7 @@ namespace {
inline QString _(const QByteArray &ba) { return QString::fromLatin1(ba, ba.size()); }
-class MyTestDataDir : public Core::Tests::TestDataDir
+class MyTestDataDir : public Core::Internal::Tests::TestDataDir
{
public:
MyTestDataDir(const QString &dir)
@@ -723,7 +723,7 @@ void CppToolsPlugin::test_modelmanager_gc_if_last_cppeditor_closed()
helper.waitForRefreshedSourceFiles();
// Close file/editor
- Core::Tests::closeAndDeleteEditor(editor);
+ Core::EditorManager::closeEditor(editor, /*askAboutModifiedEditors=*/ false);
helper.waitForFinishedGc();
// Check: File is removed from the snapshpt
@@ -760,7 +760,7 @@ void CppToolsPlugin::test_modelmanager_dont_gc_opened_files()
QVERIFY(mm->snapshot().contains(file));
// Close editor
- Core::Tests::closeAndDeleteEditor(editor);
+ Core::EditorManager::closeEditor(editor);
helper.waitForFinishedGc();
QVERIFY(mm->snapshot().isEmpty());
}
@@ -772,7 +772,7 @@ struct EditorCloser {
~EditorCloser()
{
if (editor)
- Core::Tests::closeAndDeleteEditor(editor);
+ Core::EditorManager::closeEditor(editor);
}
};
diff --git a/src/plugins/cpptools/cppsnapshotupdater.cpp b/src/plugins/cpptools/cppsnapshotupdater.cpp
index d9efa592a00..cf4a7cec749 100644
--- a/src/plugins/cpptools/cppsnapshotupdater.cpp
+++ b/src/plugins/cpptools/cppsnapshotupdater.cpp
@@ -182,28 +182,42 @@ void SnapshotUpdater::update(CppModelManager::WorkingCopy workingCopy)
Document::Ptr SnapshotUpdater::document() const
{
QMutexLocker locker(&m_mutex);
-
return m_snapshot.document(m_fileInEditor);
}
+Snapshot SnapshotUpdater::snapshot() const
+{
+ QMutexLocker locker(&m_mutex);
+ return m_snapshot;
+}
+
+QStringList SnapshotUpdater::includePaths() const
+{
+ QMutexLocker locker(&m_mutex);
+ return m_includePaths;
+}
+
+QStringList SnapshotUpdater::frameworkPaths() const
+{
+ QMutexLocker locker(&m_mutex);
+ return m_frameworkPaths;
+}
+
ProjectPart::Ptr SnapshotUpdater::currentProjectPart() const
{
QMutexLocker locker(&m_mutex);
-
return m_projectPart;
}
void SnapshotUpdater::setProjectPart(ProjectPart::Ptr projectPart)
{
QMutexLocker locker(&m_mutex);
-
m_manuallySetProjectPart = projectPart;
}
void SnapshotUpdater::setUsePrecompiledHeaders(bool usePrecompiledHeaders)
{
QMutexLocker locker(&m_mutex);
-
m_usePrecompiledHeaders = usePrecompiledHeaders;
}
diff --git a/src/plugins/cpptools/cppsnapshotupdater.h b/src/plugins/cpptools/cppsnapshotupdater.h
index 0d11e0c5865..98564357a76 100644
--- a/src/plugins/cpptools/cppsnapshotupdater.h
+++ b/src/plugins/cpptools/cppsnapshotupdater.h
@@ -54,15 +54,9 @@ public:
void update(CppModelManagerInterface::WorkingCopy workingCopy);
CPlusPlus::Document::Ptr document() const;
-
- CPlusPlus::Snapshot snapshot() const
- { return m_snapshot; }
-
- QStringList includePaths() const
- { return m_includePaths; }
-
- QStringList frameworkPaths() const
- { return m_frameworkPaths; }
+ CPlusPlus::Snapshot snapshot() const;
+ QStringList includePaths() const;
+ QStringList frameworkPaths() const;
ProjectPart::Ptr currentProjectPart() const;
void setProjectPart(ProjectPart::Ptr projectPart);
@@ -76,7 +70,7 @@ private:
private:
mutable QMutex m_mutex;
- QString m_fileInEditor;
+ const QString m_fileInEditor;
ProjectPart::Ptr m_projectPart, m_manuallySetProjectPart;
QByteArray m_configFile;
bool m_editorDefinesChangedSinceLastUpdate;
diff --git a/src/plugins/cpptools/cpptools.qbs b/src/plugins/cpptools/cpptools.qbs
index 16584b457f0..cd8e6f228ae 100644
--- a/src/plugins/cpptools/cpptools.qbs
+++ b/src/plugins/cpptools/cpptools.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "CppTools"
diff --git a/src/plugins/cpptools/symbolsearcher_test.cpp b/src/plugins/cpptools/symbolsearcher_test.cpp
index ffff79bbf58..c5529b7b467 100644
--- a/src/plugins/cpptools/symbolsearcher_test.cpp
+++ b/src/plugins/cpptools/symbolsearcher_test.cpp
@@ -33,7 +33,7 @@
#include "cppmodelmanager.h"
#include "searchsymbols.h"
-#include
+#include
#include
#include
@@ -43,7 +43,7 @@ using namespace CppTools::Internal;
namespace {
-class MyTestDataDir : public Core::Tests::TestDataDir
+class MyTestDataDir : public Core::Internal::Tests::TestDataDir
{
public:
MyTestDataDir(const QString &testDataDirectory)
diff --git a/src/plugins/cvs/cvs.qbs b/src/plugins/cvs/cvs.qbs
index d89725f59d8..8d858a7b245 100644
--- a/src/plugins/cvs/cvs.qbs
+++ b/src/plugins/cvs/cvs.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "CVS"
diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp
index 070ea7e088a..fdbd7ea1c36 100644
--- a/src/plugins/cvs/cvsplugin.cpp
+++ b/src/plugins/cvs/cvsplugin.cpp
@@ -538,8 +538,8 @@ CvsDiffParameterWidget::CvsDiffParameterWidget(const CvsDiffParameters &p, QWidg
VcsBaseEditorParameterWidget(parent), m_parameters(p)
{
setBaseArguments(p.arguments);
- addToggleButton(QLatin1String("-w"), tr("Ignore whitespace"));
- addToggleButton(QLatin1String("-B"), tr("Ignore blank lines"));
+ addToggleButton(QLatin1String("-w"), tr("Ignore Whitespace"));
+ addToggleButton(QLatin1String("-B"), tr("Ignore Blank Lines"));
connect(this, SIGNAL(argumentsChanged()),
this, SLOT(triggerReRun()));
}
diff --git a/src/plugins/debugger/debugger.qbs b/src/plugins/debugger/debugger.qbs
index 5666ea467f4..9032e846608 100644
--- a/src/plugins/debugger/debugger.qbs
+++ b/src/plugins/debugger/debugger.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Debugger"
diff --git a/src/plugins/debugger/ptracepreload.qbs b/src/plugins/debugger/ptracepreload.qbs
index d92fd2a8bb8..0f31a6c55d4 100644
--- a/src/plugins/debugger/ptracepreload.qbs
+++ b/src/plugins/debugger/ptracepreload.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../libs/QtcLibrary.qbs" as QtcLibrary
+import QtcLibrary
QtcLibrary {
name: "ptracepreload"
diff --git a/src/plugins/designer/designer.qbs b/src/plugins/designer/designer.qbs
index 68b211c7452..1c19d80a3a7 100644
--- a/src/plugins/designer/designer.qbs
+++ b/src/plugins/designer/designer.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Designer"
diff --git a/src/plugins/designer/formwizarddialog.cpp b/src/plugins/designer/formwizarddialog.cpp
index a9b8407dfe1..4af2f27d2cc 100644
--- a/src/plugins/designer/formwizarddialog.cpp
+++ b/src/plugins/designer/formwizarddialog.cpp
@@ -54,7 +54,6 @@ FormWizardDialog::FormWizardDialog(const WizardPageList &extensionPages,
void FormWizardDialog::init(const WizardPageList &extensionPages)
{
- Core::BaseFileWizard::setupWizard(this);
setWindowTitle(tr("Qt Designer Form"));
setPage(FormPageId, m_formPage);
wizardProgress()->item(FormPageId)->setTitle(tr("Form Template"));
diff --git a/src/plugins/designer/gotoslot_test.cpp b/src/plugins/designer/gotoslot_test.cpp
index 357abaaed75..ef9ed568280 100644
--- a/src/plugins/designer/gotoslot_test.cpp
+++ b/src/plugins/designer/gotoslot_test.cpp
@@ -34,7 +34,7 @@
#else
#include "formeditorw.h"
-#include
+#include
#include
#include
@@ -47,6 +47,7 @@
#include
using namespace Core;
+using namespace Core::Internal::Tests;
using namespace CppTools;
using namespace CPlusPlus;
using namespace Designer;
@@ -54,7 +55,7 @@ using namespace Designer::Internal;
namespace {
-class MyTestDataDir : public Core::Tests::TestDataDir {
+class MyTestDataDir : public Core::Internal::Tests::TestDataDir {
public:
MyTestDataDir(const QString &dir)
: TestDataDir(QLatin1String(SRCDIR "/../../../tests/designer/") + dir)
@@ -133,10 +134,7 @@ public:
private:
void cleanup()
{
- DocumentModel *documentModel = EditorManager::documentModel();
- const QList documents = documentModel->openedDocuments();
- const QList editors = documentModel->editorsForDocuments(documents);
- Core::Tests::closeAndDeleteEditors(editors);
+ EditorManager::closeAllEditors(/*askAboutModifiedEditors =*/ false);
QVERIFY(EditorManager::documentModel()->openedDocuments().isEmpty());
m_modelManager->GC();
diff --git a/src/plugins/diffeditor/diffeditor.qbs b/src/plugins/diffeditor/diffeditor.qbs
index f9e47339630..69ef2c01dca 100644
--- a/src/plugins/diffeditor/diffeditor.qbs
+++ b/src/plugins/diffeditor/diffeditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "DiffEditor"
diff --git a/src/plugins/fakevim/fakevim.qbs b/src/plugins/fakevim/fakevim.qbs
index fc9dfcbe7d4..4864bc0b501 100644
--- a/src/plugins/fakevim/fakevim.qbs
+++ b/src/plugins/fakevim/fakevim.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "FakeVim"
diff --git a/src/plugins/find/find.qbs b/src/plugins/find/find.qbs
index d9f653ae43a..0b4a08986bc 100644
--- a/src/plugins/find/find.qbs
+++ b/src/plugins/find/find.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Find"
diff --git a/src/plugins/genericprojectmanager/genericprojectmanager.qbs b/src/plugins/genericprojectmanager/genericprojectmanager.qbs
index 8a47a547cbc..70386b06ca5 100644
--- a/src/plugins/genericprojectmanager/genericprojectmanager.qbs
+++ b/src/plugins/genericprojectmanager/genericprojectmanager.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "GenericProjectManager"
diff --git a/src/plugins/genericprojectmanager/genericprojectwizard.cpp b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
index 60b118b01ba..5f97652ca53 100644
--- a/src/plugins/genericprojectmanager/genericprojectwizard.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectwizard.cpp
@@ -131,7 +131,6 @@ QWizard *GenericProjectWizard::createWizardDialog(QWidget *parent,
const Core::WizardDialogParameters &wizardDialogParameters) const
{
GenericProjectWizardDialog *wizard = new GenericProjectWizardDialog(parent);
- setupWizard(wizard);
wizard->setPath(wizardDialogParameters.defaultPath());
diff --git a/src/plugins/git/branchdialog.ui b/src/plugins/git/branchdialog.ui
index 11adc4cb4aa..92c50a68785 100644
--- a/src/plugins/git/branchdialog.ui
+++ b/src/plugins/git/branchdialog.ui
@@ -156,7 +156,7 @@
-
- Cherry Pick top commit from selected branch
+ Cherry pick top commit from selected branch.
Cherry Pick
@@ -166,7 +166,7 @@
-
- Sets current branch to track the selected one
+ Sets current branch to track the selected one.
&Track
diff --git a/src/plugins/git/git.qbs b/src/plugins/git/git.qbs
index 154a08b5554..dd4e2e02055 100644
--- a/src/plugins/git/git.qbs
+++ b/src/plugins/git/git.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Git"
diff --git a/src/plugins/glsleditor/glsleditor.qbs b/src/plugins/glsleditor/glsleditor.qbs
index d99571f1b5d..e9c97944643 100644
--- a/src/plugins/glsleditor/glsleditor.qbs
+++ b/src/plugins/glsleditor/glsleditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "GLSLEditor"
diff --git a/src/plugins/glsleditor/glslfilewizard.cpp b/src/plugins/glsleditor/glslfilewizard.cpp
index 9d3809df192..0541ac9388f 100644
--- a/src/plugins/glsleditor/glslfilewizard.cpp
+++ b/src/plugins/glsleditor/glslfilewizard.cpp
@@ -132,7 +132,6 @@ QWizard *GLSLFileWizard::createWizardDialog(QWidget *parent,
{
GLSLFileWizardDialog *wizardDialog = new GLSLFileWizardDialog(parent);
wizardDialog->setWindowTitle(tr("New %1").arg(displayName()));
- setupWizard(wizardDialog);
wizardDialog->setPath(wizardDialogParameters.defaultPath());
foreach (QWizardPage *p, wizardDialogParameters.extensionPages())
BaseFileWizard::applyExtensionPageShortTitle(wizardDialog, wizardDialog->addPage(p));
diff --git a/src/plugins/helloworld/helloworld.qbs b/src/plugins/helloworld/helloworld.qbs
index e5546e282aa..a2c677c8be8 100644
--- a/src/plugins/helloworld/helloworld.qbs
+++ b/src/plugins/helloworld/helloworld.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "HelloWorld"
diff --git a/src/plugins/help/help.qbs b/src/plugins/help/help.qbs
index e408ac47654..b4c8b62f377 100644
--- a/src/plugins/help/help.qbs
+++ b/src/plugins/help/help.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Help"
diff --git a/src/plugins/imageviewer/imageviewer.qbs b/src/plugins/imageviewer/imageviewer.qbs
index 2f189e15634..2004340e93b 100644
--- a/src/plugins/imageviewer/imageviewer.qbs
+++ b/src/plugins/imageviewer/imageviewer.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "ImageViewer"
diff --git a/src/plugins/ios/ios.qbs b/src/plugins/ios/ios.qbs
index 5c1ad996c27..4a2019a3860 100644
--- a/src/plugins/ios/ios.qbs
+++ b/src/plugins/ios/ios.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Ios"
diff --git a/src/plugins/ios/iosconfigurations.cpp b/src/plugins/ios/iosconfigurations.cpp
index fb4012355c1..9f6dff19af4 100644
--- a/src/plugins/ios/iosconfigurations.cpp
+++ b/src/plugins/ios/iosconfigurations.cpp
@@ -68,7 +68,7 @@
using namespace ProjectExplorer;
using namespace Utils;
-static const bool debugProbe = true;
+static const bool debugProbe = false;
namespace Ios {
namespace Internal {
diff --git a/src/plugins/ios/iosdevice.cpp b/src/plugins/ios/iosdevice.cpp
index 853328a0ff6..e5641426a57 100644
--- a/src/plugins/ios/iosdevice.cpp
+++ b/src/plugins/ios/iosdevice.cpp
@@ -269,7 +269,7 @@ void IosDeviceManager::updateInfo(const QString &devId)
{
IosToolHandler *requester = new IosToolHandler(IosToolHandler::IosDeviceType, this);
connect(requester, SIGNAL(deviceInfo(Ios::IosToolHandler*,QString,Ios::IosToolHandler::Dict)),
- SLOT(deviceInfo(Ios::IosToolHandler *,QString,Ios::IosToolHandler::Dict)));
+ SLOT(deviceInfo(Ios::IosToolHandler *,QString,Ios::IosToolHandler::Dict)), Qt::QueuedConnection);
connect(requester, SIGNAL(finished(Ios::IosToolHandler*)),
SLOT(infoGathererFinished(Ios::IosToolHandler*)));
requester->requestDeviceInfo(devId);
diff --git a/src/plugins/ios/iosplugin.cpp b/src/plugins/ios/iosplugin.cpp
index c4eb2325750..5e53d9940fa 100644
--- a/src/plugins/ios/iosplugin.cpp
+++ b/src/plugins/ios/iosplugin.cpp
@@ -38,6 +38,7 @@
#include "iosmanager.h"
#include "iosrunfactories.h"
#include "iossettingspage.h"
+#include "iostoolhandler.h"
#include "iosqtversionfactory.h"
#include "iosbuildstep.h"
#include "iosdeploystepfactory.h"
@@ -52,7 +53,9 @@
namespace Ios {
IosPlugin::IosPlugin()
-{ }
+{
+ qRegisterMetaType("Ios::IosToolHandler::Dict");
+}
bool IosPlugin::initialize(const QStringList &arguments, QString *errorMessage)
{
diff --git a/src/plugins/ios/iostoolhandler.cpp b/src/plugins/ios/iostoolhandler.cpp
index c3643c9e370..bc784aea744 100644
--- a/src/plugins/ios/iostoolhandler.cpp
+++ b/src/plugins/ios/iostoolhandler.cpp
@@ -61,7 +61,7 @@ class MyProcess: public QProcess
Q_OBJECT
public:
explicit MyProcess(QObject *parent = 0);
- int processOutput();
+ int processOutputSocket();
QSocketNotifier *notifier();
protected:
virtual void setupChildProcess();
@@ -136,6 +136,7 @@ public:
};
explicit IosToolHandlerPrivate(IosToolHandler::DeviceType devType, IosToolHandler *q);
+ virtual ~IosToolHandlerPrivate() {}
virtual void requestTransferApp(const QString &bundlePath, const QString &deviceId,
int timeout = 1000) = 0;
virtual void requestRunApp(const QString &bundlePath, const QStringList &extraArgs,
@@ -221,7 +222,7 @@ MyProcess::MyProcess(QObject *parent) : QProcess(parent)
m_notifier = new QSocketNotifier(m_sockets[0], QSocketNotifier::Read, this);
}
-int MyProcess::processOutput()
+int MyProcess::processOutputSocket()
{
return m_sockets[0];
}
@@ -251,8 +252,8 @@ IosToolHandlerPrivate::IosToolHandlerPrivate(IosToolHandler::DeviceType devType,
q, SLOT(subprocessFinished(int,QProcess::ExitStatus)));
QObject::connect(&process, SIGNAL(error(QProcess::ProcessError)),
q, SLOT(subprocessError(QProcess::ProcessError)));
- int accessFlags = fcntl(process.processOutput(), F_GETFL);
- if (fcntl(process.processOutput(), F_SETFL, accessFlags | O_NONBLOCK) == -1)
+ int accessFlags = fcntl(process.processOutputSocket(), F_GETFL);
+ if (fcntl(process.processOutputSocket(), F_SETFL, accessFlags | O_NONBLOCK) == -1)
qDebug() << "IosToolHandler fcntl F_SETFL failed to set non blocking mode"
<< qt_error_string(errno);
}
@@ -277,9 +278,11 @@ void IosToolHandlerPrivate::stop()
if (debugToolHandler)
qDebug() << "IosToolHandlerPrivate::stop";
if (process.state() != QProcess::NotRunning) {
- close(process.processOutput());
+ close(process.processOutputSocket());
process.close();
process.kill();
+ if (debugToolHandler)
+ qDebug() << "killing";
}
if (state != Stopped) {
state = Stopped;
@@ -374,7 +377,7 @@ void IosToolHandlerPrivate::subprocessError(QProcess::ProcessError error)
void IosToolHandlerPrivate::subprocessFinished(int exitCode, QProcess::ExitStatus exitStatus)
{
// process potentially pending data
- subprocessHasData(process.processOutput());
+ subprocessHasData(process.processOutputSocket());
switch (state) {
case NonStarted:
qDebug() << "subprocessFinished() when state was NonStarted";
@@ -944,6 +947,11 @@ IosToolHandler::IosToolHandler(DeviceType devType, QObject *parent) :
d = new Internal::IosSimulatorToolHandlerPrivate(devType, this);
}
+IosToolHandler::~IosToolHandler()
+{
+ delete d;
+}
+
void IosToolHandler::stop()
{
d->stop();
diff --git a/src/plugins/ios/iostoolhandler.h b/src/plugins/ios/iostoolhandler.h
index e817acc102a..42c6cc0fd34 100644
--- a/src/plugins/ios/iostoolhandler.h
+++ b/src/plugins/ios/iostoolhandler.h
@@ -67,7 +67,9 @@ public:
static QString iosDeviceToolPath();
static QString iosSimulatorToolPath();
+
explicit IosToolHandler(DeviceType = IosDeviceType, QObject *parent = 0);
+ ~IosToolHandler();
void requestTransferApp(const QString &bundlePath, const QString &deviceId, int timeout = 1000);
void requestRunApp(const QString &bundlePath, const QStringList &extraArgs, RunKind runType,
const QString &deviceId, int timeout = 1000);
diff --git a/src/plugins/locator/executefilter.cpp b/src/plugins/locator/executefilter.cpp
index c820ab6d902..4b4ef46b0b6 100644
--- a/src/plugins/locator/executefilter.cpp
+++ b/src/plugins/locator/executefilter.cpp
@@ -127,9 +127,9 @@ void ExecuteFilter::finished(int exitCode, QProcess::ExitStatus status)
const QString commandName = headCommand();
QString message;
if (status == QProcess::NormalExit && exitCode == 0)
- message = tr("Command '%1' finished").arg(commandName);
+ message = tr("Command '%1' finished.").arg(commandName);
else
- message = tr("Command '%1' failed").arg(commandName);
+ message = tr("Command '%1' failed.").arg(commandName);
MessageManager::write(message);
m_taskQueue.dequeue();
diff --git a/src/plugins/locator/locator.qbs b/src/plugins/locator/locator.qbs
index b4ff3f5923f..0e06a3b4341 100644
--- a/src/plugins/locator/locator.qbs
+++ b/src/plugins/locator/locator.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Locator"
diff --git a/src/plugins/locator/locator_test.cpp b/src/plugins/locator/locator_test.cpp
index 201a95e15dd..38b1287b82d 100644
--- a/src/plugins/locator/locator_test.cpp
+++ b/src/plugins/locator/locator_test.cpp
@@ -33,7 +33,7 @@
#include "basefilefilter.h"
#include "locatorfiltertest.h"
-#include
+#include
#include
#include
@@ -44,7 +44,7 @@ using namespace Locator::Internal::Tests;
namespace {
-class MyTestDataDir : public Core::Tests::TestDataDir
+class MyTestDataDir : public Core::Internal::Tests::TestDataDir
{
public:
MyTestDataDir(const QString &testDataDirectory)
diff --git a/src/plugins/macros/macromanager.cpp b/src/plugins/macros/macromanager.cpp
index 8e576444867..036a0f73204 100644
--- a/src/plugins/macros/macromanager.cpp
+++ b/src/plugins/macros/macromanager.cpp
@@ -288,7 +288,7 @@ void MacroManager::startMacro()
QString endShortcut = Core::ActionManager::command(Constants::END_MACRO)->defaultKeySequence().toString();
QString executeShortcut = Core::ActionManager::command(Constants::EXECUTE_LAST_MACRO)->defaultKeySequence().toString();
- QString help = tr("Macro mode. Type \"%1\" to stop recording and \"%2\" to play it")
+ QString help = tr("Macro mode. Type \"%1\" to stop recording and \"%2\" to play the macro.")
.arg(endShortcut).arg(executeShortcut);
Core::EditorManager::showEditorStatusBar(
QLatin1String(Constants::M_STATUS_BUFFER),
diff --git a/src/plugins/macros/macros.qbs b/src/plugins/macros/macros.qbs
index 6dcc377abe8..b9e90960a06 100644
--- a/src/plugins/macros/macros.qbs
+++ b/src/plugins/macros/macros.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Macros"
diff --git a/src/plugins/madde/madde.qbs b/src/plugins/madde/madde.qbs
index 8cbfefaa8d1..1761381b424 100644
--- a/src/plugins/madde/madde.qbs
+++ b/src/plugins/madde/madde.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Madde"
diff --git a/src/plugins/mercurial/mercurial.qbs b/src/plugins/mercurial/mercurial.qbs
index 734ba4b0b89..80611787e7e 100644
--- a/src/plugins/mercurial/mercurial.qbs
+++ b/src/plugins/mercurial/mercurial.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Mercurial"
diff --git a/src/plugins/mercurial/mercurialclient.cpp b/src/plugins/mercurial/mercurialclient.cpp
index eef368c1d8b..e4966d26271 100644
--- a/src/plugins/mercurial/mercurialclient.cpp
+++ b/src/plugins/mercurial/mercurialclient.cpp
@@ -428,9 +428,9 @@ public:
const MercurialDiffParameters &p, QWidget *parent = 0) :
VcsBase::VcsBaseEditorParameterWidget(parent), m_client(client), m_params(p)
{
- mapSetting(addToggleButton(QLatin1String("-w"), tr("Ignore whitespace")),
+ mapSetting(addToggleButton(QLatin1String("-w"), tr("Ignore Whitespace")),
client->settings()->boolPointer(MercurialSettings::diffIgnoreWhiteSpaceKey));
- mapSetting(addToggleButton(QLatin1String("-B"), tr("Ignore blank lines")),
+ mapSetting(addToggleButton(QLatin1String("-B"), tr("Ignore Blank Lines")),
client->settings()->boolPointer(MercurialSettings::diffIgnoreBlankLinesKey));
}
diff --git a/src/plugins/perforce/perforce.qbs b/src/plugins/perforce/perforce.qbs
index ee31c909594..9bc46fcee5c 100644
--- a/src/plugins/perforce/perforce.qbs
+++ b/src/plugins/perforce/perforce.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Perforce"
diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp
index eae49651a82..a4e42e28bdd 100644
--- a/src/plugins/perforce/perforceplugin.cpp
+++ b/src/plugins/perforce/perforceplugin.cpp
@@ -1215,7 +1215,7 @@ PerforceDiffParameterWidget::PerforceDiffParameterWidget(const PerforceDiffParam
VcsBase::VcsBaseEditorParameterWidget(parent), m_parameters(p)
{
setBaseArguments(p.diffArguments);
- addToggleButton(QLatin1String("w"), tr("Ignore whitespace"));
+ addToggleButton(QLatin1String("w"), tr("Ignore Whitespace"));
connect(this, SIGNAL(argumentsChanged()), this, SLOT(triggerReRun()));
}
diff --git a/src/plugins/plugins.pro b/src/plugins/plugins.pro
index 91653f64d6e..b20e24425fe 100644
--- a/src/plugins/plugins.pro
+++ b/src/plugins/plugins.pro
@@ -77,7 +77,7 @@ minQtVersion(5, 2, 0) {
warning("QmlDesigner plugin has been disabled.")
warning("QmlProfiler plugin has been disabled.")
warning("Welcome plugin has been disabled.")
- warning("These plugins need at least Qt 5.1.")
+ warning("These plugins need at least Qt 5.2.")
}
for(p, SUBDIRS) {
diff --git a/src/plugins/projectexplorer/baseprojectwizarddialog.cpp b/src/plugins/projectexplorer/baseprojectwizarddialog.cpp
index bb4ba350c90..e7086f5a16a 100644
--- a/src/plugins/projectexplorer/baseprojectwizarddialog.cpp
+++ b/src/plugins/projectexplorer/baseprojectwizarddialog.cpp
@@ -89,7 +89,6 @@ BaseProjectWizardDialog::BaseProjectWizardDialog(Utils::ProjectIntroPage *introP
void BaseProjectWizardDialog::init()
{
- Core::BaseFileWizard::setupWizard(this);
if (d->introPageId == -1) {
d->introPageId = addPage(d->introPage);
} else {
diff --git a/src/plugins/projectexplorer/customwizard/customwizard.cpp b/src/plugins/projectexplorer/customwizard/customwizard.cpp
index e8c720f9e6d..d909765204b 100644
--- a/src/plugins/projectexplorer/customwizard/customwizard.cpp
+++ b/src/plugins/projectexplorer/customwizard/customwizard.cpp
@@ -145,7 +145,6 @@ void CustomWizard::initWizardDialog(Utils::Wizard *wizard, const QString &defaul
customPage->setTitle(parameters()->fieldPageTitle);
foreach (QWizardPage *ep, extensionPages)
BaseFileWizard::applyExtensionPageShortTitle(wizard, wizard->addPage(ep));
- Core::BaseFileWizard::setupWizard(wizard);
if (CustomWizardPrivate::verbose)
qDebug() << "initWizardDialog" << wizard << wizard->pageIds();
}
diff --git a/src/plugins/projectexplorer/devicesupport/desktopprocesssignaloperation.cpp b/src/plugins/projectexplorer/devicesupport/desktopprocesssignaloperation.cpp
index 861cb23b715..c2d736b3f51 100644
--- a/src/plugins/projectexplorer/devicesupport/desktopprocesssignaloperation.cpp
+++ b/src/plugins/projectexplorer/devicesupport/desktopprocesssignaloperation.cpp
@@ -174,8 +174,8 @@ GDB 32bit | Api | Api | N/A | Win32
? QLatin1String("/win32interrupt.exe")
: QLatin1String("/win64interrupt.exe");
if (!QFile::exists(executable)) {
- appendMsgCannotInterrupt(pid, tr( "%1 does not exist. If you have built QtCreator "
- "on your own ,checkout http://qt.gitorious.org/"
+ appendMsgCannotInterrupt(pid, tr( "%1 does not exist. If you built Qt Creator "
+ "yourself, check out http://qt.gitorious.org/"
"qt-creator/binary-artifacts.").
arg(QDir::toNativeSeparators(executable)));
}
diff --git a/src/plugins/projectexplorer/importwidget.cpp b/src/plugins/projectexplorer/importwidget.cpp
index 01d0cb38802..e7e631f6cf1 100644
--- a/src/plugins/projectexplorer/importwidget.cpp
+++ b/src/plugins/projectexplorer/importwidget.cpp
@@ -48,7 +48,7 @@ ImportWidget::ImportWidget(QWidget *parent) :
vboxLayout->setContentsMargins(0, 0, 0, 0);
Utils::DetailsWidget *detailsWidget = new Utils::DetailsWidget(this);
detailsWidget->setUseCheckBox(false);
- detailsWidget->setSummaryText(tr("Import Build from..."));
+ detailsWidget->setSummaryText(tr("Import Build From..."));
detailsWidget->setSummaryFontBold(true);
// m_detailsWidget->setIcon(); // FIXME: Set icon!
vboxLayout->addWidget(detailsWidget);
diff --git a/src/plugins/projectexplorer/projectexplorer.qbs b/src/plugins/projectexplorer/projectexplorer.qbs
index a8311c4a16b..c27b0980e86 100644
--- a/src/plugins/projectexplorer/projectexplorer.qbs
+++ b/src/plugins/projectexplorer/projectexplorer.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
-import "../../../qbs/functions.js" as QtcFunctions
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcFunctions
+import QtcPlugin
QtcPlugin {
name: "ProjectExplorer"
diff --git a/src/plugins/pythoneditor/pythoneditor.qbs b/src/plugins/pythoneditor/pythoneditor.qbs
index 3b0a4899a65..0881ff31fc6 100644
--- a/src/plugins/pythoneditor/pythoneditor.qbs
+++ b/src/plugins/pythoneditor/pythoneditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "PythonEditor"
diff --git a/src/plugins/pythoneditor/wizard/pythonclasswizarddialog.cpp b/src/plugins/pythoneditor/wizard/pythonclasswizarddialog.cpp
index 040a9c222b8..09e11a331de 100644
--- a/src/plugins/pythoneditor/wizard/pythonclasswizarddialog.cpp
+++ b/src/plugins/pythoneditor/wizard/pythonclasswizarddialog.cpp
@@ -41,7 +41,6 @@ ClassWizardDialog::ClassWizardDialog(QWidget *parent)
, m_classNamePage(new ClassNamePage(this))
{
setWindowTitle(tr("Python Class Wizard"));
- Core::BaseFileWizard::setupWizard(this);
const int classNameId = addPage(m_classNamePage.data());
wizardProgress()->item(classNameId)->setTitle(tr("Details"));
}
diff --git a/src/plugins/pythoneditor/wizard/pythonfilewizard.cpp b/src/plugins/pythoneditor/wizard/pythonfilewizard.cpp
index 67b21367bd0..45cd6a14ca1 100644
--- a/src/plugins/pythoneditor/wizard/pythonfilewizard.cpp
+++ b/src/plugins/pythoneditor/wizard/pythonfilewizard.cpp
@@ -70,7 +70,6 @@ QWizard *FileWizard::createWizardDialog(QWidget *parent,
{
Utils::FileWizardDialog *pDialog = new Utils::FileWizardDialog(parent);
pDialog->setWindowTitle(tr("New %1").arg(displayName()));
- setupWizard(pDialog);
pDialog->setPath(params.defaultPath());
foreach (QWizardPage *p, params.extensionPages())
applyExtensionPageShortTitle(pDialog, pDialog->addPage(p));
diff --git a/src/plugins/qbsprojectmanager/qbsprojectmanager.qbs b/src/plugins/qbsprojectmanager/qbsprojectmanager.qbs
index ad64844f78a..adb89690872 100644
--- a/src/plugins/qbsprojectmanager/qbsprojectmanager.qbs
+++ b/src/plugins/qbsprojectmanager/qbsprojectmanager.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
import qbs.FileInfo
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QbsProjectManager"
diff --git a/src/plugins/qmldesigner/components/componentcore/addtabtotabviewdialog.ui b/src/plugins/qmldesigner/components/componentcore/addtabtotabviewdialog.ui
index c827ddbcd75..dff9e50e55c 100644
--- a/src/plugins/qmldesigner/components/componentcore/addtabtotabviewdialog.ui
+++ b/src/plugins/qmldesigner/components/componentcore/addtabtotabviewdialog.ui
@@ -19,7 +19,7 @@
-
- Add Tab
+ Add tab:
diff --git a/src/plugins/qmldesigner/components/componentcore/tabviewdesigneraction.cpp b/src/plugins/qmldesigner/components/componentcore/tabviewdesigneraction.cpp
index 55cc1c432e7..9a04a2cec3e 100644
--- a/src/plugins/qmldesigner/components/componentcore/tabviewdesigneraction.cpp
+++ b/src/plugins/qmldesigner/components/componentcore/tabviewdesigneraction.cpp
@@ -151,7 +151,7 @@ void TabViewDesignerAction::addNewTab()
QString newFilePath = directoryPath +QLatin1String("/") + tabName + QLatin1String(".qml");
if (QFileInfo(newFilePath).exists()) {
- QMessageBox::warning(Core::ICore::mainWindow(), tr("Name error"), tr("Component already exists!"));
+ QMessageBox::warning(Core::ICore::mainWindow(), tr("Name Error"), tr("Component already exists."));
} else {
bool fileCreated = createFile(newFilePath);
diff --git a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
index 5ceb949caab..9823207c8ed 100644
--- a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
+++ b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
@@ -333,9 +333,9 @@ void NavigatorTreeModel::handleChangedItem(QStandardItem *item)
} else {
if (!node.isValidId(item->text()))
- QMessageBox::warning(0, tr("Invalid Id"), tr("%1 is an invalid id").arg(item->text()));
+ QMessageBox::warning(0, tr("Invalid Id"), tr("%1 is an invalid id.").arg(item->text()));
else
- QMessageBox::warning(0, tr("Invalid Id"), tr("%1 already exists").arg(item->text()));
+ QMessageBox::warning(0, tr("Invalid Id"), tr("%1 already exists.").arg(item->text()));
bool blockSingals = blockItemChangedSignal(true);
item->setText(node.id());
blockItemChangedSignal(blockSingals);
diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp
index 594f5265e9e..6d9cc3873d6 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp
@@ -166,9 +166,9 @@ void PropertyEditorView::changeValue(const QString &name)
value->setValue(m_selectedNode.id());
m_locked = false;
if (!m_selectedNode.isValidId(newId))
- QMessageBox::warning(0, tr("Invalid Id"), tr("%1 is an invalid id").arg(newId));
+ QMessageBox::warning(0, tr("Invalid Id"), tr("%1 is an invalid id.").arg(newId));
else
- QMessageBox::warning(0, tr("Invalid Id"), tr("%1 already exists").arg(newId));
+ QMessageBox::warning(0, tr("Invalid Id"), tr("%1 already exists.").arg(newId));
}
return;
}
diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstanceserverproxy.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstanceserverproxy.cpp
index d0f4c7115a5..fa4ca766868 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstanceserverproxy.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstanceserverproxy.cpp
@@ -410,8 +410,8 @@ void NodeInstanceServerProxy::processFinished(int /*exitCode*/, QProcess::ExitSt
if (m_captureFileForTest.isOpen()) {
m_captureFileForTest.close();
m_captureFileForTest.remove();
- QMessageBox::warning(0, tr("QML Puppet Crashed"), tr("Your are recording a Puppet stream and the puppet crashed. "
- "It is recommended to reopen the QML Designer and start again."));
+ QMessageBox::warning(0, tr("QML Puppet Crashed"), tr("You are recording a puppet stream and the puppet crashed. "
+ "It is recommended to reopen the Qt Quick Designer and start again."));
}
diff --git a/src/plugins/qmldesigner/qmldesigner.qbs b/src/plugins/qmldesigner/qmldesigner.qbs
index f24e75bd3d8..a8f794fc004 100644
--- a/src/plugins/qmldesigner/qmldesigner.qbs
+++ b/src/plugins/qmldesigner/qmldesigner.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QmlDesigner"
diff --git a/src/plugins/qmljseditor/jsfilewizard.cpp b/src/plugins/qmljseditor/jsfilewizard.cpp
index 9c790743b65..aeff9bece86 100644
--- a/src/plugins/qmljseditor/jsfilewizard.cpp
+++ b/src/plugins/qmljseditor/jsfilewizard.cpp
@@ -127,7 +127,6 @@ QWizard *JsFileWizard::createWizardDialog(QWidget *parent,
{
JsFileWizardDialog *wizardDialog = new JsFileWizardDialog(parent);
wizardDialog->setWindowTitle(tr("New %1").arg(displayName()));
- setupWizard(wizardDialog);
wizardDialog->setPath(wizardDialogParameters.defaultPath());
foreach (QWizardPage *p, wizardDialogParameters.extensionPages())
BaseFileWizard::applyExtensionPageShortTitle(wizardDialog, wizardDialog->addPage(p));
diff --git a/src/plugins/qmljseditor/qmljseditor.qbs b/src/plugins/qmljseditor/qmljseditor.qbs
index 5f460b0ce1c..7284d2a3422 100644
--- a/src/plugins/qmljseditor/qmljseditor.qbs
+++ b/src/plugins/qmljseditor/qmljseditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QmlJSEditor"
diff --git a/src/plugins/qmljstools/qmljstools.qbs b/src/plugins/qmljstools/qmljstools.qbs
index 3a2b06a33eb..629cef4a153 100644
--- a/src/plugins/qmljstools/qmljstools.qbs
+++ b/src/plugins/qmljstools/qmljstools.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QmlJSTools"
diff --git a/src/plugins/qmlprofiler/qmlprofiler.qbs b/src/plugins/qmlprofiler/qmlprofiler.qbs
index 2670654cf6e..a9d7554019f 100644
--- a/src/plugins/qmlprofiler/qmlprofiler.qbs
+++ b/src/plugins/qmlprofiler/qmlprofiler.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QmlProfiler"
diff --git a/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp b/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp
index 46df68f9b3a..82af434a312 100644
--- a/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp
+++ b/src/plugins/qmlprofiler/qmlprofilermodelmanager.cpp
@@ -72,7 +72,7 @@ void QmlProfilerDataState::setState(QmlProfilerDataState::State state)
QTC_ASSERT(m_state == ProcessingData || m_state == Empty, return);
break;
default:
- emit error(tr("Trying to set unknown state in events list"));
+ emit error(tr("Trying to set unknown state in events list."));
break;
}
@@ -271,7 +271,7 @@ void QmlProfilerModelManager::complete()
if (state() == QmlProfilerDataState::Done) {
// repeated Done states are ignored
} else {
- emit error(tr("Unexpected complete signal in data model"));
+ emit error(tr("Unexpected complete signal in data model."));
}
}
diff --git a/src/plugins/qmlprojectmanager/qmlprojectmanager.qbs b/src/plugins/qmlprojectmanager/qmlprojectmanager.qbs
index dbb26a55f57..94652ae91ff 100644
--- a/src/plugins/qmlprojectmanager/qmlprojectmanager.qbs
+++ b/src/plugins/qmlprojectmanager/qmlprojectmanager.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "QmlProjectManager"
diff --git a/src/plugins/qnx/blackberryconfiguration.cpp b/src/plugins/qnx/blackberryconfiguration.cpp
index c000b29afca..228df755499 100644
--- a/src/plugins/qnx/blackberryconfiguration.cpp
+++ b/src/plugins/qnx/blackberryconfiguration.cpp
@@ -310,7 +310,7 @@ bool BlackBerryConfiguration::activate()
if (m_isAutoDetected)
return false;
- QString errorMessage = tr("The following errors occurred while activating Target: %1").arg(m_targetName);
+ QString errorMessage = tr("The following errors occurred while activating target: %1").arg(m_targetName);
if (m_qmake4BinaryFile.isEmpty() && m_qmake5BinaryFile.isEmpty())
errorMessage += QLatin1Char('\n') + tr("- No Qt version found.");
diff --git a/src/plugins/qnx/blackberryconfigurationmanager.cpp b/src/plugins/qnx/blackberryconfigurationmanager.cpp
index fab197f2599..c8a99e844d1 100644
--- a/src/plugins/qnx/blackberryconfigurationmanager.cpp
+++ b/src/plugins/qnx/blackberryconfigurationmanager.cpp
@@ -216,7 +216,7 @@ bool BlackBerryConfigurationManager::addConfiguration(BlackBerryConfiguration *c
if (c->ndkPath() == config->ndkPath()
&& c->targetName() == config->targetName()) {
if (!config->isAutoDetected())
- QMessageBox::warning(0, tr("NDK Already known"),
+ QMessageBox::warning(0, tr("NDK Already Known"),
tr("The NDK already has a configuration."), QMessageBox::Ok);
return false;
}
diff --git a/src/plugins/qnx/blackberrycreatecertificatedialog.cpp b/src/plugins/qnx/blackberrycreatecertificatedialog.cpp
index 3fd3ac18c96..1d61daed124 100644
--- a/src/plugins/qnx/blackberrycreatecertificatedialog.cpp
+++ b/src/plugins/qnx/blackberrycreatecertificatedialog.cpp
@@ -172,20 +172,20 @@ void BlackBerryCreateCertificateDialog::certificateCreated(int status)
accept();
return;
case BlackBerryCertificate::Busy:
- errorMessage = tr("The blackberry-keytool process is already running");
+ errorMessage = tr("The blackberry-keytool process is already running.");
break;
case BlackBerryCertificate::WrongPassword:
- errorMessage = tr("The enteres password is invalid");
+ errorMessage = tr("The password entered is invalid.");
break;
case BlackBerryCertificate::PasswordTooSmall:
- errorMessage = tr("The enteres password is too small");
+ errorMessage = tr("The password entered is too short.");
break;
case BlackBerryCertificate::InvalidOutputFormat:
- errorMessage = tr("Invalid output format");
+ errorMessage = tr("Invalid output format.");
break;
case BlackBerryCertificate::Error:
default:
- errorMessage = tr("An unknown error occurred");
+ errorMessage = tr("An unknown error occurred.");
break;
}
diff --git a/src/plugins/qnx/blackberrydeviceconfigurationwizard.cpp b/src/plugins/qnx/blackberrydeviceconfigurationwizard.cpp
index 73f9e36a350..52a29f84747 100644
--- a/src/plugins/qnx/blackberrydeviceconfigurationwizard.cpp
+++ b/src/plugins/qnx/blackberrydeviceconfigurationwizard.cpp
@@ -41,7 +41,7 @@ using namespace Qnx;
using namespace Qnx::Internal;
BlackBerryDeviceConfigurationWizard::BlackBerryDeviceConfigurationWizard(QWidget *parent) :
- QWizard(parent)
+ Utils::Wizard(parent)
{
setWindowTitle(tr("New BlackBerry Device Configuration Setup"));
diff --git a/src/plugins/qnx/blackberrydeviceconfigurationwizard.h b/src/plugins/qnx/blackberrydeviceconfigurationwizard.h
index 024e9eb8550..0aea5a6c104 100644
--- a/src/plugins/qnx/blackberrydeviceconfigurationwizard.h
+++ b/src/plugins/qnx/blackberrydeviceconfigurationwizard.h
@@ -34,14 +34,13 @@
#include "blackberrydeviceconfigurationwizardpages.h"
-#include
-
#include
+#include
namespace Qnx {
namespace Internal {
-class BlackBerryDeviceConfigurationWizard : public QWizard
+class BlackBerryDeviceConfigurationWizard : public Utils::Wizard
{
Q_OBJECT
public:
diff --git a/src/plugins/qnx/blackberrydeviceconfigurationwizardconfigpage.ui b/src/plugins/qnx/blackberrydeviceconfigurationwizardconfigpage.ui
index e59a39eba4a..386882cbc3c 100644
--- a/src/plugins/qnx/blackberrydeviceconfigurationwizardconfigpage.ui
+++ b/src/plugins/qnx/blackberrydeviceconfigurationwizardconfigpage.ui
@@ -52,7 +52,7 @@
- Debug Token is needed for BlackBerry applications deployment to a device.
+ Debug token is needed for deploying applications to BlackBerry devices.
true
@@ -120,7 +120,7 @@
-
- Host name/IP:
+ Host name or IP address:
diff --git a/src/plugins/qnx/blackberrydeviceconfigurationwizardpages.cpp b/src/plugins/qnx/blackberrydeviceconfigurationwizardpages.cpp
index 9d0437a93a7..0a83d52dff6 100644
--- a/src/plugins/qnx/blackberrydeviceconfigurationwizardpages.cpp
+++ b/src/plugins/qnx/blackberrydeviceconfigurationwizardpages.cpp
@@ -75,7 +75,7 @@ BlackBerryDeviceConfigurationWizardSetupPage::BlackBerryDeviceConfigurationWizar
{
m_ui->setupUi(this);
- setTitle(tr("Connection Details"));
+ setTitle(tr("Connection"));
connect(m_ui->deviceListWidget, SIGNAL(itemSelectionChanged()), this, SLOT(onDeviceSelectionChanged()));
connect(m_deviceListDetector, SIGNAL(deviceDetected(QString,QString,bool)),
@@ -225,7 +225,7 @@ BlackBerryDeviceConfigurationWizardQueryPage::BlackBerryDeviceConfigurationWizar
, m_deviceInformation(new BlackBerryDeviceInformation(this))
{
m_ui->setupUi(this);
- setTitle(tr("Query Device Information"));
+ setTitle(tr("Device Information"));
m_ui->progressBar->setMaximum(Done);
connect(m_deviceInformation,SIGNAL(finished(int)),this,SLOT(processQueryFinished(int)));
@@ -426,7 +426,7 @@ QString BlackBerryDeviceConfigurationWizardConfigPage::debugToken() const
BlackBerryDeviceConfigurationWizardFinalPage::BlackBerryDeviceConfigurationWizardFinalPage(QWidget *parent)
: QWizardPage(parent)
{
- setTitle(tr("Setup Finished"));
+ setTitle(tr("Summary"));
QVBoxLayout *layout = new QVBoxLayout(this);
QLabel *label = new QLabel(tr("The new device configuration will be created now."), this);
diff --git a/src/plugins/qnx/blackberryinstallwizard.cpp b/src/plugins/qnx/blackberryinstallwizard.cpp
index ffa3076fe78..ee0b0f30500 100644
--- a/src/plugins/qnx/blackberryinstallwizard.cpp
+++ b/src/plugins/qnx/blackberryinstallwizard.cpp
@@ -42,7 +42,7 @@ using namespace Qnx::Internal;
BlackBerryInstallWizard::BlackBerryInstallWizard(BlackBerryInstallerDataHandler::Mode mode,
const QString& version,
QWidget *parent)
- : QWizard(parent)
+ : Utils::Wizard(parent)
, m_ndkPage(0)
, m_targetPage(0)
{
diff --git a/src/plugins/qnx/blackberryinstallwizard.h b/src/plugins/qnx/blackberryinstallwizard.h
index b81a26e6364..c00b7970cdb 100644
--- a/src/plugins/qnx/blackberryinstallwizard.h
+++ b/src/plugins/qnx/blackberryinstallwizard.h
@@ -32,9 +32,9 @@
#ifndef QNX_INTERNAL_BLACKBERRYDEVICECONFIGURATIONWIZARD_H
#define QNX_INTERNAL_BLACKBERRYDEVICECONFIGURATIONWIZARD_H
-#include
+#include
-#include
+#include
namespace Qnx {
namespace Internal {
@@ -61,7 +61,7 @@ public:
Mode mode;
};
-class BlackBerryInstallWizard : public QWizard
+class BlackBerryInstallWizard : public Utils::Wizard
{
Q_OBJECT
public:
diff --git a/src/plugins/qnx/blackberryinstallwizardpages.cpp b/src/plugins/qnx/blackberryinstallwizardpages.cpp
index 442f91feec5..39033251d5a 100644
--- a/src/plugins/qnx/blackberryinstallwizardpages.cpp
+++ b/src/plugins/qnx/blackberryinstallwizardpages.cpp
@@ -100,8 +100,8 @@ BlackBerryInstallWizardOptionPage::BlackBerryInstallWizardOptionPage(BlackBerryI
void BlackBerryInstallWizardOptionPage::initializePage()
{
- m_installButton->setText(tr("Install a new target"));
- m_addButton->setText(tr("Add an existing target"));
+ m_installButton->setText(tr("Install New Target"));
+ m_addButton->setText(tr("Add Existing Target"));
if (m_data.mode == BlackBerryInstallerDataHandler::ManuallMode)
m_addButton->setChecked(true);
diff --git a/src/plugins/qnx/blackberrykeyswidget.cpp b/src/plugins/qnx/blackberrykeyswidget.cpp
index 31ded4630d0..8a3715279d3 100644
--- a/src/plugins/qnx/blackberrykeyswidget.cpp
+++ b/src/plugins/qnx/blackberrykeyswidget.cpp
@@ -83,7 +83,7 @@ void BlackBerryKeysWidget::certificateLoaded(int status)
case BlackBerryCertificate::Busy:
case BlackBerryCertificate::InvalidOutputFormat:
case BlackBerryCertificate::Error:
- setCertificateError(tr("Error loading certificate!"));
+ setCertificateError(tr("Error loading certificate."));
m_ui->openCertificateButton->setVisible(true);
break;
}
diff --git a/src/plugins/qnx/blackberrykeyswidget.ui b/src/plugins/qnx/blackberrykeyswidget.ui
index da510fff6eb..7d1db06b974 100644
--- a/src/plugins/qnx/blackberrykeyswidget.ui
+++ b/src/plugins/qnx/blackberrykeyswidget.ui
@@ -156,21 +156,21 @@
-
- Open certificate
+ Open Certificate
-
- Clear certificate
+ Clear Certificate
-
- Create certificate
+ Create Certificate
diff --git a/src/plugins/qnx/blackberryndksettingswidget.ui b/src/plugins/qnx/blackberryndksettingswidget.ui
index bb0fdd4339d..57d608b1a52 100644
--- a/src/plugins/qnx/blackberryndksettingswidget.ui
+++ b/src/plugins/qnx/blackberryndksettingswidget.ui
@@ -163,7 +163,7 @@
-
- Add
+ Add
diff --git a/src/plugins/qnx/blackberrysetupwizard.cpp b/src/plugins/qnx/blackberrysetupwizard.cpp
index 8c0427feb5e..43cc73a7c04 100644
--- a/src/plugins/qnx/blackberrysetupwizard.cpp
+++ b/src/plugins/qnx/blackberrysetupwizard.cpp
@@ -57,7 +57,7 @@ using namespace Qnx;
using namespace Qnx::Internal;
BlackBerrySetupWizard::BlackBerrySetupWizard(QWidget *parent) :
- QWizard(parent),
+ Utils::Wizard(parent),
m_ndkPage(0),
m_keysPage(0),
m_certificatePage(0),
diff --git a/src/plugins/qnx/blackberrysetupwizard.h b/src/plugins/qnx/blackberrysetupwizard.h
index e40530aff0d..a224ed6487c 100644
--- a/src/plugins/qnx/blackberrysetupwizard.h
+++ b/src/plugins/qnx/blackberrysetupwizard.h
@@ -32,12 +32,12 @@
#ifndef BLACKBERRYSETUPWIZARD_H
#define BLACKBERRYSETUPWIZARD_H
-#include
+#include
+#include
+
#include
#include
-#include
-
namespace QSsh {
class SshKeyGenerator;
}
@@ -57,7 +57,7 @@ class BlackBerryDebugTokenRequester;
class BlackBerryDebugTokenUploader;
class BlackBerrySigningUtils;
-class BlackBerrySetupWizard : public QWizard
+class BlackBerrySetupWizard : public Utils::Wizard
{
Q_OBJECT
public:
diff --git a/src/plugins/qnx/blackberrysigningutils.cpp b/src/plugins/qnx/blackberrysigningutils.cpp
index 646205ae3e8..9905d7515c1 100644
--- a/src/plugins/qnx/blackberrysigningutils.cpp
+++ b/src/plugins/qnx/blackberrysigningutils.cpp
@@ -85,7 +85,7 @@ bool BlackBerrySigningUtils::hasDefaultCertificate()
QString BlackBerrySigningUtils::cskPassword()
{
if (m_cskPassword.isEmpty())
- m_cskPassword = promptPassword(tr("Please provide your bbidtoken.csk PIN"));
+ m_cskPassword = promptPassword(tr("Please provide your bbidtoken.csk PIN."));
return m_cskPassword;
}
@@ -93,7 +93,7 @@ QString BlackBerrySigningUtils::cskPassword()
QString BlackBerrySigningUtils::certificatePassword()
{
if (m_certificatePassword.isEmpty())
- m_certificatePassword = promptPassword(tr("Please enter your certificate password"));
+ m_certificatePassword = promptPassword(tr("Please enter your certificate password."));
return m_certificatePassword;
}
diff --git a/src/plugins/qnx/cascadesimport/cascadesimportwizard.cpp b/src/plugins/qnx/cascadesimport/cascadesimportwizard.cpp
index ca8e05e27c8..3291e0c7623 100644
--- a/src/plugins/qnx/cascadesimport/cascadesimportwizard.cpp
+++ b/src/plugins/qnx/cascadesimport/cascadesimportwizard.cpp
@@ -78,7 +78,7 @@ CascadesImportWizardDialog::CascadesImportWizardDialog(QWidget *parent)
wizardProgress()->item(srcProjectPageId)->setTitle(tr("Momentics"));
const int destProjectPageId = addPage(m_destProjectPage);
- wizardProgress()->item(destProjectPageId)->setTitle(tr("QtCreator"));
+ wizardProgress()->item(destProjectPageId)->setTitle(tr("Qt Creator"));
connect(m_srcProjectPage, SIGNAL(validPathChanged(QString)), this, SLOT(onSrcProjectPathChanged(QString)));
}
@@ -120,7 +120,7 @@ CascadesImportWizard::CascadesImportWizard(QObject *parent)
setId(QLatin1String("Q.QnxBlackBerryCascadesApp"));
setRequiredFeatures(Core::FeatureSet(Constants::QNX_BB_FEATURE));
setDescription(tr("Imports existing Cascades projects created within QNX Momentics IDE. "
- "This allows you to use the project in QtCreator."));
+ "This allows you to use the project in Qt Creator."));
setCategory(QLatin1String(ProjectExplorer::Constants::IMPORT_WIZARD_CATEGORY));
setDisplayCategory(QLatin1String(ProjectExplorer::Constants::IMPORT_WIZARD_CATEGORY_DISPLAY));
}
@@ -143,7 +143,6 @@ QWizard *CascadesImportWizard::createWizardDialog(QWidget *parent,
const Core::WizardDialogParameters &wizardDialogParameters) const
{
CascadesImportWizardDialog *wizard = new CascadesImportWizardDialog(parent);
- setupWizard(wizard);
foreach (QWizardPage *p, wizardDialogParameters.extensionPages())
BaseFileWizard::applyExtensionPageShortTitle(wizard, wizard->addPage(p));
diff --git a/src/plugins/qnx/qnx.qbs b/src/plugins/qnx/qnx.qbs
index 5fdba888845..1a9af37cefb 100644
--- a/src/plugins/qnx/qnx.qbs
+++ b/src/plugins/qnx/qnx.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Qnx"
diff --git a/src/plugins/qnx/qnxdeviceconfigurationwizard.cpp b/src/plugins/qnx/qnxdeviceconfigurationwizard.cpp
index 01ef63389d0..f99480b6d91 100644
--- a/src/plugins/qnx/qnxdeviceconfigurationwizard.cpp
+++ b/src/plugins/qnx/qnxdeviceconfigurationwizard.cpp
@@ -44,7 +44,7 @@ using namespace Qnx;
using namespace Qnx::Internal;
QnxDeviceConfigurationWizard::QnxDeviceConfigurationWizard(QWidget *parent) :
- QWizard(parent)
+ Utils::Wizard(parent)
{
setWindowTitle(tr("New QNX Device Configuration Setup"));
diff --git a/src/plugins/qnx/qnxdeviceconfigurationwizard.h b/src/plugins/qnx/qnxdeviceconfigurationwizard.h
index 689fda13755..e8fc653940f 100644
--- a/src/plugins/qnx/qnxdeviceconfigurationwizard.h
+++ b/src/plugins/qnx/qnxdeviceconfigurationwizard.h
@@ -32,9 +32,8 @@
#ifndef QNX_INTERNAL_QNXDEVICECONFIGURATIONWIZARD_H
#define QNX_INTERNAL_QNXDEVICECONFIGURATIONWIZARD_H
-#include
-
#include
+#include
namespace RemoteLinux {
class GenericLinuxDeviceConfigurationWizardSetupPage;
@@ -44,7 +43,7 @@ class GenericLinuxDeviceConfigurationWizardFinalPage;
namespace Qnx {
namespace Internal {
-class QnxDeviceConfigurationWizard : public QWizard
+class QnxDeviceConfigurationWizard : public Utils::Wizard
{
Q_OBJECT
public:
diff --git a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp
index 1db0e0d0298..3e215d1a858 100644
--- a/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp
+++ b/src/plugins/qt4projectmanager/qt-desktop/qt4runconfiguration.cpp
@@ -438,7 +438,7 @@ bool Qt4RunConfiguration::fromMap(const QVariantMap &map)
m_parseSuccess = static_cast(target()->project())->validParse(m_proFilePath);
m_parseInProgress = static_cast(target()->project())->parseInProgress(m_proFilePath);
- return RunConfiguration::fromMap(map);
+ return LocalApplicationRunConfiguration::fromMap(map);
}
QString Qt4RunConfiguration::executable() const
diff --git a/src/plugins/qt4projectmanager/qt4projectmanager.qbs b/src/plugins/qt4projectmanager/qt4projectmanager.qbs
index 83f8c5bde20..16964a03620 100644
--- a/src/plugins/qt4projectmanager/qt4projectmanager.qbs
+++ b/src/plugins/qt4projectmanager/qt4projectmanager.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Qt4ProjectManager"
@@ -10,9 +10,7 @@ QtcPlugin {
Depends { name: "ProjectExplorer" }
Depends { name: "QtSupport" }
Depends { name: "CppTools" }
- Depends { name: "Debugger" }
Depends { name: "QmlJS" }
- Depends { name: "CPlusPlus" }
Depends { name: "TextEditor" }
Depends { name: "QmlJSTools" }
diff --git a/src/plugins/qtsupport/qtsupport.qbs b/src/plugins/qtsupport/qtsupport.qbs
index d6142bdcfc2..7c03c0052b7 100644
--- a/src/plugins/qtsupport/qtsupport.qbs
+++ b/src/plugins/qtsupport/qtsupport.qbs
@@ -1,7 +1,7 @@
import qbs.base 1.0
-import "../../../qbs/functions.js" as QtcFunctions
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcFunctions
+import QtcPlugin
QtcPlugin {
name: "QtSupport"
diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp
index 8ad502a052e..b54825f7103 100644
--- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp
+++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp
@@ -58,7 +58,7 @@ public:
} // namespace Internal
GenericLinuxDeviceConfigurationWizard::GenericLinuxDeviceConfigurationWizard(QWidget *parent)
- : QWizard(parent),
+ : Utils::Wizard(parent),
d(new Internal::GenericLinuxDeviceConfigurationWizardPrivate(this))
{
setWindowTitle(tr("New Generic Linux Device Configuration Setup"));
diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.h b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.h
index 2ca937fddbe..daefdc1eaa0 100644
--- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.h
+++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.h
@@ -32,15 +32,14 @@
#include "remotelinux_export.h"
#include
-
-#include
+#include
namespace RemoteLinux {
namespace Internal {
class GenericLinuxDeviceConfigurationWizardPrivate;
} // namespace Internal
-class REMOTELINUX_EXPORT GenericLinuxDeviceConfigurationWizard : public QWizard
+class REMOTELINUX_EXPORT GenericLinuxDeviceConfigurationWizard : public Utils::Wizard
{
Q_OBJECT
diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizardpages.cpp b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizardpages.cpp
index a64c3ba05eb..e23a3ff903d 100644
--- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizardpages.cpp
+++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizardpages.cpp
@@ -56,7 +56,7 @@ GenericLinuxDeviceConfigurationWizardSetupPage::GenericLinuxDeviceConfigurationW
QWizardPage(parent), d(new Internal::GenericLinuxDeviceConfigurationWizardSetupPagePrivate)
{
d->ui.setupUi(this);
- setTitle(tr("Connection Data"));
+ setTitle(tr("Connection"));
setSubTitle(QLatin1String(" ")); // For Qt bug (background color)
d->ui.privateKeyPathChooser->setExpectedKind(PathChooser::File);
d->ui.privateKeyPathChooser->setPromptDialogTitle(tr("Choose a Private Key File"));
@@ -153,7 +153,7 @@ void GenericLinuxDeviceConfigurationWizardSetupPage::handleAuthTypeChanged()
GenericLinuxDeviceConfigurationWizardFinalPage::GenericLinuxDeviceConfigurationWizardFinalPage(QWidget *parent)
: QWizardPage(parent), d(new Internal::GenericLinuxDeviceConfigurationWizardFinalPagePrivate)
{
- setTitle(tr("Setup Finished"));
+ setTitle(tr("Summary"));
setSubTitle(QLatin1String(" ")); // For Qt bug (background color)
d->infoLabel.setWordWrap(true);
QVBoxLayout * const layout = new QVBoxLayout(this);
diff --git a/src/plugins/remotelinux/remotelinux.qbs b/src/plugins/remotelinux/remotelinux.qbs
index 536e9bfcc84..87d3984733e 100644
--- a/src/plugins/remotelinux/remotelinux.qbs
+++ b/src/plugins/remotelinux/remotelinux.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "RemoteLinux"
diff --git a/src/plugins/resourceeditor/resourceeditor.qbs b/src/plugins/resourceeditor/resourceeditor.qbs
index 479b4b65529..bac08834000 100644
--- a/src/plugins/resourceeditor/resourceeditor.qbs
+++ b/src/plugins/resourceeditor/resourceeditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "ResourceEditor"
diff --git a/src/plugins/subversion/subversion.qbs b/src/plugins/subversion/subversion.qbs
index ed5571e47c0..d213ce0f776 100644
--- a/src/plugins/subversion/subversion.qbs
+++ b/src/plugins/subversion/subversion.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Subversion"
diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp
index 7e3d7fd1619..d41c1b24286 100644
--- a/src/plugins/subversion/subversionplugin.cpp
+++ b/src/plugins/subversion/subversionplugin.cpp
@@ -531,7 +531,7 @@ SubversionDiffParameterWidget::SubversionDiffParameterWidget(const SubversionDif
VcsBase::VcsBaseEditorParameterWidget(parent), m_parameters(p)
{
setBaseArguments(p.arguments);
- addToggleButton(QLatin1String("w"), tr("Ignore whitespace"));
+ addToggleButton(QLatin1String("w"), tr("Ignore Whitespace"));
connect(this, SIGNAL(argumentsChanged()), this, SLOT(triggerReRun()));
}
diff --git a/src/plugins/tasklist/tasklist.qbs b/src/plugins/tasklist/tasklist.qbs
index f6b68ed869d..8374262e75b 100644
--- a/src/plugins/tasklist/tasklist.qbs
+++ b/src/plugins/tasklist/tasklist.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "TaskList"
diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index 9ba6c45b12e..06d6e6401e0 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -6010,7 +6010,6 @@ void BaseTextEditorWidget::insertFromMimeData(const QMimeData *source)
d->m_snippetOverlay->clear();
}
- const TabSettings &ts = d->m_document->tabSettings();
const TypingSettings &tps = d->m_document->typingSettings();
QTextCursor cursor = textCursor();
if (!tps.m_autoIndent) {
@@ -6024,7 +6023,7 @@ void BaseTextEditorWidget::insertFromMimeData(const QMimeData *source)
cursor.beginEditBlock();
cursor.removeSelectedText();
- bool insertAtBeginningOfLine = ts.cursorIsAtBeginningOfLine(cursor);
+ bool insertAtBeginningOfLine = TabSettings::cursorIsAtBeginningOfLine(cursor);
if (insertAtBeginningOfLine
&& source->hasFormat(QLatin1String(kTextBlockMimeType))) {
diff --git a/src/plugins/texteditor/behaviorsettingswidget.ui b/src/plugins/texteditor/behaviorsettingswidget.ui
index 60ea6a35cd8..324313b74af 100644
--- a/src/plugins/texteditor/behaviorsettingswidget.ui
+++ b/src/plugins/texteditor/behaviorsettingswidget.ui
@@ -11,7 +11,16 @@
-
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
0
-
@@ -342,15 +351,41 @@ Specifies how backspace interacts with indentation.
-
-
-
-
-
-
- Show help tooltips:
+
+
+ Press Alt to display context-sensitive help or type information as tooltips.
+
+
+ Show help tooltips using keyboard shortcut (Alt)
+
+
+
+ -
+
+
+ Show help tooltips using the mouse:
+
+
+
+ -
+
+
-
+
+
+ Qt::Horizontal
-
+
+ QSizePolicy::Fixed
+
+
+
+ 30
+ 20
+
+
+
- -
+
-
-
@@ -364,8 +399,8 @@ Specifies how backspace interacts with indentation.
- -
-
+
-
+
Qt::Horizontal
@@ -377,16 +412,6 @@ Specifies how backspace interacts with indentation.
- -
-
-
- Press Alt to display context-sensitive help or type information as tooltips.
-
-
- Using keyboard shortcut (Alt)
-
-
-
diff --git a/src/plugins/texteditor/codeassist/functionhintproposal.cpp b/src/plugins/texteditor/codeassist/functionhintproposal.cpp
index 226d50308b7..0a46436b91b 100644
--- a/src/plugins/texteditor/codeassist/functionhintproposal.cpp
+++ b/src/plugins/texteditor/codeassist/functionhintproposal.cpp
@@ -43,7 +43,7 @@ FunctionHintProposal::~FunctionHintProposal()
bool FunctionHintProposal::isFragile() const
{
- return true;
+ return false;
}
int FunctionHintProposal::basePosition() const
diff --git a/src/plugins/texteditor/texteditor.qbs b/src/plugins/texteditor/texteditor.qbs
index cf5e4b68e62..5f0505c6eb6 100644
--- a/src/plugins/texteditor/texteditor.qbs
+++ b/src/plugins/texteditor/texteditor.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "TextEditor"
diff --git a/src/plugins/todo/todo.qbs b/src/plugins/todo/todo.qbs
index ee29a494626..d316c081c61 100644
--- a/src/plugins/todo/todo.qbs
+++ b/src/plugins/todo/todo.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Todo"
diff --git a/src/plugins/updateinfo/updateinfo.qbs b/src/plugins/updateinfo/updateinfo.qbs
index a2e15ec828f..ad9f0ede4bb 100644
--- a/src/plugins/updateinfo/updateinfo.qbs
+++ b/src/plugins/updateinfo/updateinfo.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "UpdateInfo"
diff --git a/src/plugins/valgrind/valgrind.qbs b/src/plugins/valgrind/valgrind.qbs
index a0e758ab499..7011248e45d 100644
--- a/src/plugins/valgrind/valgrind.qbs
+++ b/src/plugins/valgrind/valgrind.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Valgrind"
diff --git a/src/plugins/vcsbase/checkoutwizarddialog.cpp b/src/plugins/vcsbase/checkoutwizarddialog.cpp
index 49e2f25d0ef..091624aec3b 100644
--- a/src/plugins/vcsbase/checkoutwizarddialog.cpp
+++ b/src/plugins/vcsbase/checkoutwizarddialog.cpp
@@ -51,14 +51,12 @@ CheckoutWizardDialog::CheckoutWizardDialog(const QList ¶meter
m_progressPage(new CheckoutProgressWizardPage),
m_progressPageId(-1)
{
- setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint);
foreach (QWizardPage *wp, parameterPages)
addPage(wp);
m_progressPageId = parameterPages.size();
setPage(m_progressPageId, m_progressPage);
connect(this, SIGNAL(currentIdChanged(int)), this, SLOT(slotPageChanged(int)));
connect(m_progressPage, SIGNAL(terminated(bool)), this, SLOT(slotTerminated(bool)));
- Core::BaseFileWizard::setupWizard(this);
}
void CheckoutWizardDialog::setTitle(const QString &title)
diff --git a/src/plugins/vcsbase/vcsbase.qbs b/src/plugins/vcsbase/vcsbase.qbs
index c901d3d9a18..ff0b5ce8e8b 100644
--- a/src/plugins/vcsbase/vcsbase.qbs
+++ b/src/plugins/vcsbase/vcsbase.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "VcsBase"
diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
index 2f30cc16462..322f64c2ba3 100644
--- a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
+++ b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp
@@ -234,9 +234,11 @@ VcsBaseSubmitEditor::VcsBaseSubmitEditor(const VcsBaseSubmitEditorParameters *pa
connect(VcsPlugin::instance(),
SIGNAL(settingsChanged(VcsBase::Internal::CommonVcsSettings)),
this, SLOT(slotUpdateEditorSettings(VcsBase::Internal::CommonVcsSettings)));
+ // Commit data refresh might lead to closing the editor, so use a queued connection
connect(Core::EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)),
- this, SLOT(slotRefreshCommitData()));
- connect(Core::ICore::mainWindow(), SIGNAL(windowActivated()), this, SLOT(slotRefreshCommitData()));
+ this, SLOT(slotRefreshCommitData()), Qt::QueuedConnection);
+ connect(Core::ICore::mainWindow(), SIGNAL(windowActivated()),
+ this, SLOT(slotRefreshCommitData()), Qt::QueuedConnection);
Aggregation::Aggregate *aggregate = new Aggregation::Aggregate;
aggregate->add(new Find::BaseTextFind(descriptionEdit));
diff --git a/src/plugins/welcome/welcome.qbs b/src/plugins/welcome/welcome.qbs
index 8cde310ec98..70fd6cc691f 100644
--- a/src/plugins/welcome/welcome.qbs
+++ b/src/plugins/welcome/welcome.qbs
@@ -1,6 +1,6 @@
import qbs.base 1.0
-import "../QtcPlugin.qbs" as QtcPlugin
+import QtcPlugin
QtcPlugin {
name: "Welcome"
diff --git a/src/qtcreatorplugin.pri b/src/qtcreatorplugin.pri
index 811227bbc20..c243fa11801 100644
--- a/src/qtcreatorplugin.pri
+++ b/src/qtcreatorplugin.pri
@@ -92,7 +92,7 @@ copy2build.input = PLUGINSPEC
isEmpty(vcproj):copy2build.variable_out = PRE_TARGETDEPS
copy2build.commands = $$QMAKE_COPY ${QMAKE_FILE_IN} ${QMAKE_FILE_OUT}
copy2build.name = COPY ${QMAKE_FILE_IN}
-copy2build.CONFIG += no_link
+copy2build.CONFIG += no_link no_clean
QMAKE_EXTRA_COMPILERS += copy2build
greaterThan(QT_MAJOR_VERSION, 4) {
diff --git a/src/shared/qbs b/src/shared/qbs
index e0d292b0804..436027d7ae9 160000
--- a/src/shared/qbs
+++ b/src/shared/qbs
@@ -1 +1 @@
-Subproject commit e0d292b08046c5a257b23cd45a7bebe0849bc42c
+Subproject commit 436027d7ae9c7ff1732caca36c6f11161b80c4cc
diff --git a/src/tools/3rdparty/iossim/iossim.qbs b/src/tools/3rdparty/iossim/iossim.qbs
index 5d77d9f1891..eab1a9969d6 100644
--- a/src/tools/3rdparty/iossim/iossim.qbs
+++ b/src/tools/3rdparty/iossim/iossim.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
diff --git a/src/tools/iostool/iostool.qbs b/src/tools/iostool/iostool.qbs
index d0ed9ff9d52..b893b61711c 100644
--- a/src/tools/iostool/iostool.qbs
+++ b/src/tools/iostool/iostool.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "iostool"
diff --git a/src/tools/qtcdebugger/qtcdebugger.qbs b/src/tools/qtcdebugger/qtcdebugger.qbs
index 284ad71118e..1895eb917fe 100644
--- a/src/tools/qtcdebugger/qtcdebugger.qbs
+++ b/src/tools/qtcdebugger/qtcdebugger.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "qtcdebugger"
diff --git a/src/tools/qtcreatorcrashhandler/qtcreatorcrashhandler.qbs b/src/tools/qtcreatorcrashhandler/qtcreatorcrashhandler.qbs
index 4b5a4910cc6..2bd9b70d383 100644
--- a/src/tools/qtcreatorcrashhandler/qtcreatorcrashhandler.qbs
+++ b/src/tools/qtcreatorcrashhandler/qtcreatorcrashhandler.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "qtcreator_crash_handler"
diff --git a/src/tools/qtpromaker/qtpromaker.qbs b/src/tools/qtpromaker/qtpromaker.qbs
index 7c441d8fec7..b23fb9f0ae7 100644
--- a/src/tools/qtpromaker/qtpromaker.qbs
+++ b/src/tools/qtpromaker/qtpromaker.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "qtpromaker"
diff --git a/src/tools/sdktool/sdktool.qbs b/src/tools/sdktool/sdktool.qbs
index a8ea1aae1fb..019df95b872 100644
--- a/src/tools/sdktool/sdktool.qbs
+++ b/src/tools/sdktool/sdktool.qbs
@@ -1,5 +1,5 @@
import qbs.base 1.0
-import "../QtcTool.qbs" as QtcTool
+import QtcTool
QtcTool {
name: "sdktool"
diff --git a/tests/auto/cplusplus/ast/tst_ast.cpp b/tests/auto/cplusplus/ast/tst_ast.cpp
index f97b47a82e7..329662892e8 100644
--- a/tests/auto/cplusplus/ast/tst_ast.cpp
+++ b/tests/auto/cplusplus/ast/tst_ast.cpp
@@ -152,6 +152,10 @@ private slots:
void cpp_constructor_multiple_args();
void cpp_constructor_function_try_catch();
+ // Q_PROPERTY
+ void cpp_qproperty();
+ void cpp_qproperty_data();
+
// objc++
void objc_simple_class();
void objc_attributes_followed_by_at_keyword();
@@ -1235,6 +1239,39 @@ void tst_AST::cpp_constructor_function_try_catch()
QVERIFY(funDecl->parameter_declaration_clause->parameter_declaration_list != 0);
}
+void tst_AST::cpp_qproperty()
+{
+ QFETCH(QByteArray, source);
+ QVERIFY(!source.isEmpty());
+
+ const QByteArray sourceWithinClass = "class C { " + source + " };";
+ QSharedPointer unit(parseDeclaration(sourceWithinClass, false, true));
+ QVERIFY(unit->ast());
+
+ QCOMPARE(diag.errorCount, 0);
+}
+
+void tst_AST::cpp_qproperty_data()
+{
+ QTest::addColumn("source");
+
+ QTest::newRow("read-final")
+ << QByteArray("Q_PROPERTY(bool focus READ hasFocus FINAL)");
+ QTest::newRow("read-write-final")
+ << QByteArray("Q_PROPERTY(bool focus READ hasFocus WRITE setFocus FINAL)");
+ QTest::newRow("member-final")
+ << QByteArray("Q_PROPERTY(bool focus MEMBER m_focus FINAL)");
+ QTest::newRow("member-read-final")
+ << QByteArray("Q_PROPERTY(bool focus MEMBER m_focus READ m_focus FINAL)");
+ QTest::newRow("member-read-write-final")
+ << QByteArray("Q_PROPERTY(bool focus MEMBER m_focus READ hasFocus WRITE setFocus FINAL)");
+
+ QTest::newRow("all")
+ << QByteArray("Q_PROPERTY(bool focus MEMBER m_focus READ hasFocus WRITE setFocus"
+ " RESET resetFocus NOTIFY focusChanged REVISION 1 DESIGNABLE true"
+ " SCRIPTABLE true STORED true USER true CONSTANT FINAL)");
+}
+
void tst_AST::objc_simple_class()
{
QSharedPointer unit(parseDeclaration("\n"
diff --git a/tests/auto/extensionsystem/plugin.qbs b/tests/auto/extensionsystem/plugin.qbs
index 652fa19fb43..829ed3a6de9 100644
--- a/tests/auto/extensionsystem/plugin.qbs
+++ b/tests/auto/extensionsystem/plugin.qbs
@@ -1,7 +1,7 @@
import qbs
import qbs.FileInfo
import "./copytransformer.qbs" as CopyTransformer
-import "../../../qbs/functions.js" as QtcFunctions
+import QtcFunctions
DynamicLibrary {
Depends { name: "Aggregation" }
diff --git a/tests/auto/qml/qmldesigner/coretests/tst_testcore.cpp b/tests/auto/qml/qmldesigner/coretests/tst_testcore.cpp
index b0d52e833d8..d48ca4d0b00 100644
--- a/tests/auto/qml/qmldesigner/coretests/tst_testcore.cpp
+++ b/tests/auto/qml/qmldesigner/coretests/tst_testcore.cpp
@@ -1111,7 +1111,7 @@ void tst_TestCore::testModelCreateSubNode()
try {
childNode.setId("invalid id");
- QFAIL("Setting an invalid id does not throw an excxeption");
+ QFAIL("Setting an invalid id does not throw an exception");
} catch (Exception &exception) {
QCOMPARE(exception.type(), QString("InvalidIdException"));
}