Commit Graph

28971 Commits

Author SHA1 Message Date
Tobias Hunger
47abeac15b Use EnvironmentAspect to retrieve the environment
Change-Id: If878e22cc2715d05bb3e65ad908cd4fb5e21b03b
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 15:15:08 +02:00
Tobias Hunger
e837b48465 Specialize environmentaspect for remote linux
... and attach it to remote linux runconfigurations

Change-Id: I5596b7a237ac6ef4a834324f95f462adbe28e722
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-11 15:15:03 +02:00
Tobias Hunger
6d165c500a Specialize environmentaspect for qml projects
... and attach that to qml project runconfigurations

Change-Id: I841b72cc279495ee8f3ff31af59bf006f13a1056
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 15:14:59 +02:00
Tobias Hunger
8df9ed5b76 Add specialization of environmentaspect for local processes
... and attach that to localapplicationrunconfigurations

Change-Id: I1d93820d45295bb0e8dd1ac2648070891eff6ddf
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 15:14:54 +02:00
Tobias Hunger
2236c560b2 Add a widget to configure an environmentaspect with
Change-Id: I8e51271b9fd1d793662221bce28b227a0feb03da
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 15:14:49 +02:00
Tobias Hunger
8482c665ef Add EnvironmentAspect to ProjectExplorer
This is meant to hold environment data for RunConfigurations that
require one.

Change-Id: Icfc6a499dec6dfc303a96de66f51c44592318f21
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 15:14:43 +02:00
Leena Miettinen
eb3a0b0a1f Doc: fix typo: widget.xml > wizard.xml
Task-number: QTCREATORBUG-7909

Change-Id: Ib04c10559e7945efc8fc8ddb320bd1300620fd33
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-11 14:22:53 +02:00
Petar Perisin
331af07a9e Git: bug fix for diff and log in BranchesDialog
Branch log and diff were sometimes having problems.
I have project in main git module, and I was not able to get branch diff and log in a submodule,
because they open new editor and as soon as it is opened m_repository changes to the master module.
Since repository working dir is set after editor opens, it is already changed in branchModel
Branch diff and log should now work as expected.

Change-Id: I72f730d77b8fe23ef6eac757415fe96321ef147b
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-11 13:59:57 +02:00
Erik Verbruggen
269545bb35 Todo: 10x speed-up open-file tracking.
When idle-timer fires for the Todo plug-in, this method gets hit. When
I have qtcreator.pro loaded, and 1 file open, and hit enter once, this
change reduces time spend in this method from 223ms to 22ms of UI
thread activity.

Change-Id: I76234601d39605a85e89700d18dd017ac1b8a902
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-04-11 13:01:30 +02:00
Oswald Buddenhagen
f9f8cd354b auto-generate <dependencyList> in .pluginspec files
Change-Id: I8bb9b4eb0ae5ed9b283da422be882603ae0e1b49
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
2013-04-11 12:52:03 +02:00
Daniel Teske
740d177a04 CMakeBuildConfiguration: Remove unused includes
Change-Id: I8b3f066490ffc7381400bb8b360c442a30fb039e
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-11 12:50:05 +02:00
Nikolai Kosjar
1a9864516b C++: Tests: Add stupid "do xyz for each file/token" tests
Introduce tests that execute test actions on each word/token of each
file from every loaded project. Currently, besides just opening files
and moving token by token through the files, the following basic actions
from the CppTools and CppEditor plugin are executed for each token:

    - Follow Symbol Under Cursor
    - Switch Declaration/Definition
    - Find Usages
    - Rename Symbol Under Cursor
    - Open Type Hierarchy
    - Invoke Completion
    - Trigger a quick fix in this scope (+perform)

Note that

(1) These tests are meant to detect corner cases for which Qt Creator
    crashes or outputs QTC_ASSERTS. Correct behavior is not tested.

(2) These tests operate on the loaded projects. Therefore, projects
    should be specified on the command line or should be loaded by the
    session manager. Depending on the projects size, these tests might
    be quite time consuming and are therefore candidates for nightly
    tests.

    Suggested test projects are qtcreator.pro, qtbase.pro.

