Commit Graph

1426 Commits

Author SHA1 Message Date
Marco Bubke
6ba5054c10 QmlDesigner: Simplify threading in image cache generator
Change-Id: Ib969e6dae268c4564239d11c761873092e2dbb17
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-10-27 17:21:24 +00:00
Christian Kandeler
2b32b2e440 clangbackend: Provide highlighting for structured bindings
These are reported by libclang as "unexposed declarations".

Fixes: QTCREATORBUG-24769
Change-Id: I7a74b707f4203becabaa74b90758a7b396ee23bd
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-27 11:07:44 +00:00
Christian Kandeler
ed292f3f9b clangbackend: Categorize non-const pointer arguments as output arguments
Fixes: QTCREATORBUG-24550
Change-Id: Iac4f3b133a632d7272bfe4253f8a0740e51b0952
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-21 08:08:29 +00:00
Cristian Adam
3c4f7967e3 CMake Build: Allow building unittests when targets are missing
when configuring a minimal build make sure that when querying
for target properties like SOURCE_DIR the target actually exists.

Change-Id: Ib754b79be6461e3ddd4cdeb1abac123cf4535068
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-10-20 14:12:54 +00:00
Christian Kandeler
f72c2b84f7 Unittest: Fix qbs build
The image test uses unexported classes from QmlDesigner. Let's just
remove it.

Change-Id: I42cae90d7333bf1ad7f75839c93eef773cb5fab8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-19 15:34:18 +00:00
Marco Bubke
d1b0c12d6b QmlDesigner: Add image cache
The image cache is saving images and icon of this images in a sqlite
database. If there are no images they are generated in the backgound.
The icons are fetched by item library.

Task-number: QDS-2782
Task-number: QDS-2783
Task-number: QDS-2858
Change-Id: I5a32cccfef7f8fd8eb78902605a09f5da18ce88e
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-10-16 10:01:21 +00:00
Christian Kandeler
2287def85e clangbackend: Fix crash
We cannot assume that a Q_PROPERTY name is on the same line as the
keyword.

Fixes: QTCREATORBUG-24746
Change-Id: Ic2e02291e24c1abbaf72881b540a26c82899cb2c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-09 08:06:56 +00:00
Christian Kandeler
92cce87433 Unit test: Fix qbs build
The CLANG_UNIT_TEST macro was set unconditionally.

Change-Id: I1a8f16e2e295bda46fc60aab342a74f9675100cc
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-10-07 14:48:34 +00:00
Christian Kandeler
a0af404faa C++ unit test: Fix another line endings issue
Change-Id: Ib25055ac73c25fa27253c424efe60bfdaaafe219
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-24 13:40:51 +00:00
Christian Kandeler
569d5ca4da C++ unit test: Another clang 11 adaptation
This was probably a bug in clang 10: The amount of whitespace after the
operator should not matter.

Change-Id: If161a7b2f60ee932bef19edb9fe71aac31be3c8b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-23 10:28:48 +00:00
Christian Kandeler
019af2cc9a C++ unit test: Adapt to clang 11
Change-Id: I3ea6278147577899ea97032e17f0cd257423586c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-23 09:13:47 +00:00
Christian Kandeler
ed3aba3626 Unit test: Fix use-after-free
The bind() function takes a view, so we can't pass in a temporary.
Amends 3b0de99cf5.

Change-Id: Ic11b47688ff37699a1a56e978780a610c969d3b7
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2020-09-22 12:46:21 +00:00
Eike Ziller
fd5f0e6819 Remove Core::Id
Moved to Utils in 4.13, and the compatibility typedef is ugly.
Remove it now.

Change-Id: I0d80165b427448eaf7ee6cc1c0a6a34a85b7083b
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-09-22 09:47:56 +00:00
Eike Ziller
5cb5d8e585 Remove usages of Core::Id
It moved to Utils.

Change-Id: Ia4d12bb07db2d59b1cb084b2ebdea20e6e3b40ad
Reviewed-by: hjk <hjk@qt.io>
2020-09-21 13:06:21 +00:00
Christian Stenger
3b0de99cf5 Unittests: Fix test
Change-Id: I45669bd31497655b6c8a9f8c03fd20cae703042f
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2020-09-21 11:51:46 +00:00
Christian Kandeler
c229c667cf Unit test: Support qbs build with googletest submodule
This is necessary to be able to build on Windows.
Also add an include to fix building with clang 12.

Change-Id: I9278a2c942a5e50c89c3aac19492f3a1ef3177b1
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-21 10:31:30 +00:00
Christian Kandeler
e162775bde C++ Unit test: Fix diagnostics export test on Windows
The file offsets are different because of CRLF line endings.

Change-Id: Ice859f3b279651b61d147bdd963f62897b090e47
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-21 09:23:18 +00:00
Eike Ziller
5ad724c61b Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	src/plugins/qmakeprojectmanager/qmakeproject.cpp

