Commit Graph

50929 Commits

Author SHA1 Message Date
Orgad Shaneh
f7bd558883 Gerrit: Simplify query context
Run only a single query per context.

Change-Id: Icf86e06ab60f8d74ab1de092c6c7e41570423d2e
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-15 10:04:35 +00:00
Alexander Drozdov
bc46ba11ee CMake: fix crash on project close during active file system scanning
TreeScanner uses callbacks that can refers to the destroyed objectes
when project closing.

Found scenario:
1. Open big CMake-based project (CLang/LLVM good choose).
2. Until file system scanning finished switch to another session.

Change-Id: Ia0f55f38aea6a9d07ca81aee6c9e9c5662d74f3a
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-15 09:55:39 +00:00
Orgad Shaneh
336adaa604 GerritDialog: Support multiple remotes
Still SSH only for now...

Change-Id: I9b007253bcf6c65d4d44a3ad5792ea1e886707d0
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-15 09:55:37 +00:00
hjk
75194a06e6 Debugger: Add {Expand,Collapse} Children item
To the Locals and Expressions context menu. This is useful
to have when expanding larger containers of structs where
the struct has no particular dumper and the address alone
is not really useful.

Change-Id: I2ddb4ca0ae32afb7efe63aee08551314db7a3b59
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-15 09:44:33 +00:00
hjk
e051c9c28b Debugger: Trim user startup command input before usage
No need to push empty lines etc.

Change-Id: I16862e9cc1fe19ced1000a954c71a4044ed9d0ac
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-15 09:27:31 +00:00
hjk
bccda22cce ProjectExplorer: Add a way to iterate over the node tree
Similar to what is used in Utils::TreeModel: Use lambdas
as "visitor".

Change-Id: Ia6e1a7ec022b61f94b01e1e8476bb932d22fd161
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-02-15 09:27:20 +00:00
Thomas Hartmann
59def6fcf3 QmlDesigner: Prepare new actions for toolbar
The color tool can serve as a first example.

Change-Id: Ic801e7b5f50575cf970753f2dd95010bbd9f63d3
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 09:10:41 +00:00
Tobias Hunger
13d71a9f6b qmake: Use logging category instead of debug enum
Change-Id: I4f8718656453a3a369780fb555f33235d652a0e8
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-15 09:03:16 +00:00
Tobias Hunger
eaaf9522c6 qmake: remove some unnecessary members from QmakeParserPriFileNode
Replace them with member functions providing the same information.

Change-Id: If65bb99c77df0f80562b4559914f4b81ab17a166
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-15 09:03:08 +00:00
Tobias Hunger
671e1626da qmake: QmakeParserPriFileNode: Use unique_ptr
Use unique_ptr to hold the QmakePriFileDocument. That makes
it clearer that QmakePriFileNode owns it.

Change-Id: Ia31778ad2a9d33a13cf818d3bcad0485ebfa2043
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-15 09:03:03 +00:00
Tobias Hunger
e376424b33 qmake: Rename QmakeParserPriFile to QmakePriFileDocument
Makes it clearer what that actually is.

Change-Id: I2b50deba53ae5cef2bf1a30b9497c1867559e1e9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-15 09:02:58 +00:00
Tobias Hunger
528b5f2298 qmake: Use enums from Qmake*File over those in Qmake*FileNode
Use QmakeParserProFileNode::AsyncUpdateDelay instead of
QmakeParserProFileNode::AsyncUpdateDelay.

Change-Id: I6628e566ce0f289778d61d146df58ca31345cdd7
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 09:02:52 +00:00
Christian Kandeler
8c6021ef7e QbsProjectManager: Add widget for setting the install root
... in the build settings. This makes it much easier for users to
properly set the installation directory. In turn, remove the dedicated
install step, which does not know about qbs.installRoot and has not had
sensible functionality ever since that property was introduced.

Task-number: QTCREATORBUG-17198
Change-Id: Id968672f4365e75da437f73ec15bb5e32599bda3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-02-15 09:00:00 +00:00
Thomas Hartmann
feac26d1c6 QmlDesigner: Add action to add a tab bar to a stacked container
Change-Id: I1b8c0b05c29b41863248ee48d02460a9f3cffd56
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 08:51:18 +00:00
David Schulz
e0fd62afef Debugger: Fix compiling dumper tests without profile on windows
Change-Id: I2260678a77fde5eb0599cdec2e52f12f63cf0fcd
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-02-15 08:47:31 +00:00
Thomas Hartmann
c851b2f098 QmlDesigner: If a stacked container has a tab bar also add tab button
If a stacked container has a tab bat, then we also add a tab button,
if an item is added.

Change-Id: I7121ba73c4b70c58349749c9372bd69d53237b89
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 08:41:46 +00:00
Thomas Hartmann
234643fcb7 QmlDesigner: Take TabBar etc. into account when setting index
It is quite typical that the index of a stacked container is bound to
e.g. a TabBar (currentIndex: tabBar.currentIndex).
This code resolves this simple case.
We show an error message if there is a more complex expression,
that the designer does not understand.

