Commit Graph

523 Commits

Author SHA1 Message Date
Eike Ziller
6e8ee7479e Merge remote-tracking branch 'origin/4.3'
Conflicts:
	src/plugins/debugger/cdb/cdbengine.cpp

Change-Id: Ib9aeccc4162c43e9ee3d85847d96678045625dd0
2017-05-09 15:07:30 +02:00
Tobias Hunger
0a3409112b ProjectNodes: add listInProject() to Node
Add a setter/getter for listInProject to Node and make the project
list all nodes with this property set in Project::files.

Task-number: QTCREATORBUG-18132
Change-Id: I334e627856d1bc0d033e13c5d629f6657d8d7fee
Reviewed-by: hjk <hjk@qt.io>
2017-05-04 09:16:56 +00:00
Eike Ziller
9443f7104b Remove the need to create ISnippetProvider subclasses
Change-Id: I1810aaa945136d9726a66dad41377429a6adc8e1
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-04-25 12:03:08 +00:00
Eike Ziller
dae2556d2f Merge remote-tracking branch 'origin/4.3'
Change-Id: I44511e06986b7df6007be7daf7051c895a10794b
2017-04-21 15:30:00 +02:00
Christian Stenger
45a5f47e01 QmlJSTools: Test: Fix used qml file
Former welcomescreen.qml is gone. Use another qml file to perform
the test.

Change-Id: Ibb6a143eab96202e152c799dc394a305f9db405d
Reviewed-by: David Schulz <david.schulz@qt.io>
2017-04-19 09:52:12 +00:00
Eike Ziller
016767b2a6 Merge remote-tracking branch 'origin/4.3'
Conflicts:
	src/plugins/genericprojectmanager/genericproject.cpp
	src/plugins/genericprojectmanager/genericproject.h
	src/plugins/projectexplorer/projectmodels.cpp

Change-Id: I290cba328212cadd3c12909d1f2f3642d326a1ca
2017-03-28 09:56:16 +02:00
Tobias Hunger
437af83c9a QmlJSModelManager: Avoid needless Mime database lookups
This speeds up processing of a cmake project without any QML files by a
factor of 16 on my machine.

Task-number: QTCREATORBUG-17884
Change-Id: I823d4a051451adbca10a8b73c17d288e03387378
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-03-27 15:18:15 +00:00
Serhii Moroz
6ecb1c4018 Locator: Add highlighting of the search text
Change-Id: Ia166e9667076e46770a754b626ceb28080139e79
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-03-21 12:31:46 +00:00
Orgad Shaneh
4f66adb9a2 Merge remote-tracking branch 'origin/4.3'
Change-Id: I4a21e9a9f4c5c2f96ad03ee6ea65afcd0ca511f9
2017-03-20 17:50:24 +02:00
Orgad Shaneh
d70968cde8 QmlJSTools: Use Qt5-style connect in comment
Change-Id: I97bbb4cf71e2c99ab7bae9e5104c36d176cf21b0
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-03-20 09:57:53 +00:00
Ulf Hermann
cd31fd1a60 Make the debugger console theme aware
Use the generic output panes colors rather than hand rolled ones. Also,
remove the prompt icon and use the "next" icon instead, and remove the
borders between console items.

Change-Id: I219badbfbbde3aa01d7937ff505205cb9d725a43
Task-number: QTCREATORBUG-17532
Reviewed-by: hjk <hjk@qt.io>
2017-03-16 16:06:04 +00:00
Orgad Shaneh
da7cb91446 Merge remote-tracking branch 'origin/4.2' into 4.3
Change-Id: I4931dcc81be872d7712e67123e94d15ee696459f
2017-03-14 16:20:14 +02:00
Samuel Gaist
4033471aa9 QRegExp include cleanup
This patch adds the missing include statements for QRegExp.

Change-Id: Ibb03b929940adb84ae190b5090cb6b88653cc14c
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2017-03-13 22:05:30 +00:00
hjk
3f5caf4cdc Utils: Wrap MimeDatabase into static functions
To avoid repeating the 'MimeDatabase mdb; mdb.something(); ' mantra
all over the place.