Change-Id: Ieb1c3e946f11d3c4fa1ee6b5afdf83cc532d8aed
2020-09-17 10:28:19 +02:00
Miikka Heikkinen
39e5d60570 QmlDesigner: Add new function to NodeInstanceView mockup
Model now uses requestModelNodePreviewImage so it's needed in mockup.

Change-Id: I9f9e43b288401de52ac010c333591c9184e10366
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-09-16 13:34:02 +00:00
Marco Bubke
7c8847333b QmlDesigner: Go into components
Task-nubmer: QDS-2696
Change-Id: I2f0ee71deea593da08fa4a754d783b53867473ed
Reviewed-by: Michael Winkelmann <michael.winkelmann@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-09-16 08:37:53 +00:00
Christian Kandeler
d14be7493f ClangBackEnd: Support highlighting of alias templates
Fixes: QTCREATORBUG-24552
Change-Id: I80d2b16114234cf896173cd4104e6a5f12009f69
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-09-14 11:42:09 +00:00
Orgad Shaneh
4d71cbe6d3 QmlDesigner: Add a missing return
Change-Id: If29854d7f4706bbea6a5f51fc7bef427600d79b5
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-09-11 12:56:57 +00:00
Cristian Adam
fc542c7631 Unittests: Remove external dependencies
External dependencies are targets built for Qt Creator e.g. Utils
unittest is building everything for itself.

It also fixes the MSVC building with PCH.

Change-Id: I7bca1e150f6890ea85f30efda5642f9242a7c9b5
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-09-11 10:16:15 +00:00
Eike Ziller
3b76714290 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/ListViewSpecifics.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/MouseAreaSpecifics.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/QtQuick/RowSpecifics.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/FlickableSection.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/FontSection.qml
	share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/StandardTextSection.qml

Change-Id: Ie5deacd39ae4f3c0966e7cb41a8fd832dcefbb09
2020-09-03 12:18:02 +02:00
Marco Bubke
bfd8be99be UnitTests: Fix unit test build
Guard clang include.

Change-Id: Ia72b40fa787918f47508049b045a21edf976d93a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-09-03 07:32:18 +00:00
Christian Stenger
5355aa7a37 Unittest: Fix crash in Linux
Change-Id: I1e8dc10bd9f0f9d11b0f18716e284ffadef7c6c5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-09-03 04:21:00 +00:00
Orgad Shaneh
a408bcfd3d Clang: Add conditions for adding exceptions flag
For GCC it can be deduced from the compiler flags, so no correction is
needed.

For MSVC it can be deduced from the detected defines.

Amends 26693e8212.

Change-Id: Ie4850f328a2afdb3e5158c58f8c30a2644d9c592
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-09-02 15:26:19 +00:00
Christian Kandeler
d65ef60ea2 clang: Fix include/resource dir confusion
The getClangResourceDirAndVersion() function in ClangTools could return
the actual resource dir or the include dir, depending on the input. This
mistake happened because of misleading names spread all around the code.
Now the function returns what it says, and the other names are accurate
as well.

Change-Id: I0a8600857ee7b9fafb16256e0d1ad203ac3273d2
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-08-24 10:18:30 +00:00
Eike Ziller
2a05186194 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	CMakeLists.txt

Change-Id: I799060da2cb299bb0c49a3da3530fad18427a23c
2020-08-21 10:08:55 +02:00
Cristian Adam
d6c3846ab1 CMake Build: Add Google Testing 1.10.x as submodule
Fixes: QTCREATORBUG-24510
Change-Id: I763d72524f2e581671e18bcd9cda42d5bf7bccdf
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-08-19 15:50:37 +00:00
Eike Ziller
058f1e6918 Fix some license headers
Missing the GPL part.

Fixes: QTCREATORBUG-24501
Change-Id: I9e8e033399c050af29927d0ee735f9bcd05345bf
Reviewed-by: hjk <hjk@qt.io>
2020-08-19 07:05:55 +00:00
Eike Ziller
0c4135e380 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	src/plugins/android/androiddeployqtstep.cpp

Change-Id: Id624bad384050d567efba0700046331086cb12dd
2020-08-13 13:28:33 +02:00
Tim Jenssen
4fe5b923cd Merge remote-tracking branch 'origin/qds-1.59' into 4.13
Change-Id: Ic720f3adab305c5ef8cd10e713ccabf510eff0c0
2020-08-13 06:39:40 +00:00
Christian Kandeler
7938320291 TextEditor: Introduce shortcut for forcing a function hint proposal
... and support it in the ClangCodeModel.
This allows users to get function signature(s) displayed regardless of
where exactly the cursor is on the function call.

Fixes: QTCREATORBUG-19394
Change-Id: I033e8774db93680bfc3ee52610b817e0ef8ccc76
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-08-11 10:10:08 +00:00
Eike Ziller
3944162039 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/cmakeprojectmanager/cmakebuildstep.cpp
	src/plugins/cmakeprojectmanager/cmakebuildstep.h
	tests/auto/debugger/tst_namedemangler.cpp
	tests/auto/qml/codemodel/check/tst_check.cpp