Change-Id: Ifdc81d186d6352864a0c224324dbac9a22d73780
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 08:38:32 +00:00
Thomas Hartmann
4e41650b59 QmlDesigner: Implementing actions for stacked container
* Adding action for adding item
* Adding action for decreasing index
* Adding action for increasing index

User visible strings for the actions are defined in:
componentcore_constants.h

The name of the index property is given by a hint in the .metainfo file.
If there is no hint we try "index" and "currentIndex".

This is tested with StackedLayout but should work with similar
containers like SwipeView.

Change-Id: Ief1b4206db1950130bcb0edcbd61885b3ec9d8b0
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-15 08:35:58 +00:00
Christian Stenger
62fd9bab5c QMakePM: Fix qbs build
Change-Id: I78450a3afc155650a9a10755bf1e74523064caa4
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-02-15 08:21:34 +00:00
Tobias Hunger
b697fd0db4 qmake: Use Variable enum consistently
Change-Id: I89588f12600f0698de764c05c1930b13b53a2588
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:40:16 +00:00
Tobias Hunger
086733a2c9 qmake: Use ProjectType enum consistently
Change-Id: I633a7150202fcbf420a33b4173d2b4451f46eb11
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:40:11 +00:00
Tobias Hunger
1878ff40ac qmake: Fix WS
Change-Id: I15f64b8c773446e7d1d3a980c9215f710b095ad9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:40:04 +00:00
Tobias Hunger
20e86c810e qmake: Introduce QMakeParserNodes
Introduce QmakeParser*FileNodes by copying Qmake*FileNodes and renaming
things so that nothing conflicts and both sets of Nodes can be built at
the same time.

The goal of this patchset is to disentangle the project parsing from the
project structure as shown in the project tree.

Change-Id: I4e7383b71849ed4de15d29a45c9b249aa2319a27
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:39:47 +00:00
Tobias Hunger
568130da70 ProjectExplorer: Add FolderNode::compress
Add a method to FolderNode that compresses a tree of folders like
A/B/C/file.txt into one FolderNode (A/B/C) and a FileNode (file.txt)

Change-Id: I5efa038c33b91ea01017269daa048ba101085d01
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:39:36 +00:00
Tobias Hunger
0b6eb21388 QmakeProject: Fix CentralFolderWatcher
Make the loop actually iterate over something:-)

Change-Id: I9e7ff40c3e5c3860a99bca15e381c1e12eed4d51
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 15:39:29 +00:00
Vikas Pachdha
b2a33d3118 iOS: Extend the information cached for simulator
Change-Id: Ia2bc421b2af7d1e82d48bbd9d7914f177fef30d0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-02-14 14:57:20 +00:00
Tobias Hunger
c888989a41 ProjectExplorer: Improve FolderNode::buildTree
Treat absolute paths more intelligently in FolderNode::buildTree: Add
them with their absolute paths instead of endless sequences of ..

Change-Id: I9d644588f91f1792f997dedfb20e68d210b9cf73
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 14:40:28 +00:00
Tobias Hunger
bfa456072c qmakeProject: Use nullptr
Change-Id: Idad0ace2ae264beff29864cb20cb1a7b67d16ac6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-14 14:39:43 +00:00
Eike Ziller
58249104ad Merge "Merge remote-tracking branch 'origin/4.2'" 2017-02-14 14:38:53 +00:00
Nikolai Kosjar
93672fda2d Tests: Define SRCDIR for clang static analyzer tests only where necessary
Only the test clangstaticanalyzerlogfilereader makes use of that.

Change-Id: I5761ed023eab1b03dbb276d1798163fd2fb81e3d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-14 14:34:13 +00:00
Tobias Hunger
e98f5ae226 QmakeProject: Remove some debugging code
Change-Id: Ia4266d568074023edfe40177e1e6a35186d935dd
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-02-14 14:33:13 +00:00
Eike Ziller
e724934393 Merge remote-tracking branch 'origin/4.2'
Conflicts:
	doc/src/qtquick/creator-tutorial-create-qq-project.qdocinc
	doc/src/qtquick/qtquick-creating.qdoc
	doc/src/qtquick/qtquick-uiforms-tutorial.qdoc
	share/qtcreator/welcomescreen/qtcreator_tutorials.xml
	src/plugins/git/gitgrep.cpp
	src/shared/qbs

Change-Id: I6f4d168d888d9547c3af0819f79cc9ebb4186ca0
2017-02-14 15:32:04 +01:00
Nikolai Kosjar
5094cfe019 UnitTest: Replace "included File" with "header"
Change-Id: I30799e116a794e041c833d76c6cd969ba1a428bf
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 13:48:17 +00:00
Nikolai Kosjar
e06030d56f Tests: Fix crashing clangstaticanalyzerrunner test
...due to a not set master temporary directory.

