Commit Graph

44349 Commits

Author SHA1 Message Date
Tobias Hunger
468695c30a ProjectExplorer: Add CurrentRun:Env to the MacroExpander
Make RunConfigurations provide %{CurrentRun:Env:VARNAME} via the
macro expander infrastructure.

Change-Id: Ibf2d9d507294f0bc9a51a1521884b364e0c7955d
Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 15:41:07 +00:00
Tobias Hunger
4672624bdc ProjectExplorer: Add CurrentBuild:Env to the MacroExpander
Make BuildConfigurations provide %{CurrentBuild:Env:VARNAME} via the
macro expander infrastructure.

Change-Id: I1bed8c6aa9003c361a07fa69a5a3840f7a4e0d17
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 15:40:56 +00:00
Tobias Hunger
fcc9ccaf6e Report better projectFileName to ProjectPart
Change-Id: I6ebf030869db7b6ce66eecce313524d8c56df259
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 14:53:23 +00:00
Tobias Hunger
36a49ed103 CMake: Set project file information (when available)
Change-Id: I854a0207bd8568bc8f324840cba52dfb3ca880e9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 14:53:06 +00:00
Tobias Hunger
0656370976 WS-only change
Change-Id: I6140e77735fdb57f6811f73ccf7061eabe7f1d4b
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-27 13:38:37 +00:00
Tobias Hunger
eb1748944f CustomexecutableRunConfiguration: Polish a bit
Change-Id: Ia9b365f52c13cbb2654bef8f38162578bcb143ae
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 13:36:47 +00:00
Tim Jenssen
46f22b58c1 QmlDesigner: remove unnecessary updateActions call
- Core::DesignMode::actionsUpdated comes first

Change-Id: Iaa574872dd75dbbddd9933e496f2b836b782e63e
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-01-27 13:17:11 +00:00
Tim Jenssen
946d66b500 QmlDesigner: refactor setup/integration code
- moved switchTextFormAction to shortcut manager
 - renamed createDesignModeWidget
 - remove unncessary DesignerSettingsKey::TEXTEDIT_IN_DESIGNMODE
   (supporting it in future would be too much effort)
 - using delayed registration inside QtCreator
   (which does not bring more speed, but more time for the codemodel
    in case of opening a qml.ui file directly)

Change-Id: I1fd05f161e4bf4659c5a2fb09705b1f67d6f8e36
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-01-27 13:17:05 +00:00
Tim Jenssen
6b3df52690 QmlDesigner: avoid temp QList
Change-Id: I9eb5cc5a3e5527308a4371bc2b6add47d1b3ed7f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-01-27 13:16:57 +00:00
Tim Jenssen
acbd85388c put debug Context operator where it belongs
Change-Id: I2f38d670a10bbc37c7a62432a1780ede53835160
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 13:13:01 +00:00
David Schulz
eaf60c13e8 Debugger: Reset released symbol group to nullptr
Change-Id: I2d70687d35b5beb1954132203ea9826c7943f715
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-27 12:53:51 +00:00
Christian Kandeler
8d51ba3609 Update qbs submodule
To HEAD of 1.7 branch.

Change-Id: Ia643f577e1a1c00082b57cd7d297f6917910fab5
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-01-27 12:42:38 +00:00
Christian Kandeler
5b67e4de94 QbsProjectManager: Profile some operations
We want to know how much time the various update functions take that run
after a qbs job has finished.

Change-Id: I1bc6d1287108e5d70d15b41f2b544b22e2315a88
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-01-27 12:03:54 +00:00
Christian Kandeler
9d590333df Update qbs submodule
To HEAD of master branch.

Change-Id: Ia5bded717da4154debe4b5e7af916e383ce5a649
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2017-01-27 12:03:23 +00:00
Alessandro Portale
01ebf1bd7c Icon exporter script: Adapt to Inkscape 0.92's new dpi
Export with 96/192 dpi in order to get expected pixel sizes.

From now on, minimal Inkscape 0.92 is required!

Change-Id: I0cd0548bc64a23c66efe8325cff99a38b55ed90f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-01-27 09:36:53 +00:00
Alessandro Portale
6c682f4570 Utils: move pan icon from scxml to utils
It will also be used in Qt Quick Designer

Change-Id: Id4e16f417c5faf8baf9437c0d4845397f3ddb4fc
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2017-01-27 09:36:11 +00:00
Tim Jenssen
d46857c2ec QmlDesigner: Clean singleton implementation
this new implementation is thread safe and does not leak.

Change-Id: Ia37be10eea9cb36154bf5884e94935ac5ea2665e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-27 09:35:02 +00:00
hjk
1ce6cfd809 CMakeProjectManager: Simplify creation of virtual folders
Change-Id: I781c0f6551ca01feaf1cc0fc1148a151777f91bf
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-27 08:40:50 +00:00
hjk
87304b3ce0 ProjectExplorer: Introduce some FolderNode convenience functions
... and use them.