Change-Id: I4bfef62e73275a991455141671d6071162788e9d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-03-03 07:57:54 +00:00
Eike Ziller
d64e17ad55 Move mimetype definitions to plugin specs
- Avoids the hassle of QRC files and manually registering mime types
- Avoids performance regressions because of mime types that are
  registered after mime database has been used
- Makes it technically possible to detect that a disabled plugin could
  handle a mime type if it was enabled

Change-Id: I373008b1b56e9c6b4853055f20b3eeb112a6eff9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2017-02-27 13:54:59 +00:00
Ulf Hermann
c70b689526 Unify projectexplorer language IDs
We don't need two IDs for C++ and the QmlJS ID should look the same as
as the others.

Change-Id: Ib9747f6b36a90bb652951d85eec69666615670c4
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-30 15:34:46 +00:00
Marco Bubke
7dbd869e5b Fix exports for shared libraries
We use "shared" to define a shared library and not dll.

Change-Id: Ia97ebd0042a7ef0f33eadaa448d9a44b42331ad1
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2017-01-16 18:21:17 +00:00
Tobias Hunger
6871f31b4e QtSupport: Pass kit to QmlDumpTool::pathAndEnvironment
Pass the complete kit to QmlDumpTool::pathAndEnvironment instead
of just the Qt Version. That removes the need to guess at the toolchain
used and makes sure we have a better environment set up.

This also removes the need for BaseQtVersion::qmlToolsEnvironment() which
played the toolchain guessing game.

Change-Id: I4f4b9bb14b3ceb3892652901b459b53fcc4cb1ac
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-16 10:49:16 +00:00
Eike Ziller
7f8aa3a7be Make some plugins hidden by default
Hide core plugin, hello world plugin, and plugins that only provide the
base for other plugins.

Change-Id: I7f4a29a265d760b2a759122be153c7f06bd40bd2
Reviewed-by: hjk <hjk@qt.io>
2017-01-09 12:25:13 +00:00
Nikita Baryshnikov
d0e6853524 QmlJs: fix crash
Change-Id: I835f243fc34f4177a370c07d7e6c3dba3258942e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2016-12-21 16:02:52 +00:00
Tim Jenssen
30a4c13d1d QmlJs: use contains syntax
Change-Id: I101292ab259fceda235ac017f812c4698fd7e484
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2016-11-01 14:03:11 +00:00
Alessandro Portale
e809594fae Core: Make IOptionsPage::categoryIcon a Utils::Icon
This is necessary for themable + HighDPI icons in the options dialog.

Change-Id: I8e3ff87a24591af40bb76b39cd970443d7678fae
Reviewed-by: hjk <hjk@qt.io>
2016-09-20 12:52:49 +00:00
David Schulz
89ff2c1db5 Editor: Collect indentation for a list of text blocks
Allows the indenter to reuse code formatter structures.

Task-number: QTCREATORBUG-16420
Change-Id: Ie906d7fdcb50798da02ef5b750fb03ae752aadc1
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@qt.io>
2016-08-31 05:33:56 +00:00
Alessandro Portale
40c5213fdd Core: Move expand and collapse icons from autotest to core
...and replaced the duplicates of them in the debugger console.

Change-Id: If545800c47f3560e1f91d87bdd117abaf04dbd89
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2016-07-07 14:06:25 +00:00
Orgad Shaneh
7609e56ee3 QmlJS[|Editor|Tools]: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: I56550546b341d486d321329e9a90b9369d56af40
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-06-28 08:47:26 +00:00
Tim Jenssen
a6d21cc1f7 Qmljs: small QHash improvements
Change-Id: I79a5504c8471b66540aac8047fbcf760ceb6b10f
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-06-20 14:08:43 +00:00
Thomas Hartmann
7e7246bd25 QmlJS: Do not rely on Qt Creator plugins running
This is not the case in some tests.