Change-Id: I550776b3d56acb17ab337da068d409bfc21e997a
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-04-11 12:46:02 +02:00
Erik Verbruggen
c388c05b86 C++: fix the quick-exit for already parsed files.
When the preprocessor is asked to process a file which it has already
seen before, it can skip it, but it still has to add the file to the
list of included files for the current document.

Task-number: QTCREATORBUG-9107
Change-Id: I30cac61c1da20da7fe925168ecccb429584e9746
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-04-11 12:15:07 +02:00
Thomas Hartmann
7406761f8f QmlDesigner.Instances: disabling the cursor after completing
The cursor should be disabled after component complete.

Change-Id: I3ee089b23f43b42a478aaacc4073cbdfd0da2323
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-11 12:11:14 +02:00
Thomas Hartmann
f42f73492f QmlDesigner.Instances: function should be static
No reason the export the symbol.

Change-Id: I34a42f866333585774129021777265e8a7524555
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-11 12:10:58 +02:00
Thomas Hartmann
8a9fc63555 QmlDesigner.Instances: blacklist certain properties
For those properties the QQmlProperty constructor does crash.

Change-Id: Ia78583e080ced936d98517ce0d3244d3040f8ceb
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-11 12:10:23 +02:00
Friedemann Kleint
8ba344a556 Code snippet wizard: Add newlines to template code.
Change-Id: Iaf673ed279103acdae15e868651ffb65397a4221
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-04-11 11:51:12 +02:00
Daniel Teske
f462e6f3ef AndroidDevice: Update after the device manager has actually loaded
Change-Id: Ibab03ef09dea6312a0d4c812c819d847b1399298
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
2013-04-11 11:39:22 +02:00
Oswald Buddenhagen
02e11c6cd7 make Qt4ProFileNode::buildDir() return normalized paths
QDir::absoluteFilePath(QString()) apparently appends a trailing slash

Task-number: QTCREATORBUG-9096
Change-Id: I7c816590daa87df4b646e5cee75566c97b839b52
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-11 11:33:30 +02:00
hjk
5a28377786 Debugger: Remove gdb-work-around-trk-single-step.patch
Symbian is gone, and so is TRK.

Change-Id: I058e02d8990c5de0b9aa2f29ba7caebc30148f6d
Reviewed-by: David Schulz <david.schulz@digia.com>
2013-04-11 08:04:04 +02:00
Guillermo A. Amaral
6a6f3d2a53 Add support for 64-bit NDKs to Android Plugin.
Currently the Android plugin only checks for the linux-x86 prebuilds in the
64-bit Android NDK (and mingw-and-ndk), this means Qt Creator goes bonkers
because it can't find the toolchain and debugger for the kits it
auto-detects/creates.

A work around is to symlink linux-x86_64 to linux-x86 in every toolchain.

Change-Id: I04522b65ef48b6090a9f6925e8e3420ad1d333ee
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-10 20:12:44 +02:00
Shane Peelar
659e7d85f1 Fix CMakeProjectManager Ninja CXXFLAGS detection
In recent CMake versions, a new backend, Ninja, was added with the intention
of providing an alternative to makefiles.  However, this backend stores the
CXXFLAGS for the project in a different format than it does for the makefiles
backends.  As the CMakeProjectManager assumes a makefile backend, it fails
to correctly obtain the CXXFLAGS of the project when Ninja is used.
This small patch will attempt to read CXXFLAGS from the build.ninja file
to correct this issue.

Task-number: QTCREATORBUG-9047

Change-Id: Ic19ae3b4802c7a12b5d0a92a7f1a2254bec5a3d2
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-10 18:24:18 +02:00
hjk
2f147b4055 Debugger: Report process state and location from LLDB bridge
Change-Id: I1e65b2f75ff4ebde17f7d8506193cb47474335f6
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-10 17:52:43 +02:00
hjk
5211599988 Debugger: Centralize LLDB response handling
Most logic is now moved to the python side, so response
structure can be uniform