Change-Id: I6668209e9b724f6560331f683b63e1c41616f060
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-14 13:04:09 +00:00
Robert Loehning
0115cc3103 Squish: Use cdb from Windows 10 kit
Change-Id: I7e30848f583fd767bf6ad8a4accac7df41ce9167
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-02-14 13:02:15 +00:00
Nikolai Kosjar
da1f1326f2 UnitTests: Remove unused function
Change-Id: I580a016ec8567505374e6fc2b0ebbba454ebc192
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-02-14 09:47:33 +00:00
Eike Ziller
23a3471ee8 macOS: Fix build issue with Qt 5.6
std::future is disabled when compiling with target 10.7, so
we need to enforce 10.8 when building against Qt 5.6 which has
default deployment target 10.7

Change-Id: I8d7b2646d0fb5268f82f5e01dae1f7e40a80bb8b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-02-14 08:36:51 +00:00
Leena Miettinen
37891d92bc Doc: Remove Qt Quick UI Forms example and tutorial
It uses types that do not exist in Qt Quick Controls 2, and
Qt Creator version 4.3 no longer has a wizard for using the
older controls.

Change-Id: I42884ca75eefe957493fcb47d6b243a93341b79c
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-02-14 07:50:51 +00:00
Orgad Shaneh
4253588b96 Gerrit: Replace 0 with nullptr
Change-Id: I5e644c36ddd8a018dc2c8a3170e3d556d0ebefee
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2017-02-13 21:24:22 +00:00
Orgad Shaneh
0fbe2a125b Gerrit: Use short user name for marking owned changes
Gerrit provides this data. There's no reason to wait for the query's
result to determine who I am.

Change-Id: Icd0f08fd08cf428dfbadf88224ae21bd4dbc207f
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2017-02-13 21:24:14 +00:00
Alessandro Portale
9402ddb1e1 QmlDesigner: Fix initial Ctrl+Mouse zoom
The initial m_currentComboBoxIndex was wrong. Initial Zoom-in
jumped to 50% instead of to 125%.

Change-Id: Id090e60322a30e7d4b345fa7b8cd1a7be399fdf1
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-02-13 17:44:27 +00:00
Thomas Hartmann
64c0cf58a1 QmlDesigner: Improve selection
When an item in a stacked container is selected,
then select the container instead.
Usually the user is not interested in the contaienr items.
They can still be selected in the navigator.

Change-Id: I4d2d7d3d84d40520a91c71c5fc05c815c50d38a2
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 16:35:35 +00:00
Thomas Hartmann
6459fbb983 QmlDesigner: Refine painting of place holder
Generally painting the place holder for invisble items makes
sense.
The logic is different for items stacked containers,
since those are overlapping and we are only interested
in the current visible one.
Also it does not make sense to paint the placeholder if already
the parent is invisible, since this just creates noise.

The logic is now more complex, but the usabilty increases significantly.


Change-Id: Ia25f2877c79cace475f0b99fd11ebd242c96e4bb
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 16:33:50 +00:00
Thomas Hartmann
fb14b4a6c8 QmlDesigner: Allow qsTranslate in .ui.qml files
Also adding the NoOp functions. They can be used in models.

Task-number: QTCREATORBUG-17714
Change-Id: Ide9745613850580f0098d2fa7f8889809d18bd45
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-02-13 16:01:11 +00:00
Thomas Hartmann
969fedc2d2 QmlDesigner: Update ActionManageView first
This ensures that the actions are always updated first,
before all other views.
This is important in cases where actions are used in the
form editor.

Change-Id: I249817d9583db95f77fb56547abd0a68007b566b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 15:59:00 +00:00
Thomas Hartmann
0f4f068368 QmlDesigner: Add AbstractProperty::exists()
Since a valid property might not exist in the model (no explicit value),
it is useful to have this simple helper function.

Change-Id: I161238fc53186458f1e5157c83b1216b855587f6
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 15:58:47 +00:00
Thomas Hartmann
45e4bf73ec QmlDesigner: Fix expression parser for node hints
Literals seem to evaluate to an error.
If there is an error we just return the expression
which is likely a literal.

Change-Id: I38204573a31dd85de0c906954415f48ce5bace31
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 15:58:37 +00:00
Thomas Hartmann
f6691a8743 QmlDesigner: MoveManipulator::reparentTo refine behaivour
There is special logic to prefer layouts as parents.
This makes total sense, but comes in the way if the
grand parent is e.g. a stack layout.
Using hints to determine these cases.

Change-Id: Ie93c3f99e851cf319e888cbdb8868272da53b946
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-02-13 15:58:05 +00:00
Nikolai Kosjar
340063c624 Clang: Use Utils::TemporaryDirectory
Task-number: QTCREATORBUG-17401
Change-Id: Ibf6007455ec92b1d9fcac17e1f3b5e2af21b7438
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2017-02-13 15:21:04 +00:00
Leena Miettinen
6e87ebfe83 Doc: Setting qsTrId() call as default in Qt Quick Designer options
Change-Id: I36f696ea00f87787094d01423ef6308d208012a7
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-02-13 12:44:41 +00:00