Change-Id: I9f5237e5eac30715c2effbd3301dd2a70516d2a9
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-27 08:40:20 +00:00
Christian Stenger
8427932a0e AutoTest: Fix enabled state of Edit/Remove filter buttons
Change-Id: I5f7367c2198d64d0cc4db48d636bfe3491df72e0
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-27 08:38:31 +00:00
Oswald Buddenhagen
0909426420 fix/hack deployment of qt examples
qt assumes that it is being installed (possibly into an install root),
not deployed, and leaves the translation of host paths to device paths
to the deploying agent - which is qt creator.

Task-number: QTCREATORBUG-17466
Change-Id: If9065b1079df607732e0f81132f29dbaf18ff602
Started-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-01-26 16:55:36 +00:00
Oswald Buddenhagen
99714239b6 fix usage of qt deployment paths
QT_INSTALL_*/dev properties have been added to qmake a while ago.
catch up with that.

Change-Id: I2bda68a1d4700c762a3d12600ac6aba123d4d0f8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 16:55:08 +00:00
hjk
19c1161e5d CMakeProject: Remove a few unneded declarations
Change-Id: Ida5afcfb502756c45b58ab6600b2ff98329139dc
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 15:39:59 +00:00
hjk
f12fb1496f CMakeProject: Simplify tree generation helper function
The sets of used nodes are not needed anymore.

Change-Id: I308fa140779f8a108fa23907f0959cf35100d67f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 15:25:55 +00:00
hjk
beaba559a5 ProjectExplorer: Slim down user side ProjectNode handling
Change-Id: If727ff6cd09cc127e031c49c47f61ffda631a80e
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 15:24:57 +00:00
Filipe Azevedo
28fd07e95a Add api to get some debugger state about engines
That’s needed for GammaRay integration.

Change-Id: I67a5dba81fa8d88024395126c45d0a3e9cfdd457
Reviewed-by: hjk <hjk@qt.io>
2017-01-26 14:00:12 +00:00
Filipe Azevedo
6bcc657adb Add api to get running run controls pids
That’s needed for GammaRay integration.

Change-Id: Ia3f4300299cd8792ec0a370f7ab3e30c9ad634bc
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 13:59:45 +00:00
Marco Benelli
f00e629227 SCXML editor: fix crash on pressing copy/cut
QtCreator used to crash when copy or cut button were pressed without
having selected an item.

Task-number: QTCREATORBUG-17637
Change-Id: Iceaea7a9f826ed16c4caee9fc28b4c14eb304c62
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2017-01-26 13:08:49 +00:00
David Schulz
eefb832c82 Debugger: Release old symbol group when it is not needed anymore
Change-Id: I7dca4773d57647bdcbb50ddf48e914697da72aea
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-26 12:40:53 +00:00
Christian Stenger
d4e2d8fc49 AutoTest: Fix filtering of results
If we enforce an update of siblings we must inform the model that
something might have changed to have this propagated to the
filter model as well. It is not enough to emit dataChanged()
for the parent.

Change-Id: Ia260d9ad131dab307b7ded34e4c20f76ec625e97
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 12:28:11 +00:00
Christian Stenger
67aea18cc2 AutoTest: Allow basic filtering of scanned folders
This allows to specify folders to be used as search folders
while scanning for tests.
Current approach allows simple folder names or folder structures
without wildcards.

Examples:
Value                What will be (recursively) scanned
tests                if the current project has any (not necessarily
                     a direct) subfolder 'tests' this folder will be
                     scanned
tests/auto           if the current project has any (not necessarily
                     a direct) subfolder 'tests' and this folder has
                     a direct subfolder 'auto' the 'auto' folder will
                     be scanned
If there are more folders which apply to the rules then all of them
will be scanned.
This filtering will not keep the parser inside these folders as it
might be necessary to step into different folders because of
dependencies if the found tests, but the search for entry points to
tests will be limited to these folders.

Task-number: QTCREATORBUG-16705
Change-Id: Ib93465540cd20656d033e16205807aba6830d738
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 12:28:01 +00:00
Orgad Shaneh
34504ad797 Gerrit: Determine server by git remote
Currently SSH only.

Change-Id: Ic29ca20e4c63cb5c692e9dc196ba205f0cbc9c6f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 12:00:23 +00:00
Orgad Shaneh
c317114591 Gerrit: Expect *existing* directory on the path chooser
Change-Id: I72cca5bfaab7a2b4f0faa619005bc41fad59c1bf
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 12:00:17 +00:00
Montel Laurent
21fd4de9a5 Remove duplicate margin
We have a margin from layout from dialog and layout around
textplaineditor

Change-Id: I75107eb5f3b5c80ee959966622d237ccf0ac2528
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 11:58:54 +00:00
David Schulz
ade1b7505c Debugger: Add function returning symbol name for address
Change-Id: I9d815c06781b868756169465b3e7ad8a43214514
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-26 11:22:19 +00:00
David Schulz
fec3a848a2 Debugger: Override cdb extension build config
Build the cdb extension in release mode, except if
QTC_KEEP_CDBEXT_DEFAULT_CONFIG is defined.