Change-Id: Ic06760e33415ca4e05b6a4b3629028c01f304238
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-10 17:52:34 +02:00
Lorenz Haas
2e8d471c3b CppEditor: Fix insert position of AddIncludeForUndefinedIdentifier
If there are no includes, add new include at the top of file but skip
possible comments at the beginning.

Task-number: QTCREATORBUG-8799
Change-Id: Ie2be644f6ad0a948cf3d8700efa00087753d9863
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
2013-04-10 16:42:29 +02:00
Kai Koehne
8139d43c29 Fix qml engine lockup when debugging an app run in terminal
The default timeout for the timer is set to 0 for projects that have
the 'run in terminal' option checked in the run settings. Make sure
that this timeout is set to a reasonable number once the first connect
fails, before we retry.

Task-number: QTCREATORBUG-8931
Change-Id: Iaa8acb50d76f182ceda77f8e6923738ad79ff445
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
2013-04-10 16:28:58 +02:00
David Schulz
a6ee961bc3 cdbext: Fix dump of 64bit integer in container.
Change-Id: If782d6da5453e78b3038c6ef8edbce0718b487c7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-04-10 16:24:04 +02:00
hjk
17e8631dfb Debugger: Reorganize python dumper loading
- Split off GDB and LLDB specific parts into separate files,
- Trigger loading of dumpers.py and qttypes.py from bridge.py
- Read start up script at startup, not as part of dumper loading

Change-Id: I7941ee535121fa0f43a466e5bb75a18c9bb19764
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-10 15:58:12 +02:00
hjk
87f2d83ec2 Debugger: Add basic breakpoint handling and stepping to LLDB backend
Change-Id: Ib700afa63739e6d26bdd97225265559d7112eadb
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-04-10 15:58:02 +02:00
Eike Ziller
46b9c03cbc Clean up where the QSettings is retrieved from.
The settings in the plugin manager (local/global) are where the plugin
manager is supposed to look for its settings, which has per se nothing
to do where Qt Creator wants other settings to be written to.
All Qt Creator code should use ICore::settings() for that instead.

Change-Id: I28bd855ae6cbcdf8d19017eb44f178e4624a1a61
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-10 15:30:34 +02:00
Tobias Hunger
aff2518bd7 ProjectManagers: Update project languages based on data sent to the codemodel
Change-Id: Iecf61f66389fff6f3995c4f4bc893ffd190c50e6
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-10 15:30:17 +02:00
Thomas Hartmann
ca340c6b4e QmlDesigner.MetaInfo: fix for typeinfo from the cpp code model
If the typeinfo is provided by the cpp code model if have to
use the object value for the lookup.

Task-number: QTCREATORBUG-8746
Change-Id: I42e55782ee16ddc255e2f919845a385ff1f3f636
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-10 15:20:16 +02:00
Thomas Hartmann
7a05f41c0e QmlDesigner: allow QtQuick 2.1
Change-Id: I2908388db3e5a627dd3242ff524832812822f799
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-10 15:19:56 +02:00
Thomas Hartmann
f7d71a43c8 QmlDesigner.ItemLibrary: crash fix for resources
Dragging in Images from the resources tab was broken.
Creating an Image has to work with QtQuick 1.0 and QtQuick 2.0.

Change-Id: I60702a94ec5fc53805513775f5517c30f9e1b7cd
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-10 15:19:51 +02:00
Thomas Hartmann
f8c23cf4d0 QmlDesigner.Rewriter: Fixing dynamic properties
Dynamic properties were not properly rewritten.

Change-Id: Icf2bdd41104aaaeb0473f0616958752dcb19fdb4
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
2013-04-10 15:19:43 +02:00
Thomas Hartmann
3ed0a4b77f C++: Also use O2 on Windows
Change-Id: I4183765f654087a38b8ffe60d2b52c3be785f9e3
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 15:05:28 +02:00
Przemyslaw Gorszkowski
eb30ab6604 C++: fixed code completion for namespace aliases
Task-number: QTCREATORBUG-166

Change-Id: I7a19065a57bfb943e5fc4e2bd9bd81988c1175e3
Reviewed-by: Sergey Shambir <sergey.shambir.auto@gmail.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 15:04:02 +02:00
Przemyslaw Gorszkowski
bde6667240 C++: name of function of class problem
It fixes:
* highlighing
* find usage
* follow symbol