Change-Id: I531997bc6eb0b9cb8057b7e488bca1c301c88add
Reviewed-by: Marco Benelli <marco.benelli@qt.io>
2016-06-14 08:02:06 +00:00
Christian Kandeler
a0f956f050 qbs build: Introduce new module "qtc".
The qtc module gathers properties that used to live in the top-level
project file. This is the first step towards making it possible to build
plugins against an installed Qt Creator ("out of source build").

Change-Id: Ia1514cc9c888e80be01b308e908de48980fcbdb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-08 08:46:00 +00:00
Vlad Seryakov
af56457ab6 Add support for new javascript methods to QML/JS outline
Extened AST visitor for outline, declaration and locator to include
Javascript methods, prototype functions with formal parameters for
better readability.

Change-Id: Ifbb2b157699c929412196f356b0c28ae0564f866
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
2016-05-20 10:07:58 +00:00
Tim Jenssen
7e08363052 qbs build: remove unnecessary script dependency
Change-Id: I0e5764ffc9a6146932c43d96a31138451260c161
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-05-13 11:42:43 +00:00
hjk
39a38d5679 Wholesale conversion to #pragma once
Kudos to cgmb and https://github.com/cgmb/guardonce

Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-30 15:20:19 +00:00
Orgad Shaneh
e5459fb9dc QmlJS: Limit MIME type matching to extension
This improves performance of MIME type resolving on project loading.

When the MIME type cannot be resolved uniquely by extension to >50 weight,
the file preamble is read in order to match against magic values in the
MIME database.

In 3953e2b447862576902abef11ffb4efc56d7a625 the weight of the standard
file extensions was increased to 70, to at least avoid expensive matching
when the answer is obvious.

Qml types only have glob patterns anyway, so this shouldn't break
anything.

Change-Id: If3add50809a4361f877ea261fba6d6f333b2b740
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-03-15 11:57:38 +00:00
Orgad Shaneh
bc9ffac3c0 MimeTypes: Increase weight of common source types
To avoid expensive matching by glob or by contents.

Change-Id: Id873c02369915642821872d10b566006cc2be39f
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-29 08:02:46 +00:00
David Schulz
9aa51d4857 Editor: Fix whitespace cleaning.
Task-number: QTCREATORBUG-7994
Change-Id: I6c197ccc3a148555018e8f8184d116c88d7ea400
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2016-02-24 12:03:12 +00:00
Thomas Hartmann
e3a3792fd6 Removing support for DebuggingHelpers
This patch removes infrastructure and ui for DebuggingHelpers
and specifically qmldumptool.

The qmldumptool was the last relevant DebuggingHelper and is only required
for Qt < 4.8.

Change-Id: I3767be0858e5eba16a33a3ab8436e95fc06a9e99
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-01-25 08:55:27 +00:00
Tobias Hunger
397e7f4843 Update License according to agreement with Free Qt Foundation
* Update files in src/plugins

Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:57:01 +00:00
Ulf Hermann
42d570a3fe Rename Project::ExcludeGeneratedFiles
We want to distinguish between source files and generated files. So
let's call them by their names.

Change-Id: I324c4b82ca7fb7d8d0e175ea6c4f14f1306ec929
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-13 14:12:08 +00:00
hjk
33651877d8 Move QmlConsole to Debugger
Now it is closer to its only user and possibly reusable for no-QML uses
there.  We also drop the QML/JS syntax checker. The application being
debugged can already tell us about syntax errors. There is no need to
duplicate that functionality.

Change-Id: I2ba151f9f4c854c6119ba5462c21be40bddcebf9
Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-12-09 12:06:26 +00:00
Alessandro Portale
09d03825fc Core: Better warning/error/info icons on non-toolbars
The warning/error/info with shadow and transparent mark work
well on our toolbars but not anywhere else.

This patch creates a separate set of these icons with better
contrast, filled marks and no shadow.

Change-Id: I96787753dffd80b325336f0adc8e3be054c34618
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-12-08 13:05:54 +00:00
Ulf Hermann
ee6399fd2e QmlJS: Flash the console when warnings are printed.
Change-Id: I9333e9d20a8d742ef0a0fcf2164bc6a127f77768
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-12-08 10:05:23 +00:00
Tobias Hunger
4b0a8648e4 FeatureProvider: Remove Feature and FeatureSet
Use Core::Id for Feature and QSet<Core::Id> for FeatureSet.