Change-Id: I61d1eb4b5f504cc335cdaf80a235891e44212f44
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-26 11:22:02 +00:00
hjk
e20549d295 ProjectManager: Add function to set a list of files in folder nodes
... instead of having to remove/add. Use it in some places
in QmakeProjectManager and the ResourceEditor where the
(sub)tree is rebuild anyway.

Change-Id: I46b3c078c576b72dba6e87432570d030b7572026
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 10:32:22 +00:00
hjk
4012611aab ProjectExplorer: Simplify FolderNode::buildTree
Change-Id: Id2425310ee4192758a2b21b22fe49ffe9b30d276
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 10:32:12 +00:00
David Schulz
8ba219274c Debugger: Use correct format characters for unsigned long long
Change-Id: Ifa4e243145dc5ef1cff29420358c2924ac09a46e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2017-01-26 10:06:53 +00:00
hjk
5c5d93943f ProjectExplorer: Let SessionNode operate on single ProjectNodes only
Simplifies the implementation and is the only way used.

Change-Id: Ie3ac1cb66ae7fb85e3d6358a01975ba2e857ab6c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-26 10:06:43 +00:00
Nikolai Kosjar
7415964819 CppTools: Fix choosing project part after project open
As long as there are project parts for a source file, always determine
the best project part, instead of trying to stick to the previous one.
This ensures the best project part at all times and simplifies the code.

Change-Id: I25ea3eb43a5a3e6d93688d4b8965f596dc9ae22b
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:52:54 +00:00
Nikolai Kosjar
bddfe21961 CppTools: Fix using updated project part
1. Open a project consisting of two subprojects referencing the same
   source file.
2. Open the source file.
3. Click '#' in the editor toolbar and select the second project (part).
4. Update the project file, e.g. add a define
   ==> Editor does not reflect the added define

This is due to comparing project part pointers. Fix by using the project
part id that remains stable across project manager updates.

Change-Id: Ifd1a113e55ebe2ecf036cd7caafdbfd6e4cdf415
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:50:11 +00:00
Nikolai Kosjar
07f32ef57a CppTools: Use fallback project part if project is closed
...instead of sticking to the old one.

If a project is closed, the editor should reflect that. It also simplifies the code.

Change-Id: I9b8a94513d3b06a238cfc4ee60c11c0d0da3d93f
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:50:05 +00:00
Nikolai Kosjar
ec3dcfd6ad CppEditor: Show info bar for project-less file
While at it, centralize the code for handling the info bars and actions.

Change-Id: Ied62e3db268aaff3ef87e246bfe2b50399341be3
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-01-26 07:35:30 +00:00
Oswald Buddenhagen
3080bda066 fix fallbacks in external property parsing, take 2
while the fallback chain really *is* "Put" => Raw => Get => Src, this
implies that to get sane looking condensed qmake output with only the
plain and the /raw property variants, the /get and /src variants must be
lacking the sysroot, which is profoundly useless in the case of an
installed prefix build with sysroot and without extprefix.

so to get actually useful paths, we just drop Raw from the fallback
chain. qmake will be fixed later to actually conform with this much
saner interpretation.

amends 61419e7bf.

Change-Id: I76fced03c5774ad581df2bf6ccc92a908fa243ca
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-01-25 16:22:42 +00:00
Eike Ziller
a93fc0a4fe Merge remote-tracking branch 'origin/4.2'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	qtcreator.pri

Change-Id: Ia6083434a811fc975696edf126df101ec8040f49
2017-01-25 16:27:49 +01:00
hjk
3c743346b0 ProjectExplorer: Make the FlatModel a Utils::TreeModel
The FlatModel is essentially a proxy model keeping expansion and
filter state per ProjectTree(View). Using a Utils::TreeModel makes
it fast enough to allow recreation of the proxy structure on
structural changes simplifying the parent/child logic significantly.

The {Session,Project,Folder,File}Node hierarchy still is still primary
information and shared by all views.

Change-Id: Ic08180a19bda37908280ff30e0737d188ed93e92
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-25 13:52:51 +00:00
Marco Bubke
03a68a91bb Utils: Test if vector::operator=(&&) is not throwing exceptions
It is advantageous to mark move assignments noexcept. Some implementations
are already implementing it and with C++ 17 it will be standard. So we take
advantage of it and make it conditionally.

Change-Id: I7c6d77d09a02639096ce0fb43733c1fbf190c7c4
Reviewed-by: hjk <hjk@qt.io>
2017-01-25 13:30:40 +00:00
Eike Ziller
23a2eff60d Update copyright year in about dialog
Change-Id: Icbbe1ebd0f77e32d45c1c3ea3cada7c4aaa59ab2
Reviewed-by: hjk <hjk@qt.io>
2017-01-25 12:54:19 +00:00
hjk
4ab6d1fa9d Debugger: Fix spurious cppcheck warning in reformatCharacter
The code path is never taken, size == 4 only happens in conjunction
with isSigned == false.

Task-number: QTCREATORBUG-17632
Change-Id: I3fd5a08fd5e414690bccf487f9d3cfb704ab5e47
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
2017-01-25 12:08:58 +00:00