when function of class has the same name as:
* local variable
* template parameter
* other struct/union/class/enum
* function argument

in function scope.

Task-number: QTCREATORBUG-8902
Change-Id: Iddc0f764af689babb40d39460d174bac7b919b31
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Sergey Shambir <sergey.shambir.auto@gmail.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 14:58:48 +02:00
Przemyslaw Gorszkowski
9c2a352027 C++: fixed operator arrow of nested class of enclosing template
Fixed:
* code completion
* highlighting
* find usage
* follow symbol

Task-number: QTCREATORBUG-9005
Change-Id: I3fcc2638482ca1071c1aa7b6aab0d4dd128595bb
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 14:52:20 +02:00
Thomas Hartmann
7543a08582 QmlDesigner: avoid warnings for StaticAnalysis
The warnings were triggered by the constructor of Message.
We use PrototypeMessageData which is just the pure data.

Change-Id: Iaa85880000ccd936d98517ce5d3294d3040f8cee
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
2013-04-10 14:48:28 +02:00
Thomas Hartmann
86ae825033 QmlJSStaticAnalysis: make PrototypeMessageData public
We need this in the rewriter to avoid warning.

Change-Id: Ia99583e080eed936d98517ce553294d3040f8cee
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@digia.com>
2013-04-10 14:47:03 +02:00
Thomas Hartmann
7b94ac13ed QmlDesigner.Model: Adding warnings
The API is confusing so we give a warning.

Change-Id: I7a26766609316772bebc3088d820d472243b2c74
Reviewed-by: Marco Bubke <marco.bubke@digia.com>
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2013-04-10 14:42:38 +02:00
Eike Ziller
920e7ca1f1 Show build and search progress detail also in status bar.
A widget specifically layouted for the status bar can now be registered
with the progress information. The newest one is made visible next to
the summary progress bar. If a newer one vanishes, the older becomes
visible again.

Change-Id: Iedf0e88a542ea442ae86fa51c792c68fbc6eef3c
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2013-04-10 14:21:25 +02:00
Eike Ziller
9e714006ee Move all progress indicator handling to progress manager.
Part of it was managed in ProgressView, which only complicates things.

Change-Id: Ia9ca03e3228f3662864749da751f7ec4bdf23297
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 14:21:07 +02:00
Christian Stenger
2a261588f4 Squish: Add helper functions to Target class
Change-Id: Iba67cc28d29346689ca8443ce0b594056feaa0cf
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2013-04-10 13:39:10 +02:00
Tobias Hunger
e0f05e3b33 Unify handling of dumperLibrary/dumperLibraryLocations
across its uses. We have the kits now, so we can use the information
from there and no longer need to guess at the dumpers to use.

Change-Id: I058304198e9c7fdbad45a84658e1bcea8ed9834d
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-10 13:19:03 +02:00
Christian Stenger
c74bb8dfca Squish: Clean up
Details:
 * removed unused functions
 * removed "QtQuickConstants" (Targets class is used for more than just Qt Quick)
 * removed Components class

Change-Id: I2908348db3e5a627d63242f9524832812822f790
Reviewed-by: Robert Loehning <robert.loehning@digia.com>
2013-04-10 12:15:29 +02:00
Christian Kandeler
403f41efb7 Fix potential assertion when removing Android device.
The device manager does not like it when you remove non-existing
devices.

Change-Id: Ied1b28963a0513761c9cf247c414e0ea29dc8086
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-04-10 12:06:15 +02:00
Petar Perisin
4a45c1c165 Interactive rebase - make selected commit available too
Since we select final commit for interactive rebase in a listed dialog,
it is IMO expected and more user-frendly to also have selected commit in
the interactive rebase list.

Change-Id: I56febd024cc174bcd046b1f02bccfe990043aae4
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2013-04-10 12:04:41 +02:00
Sergey Shambir
a2730a4570 CppTools: added template function params to completions
Change-Id: I67e9685406a0bf9a7cc358ce24f0e862d7938be6
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
2013-04-10 11:55:06 +02:00