Change-Id: Iefd5f71c03c0078513b76a92af764a4fb22ee4c2
2020-08-10 15:56:54 +02:00
Marco Bubke
b5d59c75a7 QmlDesigner: Fix bool handling in the list model editor
Task-number: QDS-2581
Change-Id: I47a9ed4ca55532bb7199a6c5dd4894b7adb7d05d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-08-10 09:40:34 +00:00
Marco Bubke
b4027b7943 QmlDesigner: Fix crash for list view model
There was a type, so it crashed. The code is now under tests so we cannot
break it anymore.

Task-number: QDS-2563
Change-Id: I81426a9f8a568b217b7bf9c8c261b24be14ff61a
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-08-10 09:40:26 +00:00
hjk
52b2ca55c9 Replace QT_USE_FAST_{OPERATOR_PLUS,CONCATENTION} by QT_USE_QSTRINGBUILDER
QT_USE_FAST_CONCATENATION doesn't do anything nowadays.

Using QT_USE_QSTRINGBUILDER is the same as QT_USE_FAST_OPERATOR_PLUS
for QStrings and enables more QStringBuilder use for QByteArrays.

Change-Id: Ibd297817c50d86661d47822799f989447249af1b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-08-07 12:45:03 +00:00
Orgad Shaneh
61601899db UnitTest: Fix escaping of LLVM output on Windows
Complements 1929c38a9f.

Change-Id: I95e32baf477e42003f1e97c73fd557b480de33a7
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-08-07 05:01:04 +00:00
Christian Kandeler
c24320123b qbs build: Fix spurious re-resolving
The pluginjson module records the VCS state by default, which means qbs
re-resolved the project after every git action. Prevent that.

Change-Id: I24cf1d658ba847b327be018749806856a6e7da1b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-31 08:13:40 +00:00
Christian Kandeler
cf20d44b4a qbs build: Make unittest work with sanitizers
Change-Id: Ie6153a4505f42a1c9754d6af951c72df0065ec1c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-07-28 13:33:51 +00:00
Cristian Adam
3b8f51391b UnitTests: Re-enable CMake unittests
Ammeds 327bec26bf

Change-Id: I34b62532da424b3b4fb0290049150f6ba444283b
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-07-24 10:05:45 +00:00
Christian Kandeler
56de884159 unittest: Fix build
Amends 2915ee0832.

Change-Id: Iea6c76d33046e9c671a9bfb71ad752b1f2501ec4
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-07-13 11:23:50 +00:00
Christian Kandeler
4aba3da7bd CompilationDatabase: Fix unit test
Amends be97943372.

Change-Id: Ic840f5eca8a83b5bdf3e3864e8859234472911b7
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2020-07-10 12:57:45 +00:00
Eike Ziller
d400dce35d Require GCC 7 and enable C++17
Fix MSVC2019
- result type of conditional expression is ambiguous:
  types 'const char [1]' and 'QByteArray' can be converted
  to multiple common types

Fix MinGW 8.1
- undefined reference to SemanticHighlightNotification::methodName

Fix Utils::transform with std::vector for GCC & MSVC

Unfortunately we cannot get rid of the special variant and optional
implementations, because Apple Clang requires deployment target >= 10.14
for the functions that can throw std::bad_optional_access.

Fixes: QTCREATORBUG-20520
Change-Id: I5c36a70f21f8b0215d2f4fc5c0653a022778d928
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-07-10 11:52:24 +00:00
Eike Ziller
10fd921e26 Merge remote-tracking branch 'origin/4.13'
Change-Id: I4240608a7a0529bb2f6612ba84abae46166458f5
2020-07-10 08:02:27 +02:00
Christian Kandeler
782ca5d8d8 Clang: Fix error when including float.h with mingw
Prevent mingw from trying to #include_next a private header from a path
we cannot add to our list of includes.

Fixes: QTCREATORBUG-24251
Task-number: QTCREATORBUG-24027
Change-Id: I18a9db130b9c2265cd208c3506d08d2e1c4cee45
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-07-09 17:24:16 +00:00
Marco Bubke
b73ce9eccf QmlDesigner: Add row move up and move down buttons
Task-number: QDS-2294
Change-Id: Ia1e64d0811f55151dfe529db4868821840a8fba9
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-07-08 09:17:41 +00:00
Marco Bubke
7504c966bf QmlDesigner: Move code from list editor dialog to model
And add tests to the code.

Change-Id: I9fb183729c716a50bbab861d207a212ff704ee7b
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2020-07-08 09:17:26 +00:00
hjk
e1c88116b3 Core/Utils: Migrate further to Utils::Id
The coreplugin/id.h header is kept for downstream for now.

Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
(cherry picked from commit 430a33dcd9)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-07-06 11:15:18 +00:00