Change-Id: I12341036bd9eaa82589d92bd3f7d21f2e6b737bd
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2015-12-02 14:49:17 +00:00
Alessandro Portale
033862f305 Themed Icons: Introduce Utils::Icon
Instead of describing icons via file name or in the themed icons case
via
a string that is a list of mask/color pairs, we have now a class for it.

Icons are now listed in per-plugin *icons.h headers.

RunControl::m_icon was The only place left where an icon property was in
fact a string. This patch changes that member to be a Utils::Icon.

Change-Id: Ibcfa8bb25e6d2e330c567ee7ccc0b97ead603177
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-11-25 12:30:52 +00:00
Ulf Hermann
5babad8c38 QmlJS: Clean up QML console editor
Align the text between editing and display mode, and remove the dead
code. The prompt sign does not have to be part of the text and the
JS parser does not have to retain the code it parses.

Change-Id: I6e41f4fbc2cc863c84677640826d8663bcc648fb
Task-number: QTCREATORBUG-14931
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-11-03 08:50:51 +00:00
Ulf Hermann
19ab78865c QmlJS: Fix focus handling in QML/JS console
We want the line editor to be focused by default when the console is
opened either by mouse or by keyboard interaction.

Change-Id: Ic366d1ac5f1306c0739c334584568402969895f3
Task-number: QTCREATORBUG-14931
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-11-03 08:50:48 +00:00
Alessandro Portale
b8bdc6f669 Icon refresh: First step towards the new Qt Creator themes
http://blog.qt.io/blog/author/didesous/ announced new designs/themes
for Qt Creator. This patch replaces many of the existing toolbar icons
with recolorizable masks for better theming support.

Change-Id: I557aa485205fe2624f33724226f698c303342b40
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
2015-10-23 16:04:52 +00:00
Ulf Hermann
7dd898a1b1 QmlJSTools: Fix glitches in QML console
Half of the widget height is a particularly bad estimate for the
default height of a console item. Focusing editable items should be
done by explicitly transferring focus. Also, this only "worked" if
an editable or formerly editable row was the very first line in the
view, which rarely happens.

By default, if no settings are present, all log categories are enabled
now. Otherwise we might miss the error messages resulting from failed
evaluations.

Repeatedly setting the filter regexp to the same thing doesn't signal
a filter change, which is what we actually want when changing the
filter.

Change-Id: Ibe33b0438d92e777bdceaf9af032fc5117ba4041
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-08-25 14:59:17 +00:00
Ulf Hermann
b5717a5315 QmlJS: Lazy-load console items to allow for recursion
Using Utils:TreeView automatically gives us the capability for loading
item as they are expanded. This way we can show recursive structure in
the console as well as load data from the debug server on demand.

Also, properly print error messages received from unsuccessful
command evaluations.

Task-number: QTCREATORBUG-14931
Change-Id: I66d440eedd9723b04670169b27db1ee18f3f2891
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-08-25 14:42:22 +00:00
Tobias Hunger
57d652743e Qt: Update features for Qt 5.5
* Add QtVersionNumber::matches to match against a Qt version to
  make the code setting the features easier to follow.
* Use versionedFeatures instead of adding new string constants for
  the latest and greatest Qt Quick and Qt Quick Controls.
* Fix Qt-version-to-features mapping as discussed in
  QTCREATORBUG-14575
* Simplify code in qmljsbundleprovider.cpp: It should do the same
  thing as the old one.

Change-Id: Iba24e9d299a2a2e5d6e4de7cd1e95707a574678e
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-06-25 14:09:25 +00:00
Tobias Hunger
76a071757d QmlJs: More override changes
Change-Id: Ia2ea4d8ced3a23b38911517d1015b20d3412554e
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-06-04 13:32:46 +00:00
Tobias Hunger
b4b902eb48 qmljstools: s/Q_DECL_OVERRIDE/override/g
Change-Id: I09e7eae37107c1294555ff5d2021e0b131abd3d7
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-06-04 13:02:14 +00:00