Commit Graph

2318 Commits

Author SHA1 Message Date
Michael Brüning 083b02377d Add option to apply style sheet coordinates
Enables the user to have pixel positions in the style sheet even if the
template does not use pixel positioning.

Also adds some more ordered properties to make the test case
deterministic.

Task-number: QDS-2208
Change-Id: I79b6af0c24539d1b9eb03dcf0fb52bb078d74afe
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-04 05:42:07 +00:00
Michael Brüning 6419059362 Correct text alignment preservation and add basic options parsing
Also add a test case and Remove some dead code along the way.

Task-number: QDS-2071
Change-Id: If34d4e152860ec9ab098f07e36e3a5dc4368c67f
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-02 20:25:51 +00:00
Thomas Hartmann e5d892c74a QmlDesigner: Fix test data for StyleMerger
* This seems be the correct expected outcome.
* Minor fix in SwitchTemplate

Change-Id: I5de04d943d3522a37ac1664157f384594ddddcde
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-02 20:23:24 +00:00
Michael Brüning 96a511c979 Add some more tests for automatic stylesheet preprocessing
Currently, the tests fail, but the output is by and large correct.
There are some issues that still need to be analyzed.

Task-number: QDS-2071
Change-Id: Idb4618171a7256ec527368d6079c756eb734db82
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-06-02 20:23:12 +00:00
Michael Brüning b7155a6a04 Adjust test case data for complex test and reactivate it
Change-Id: I5e61971ff420f3193bca1f63040044833e26cca8
Reviewed-by: Michael Brüning <michael.bruning@qt.io>
2020-06-02 20:22:56 +00:00
Michael Brüning de8eb93637 Add stylesheet merger
Adds classes to merge a template qml file and a qml stylesheet that have
been exported from other design tools into a resulting qml file that can
be used for further processing in Qt Design Studio.

Current issues:

* Sometimes it makes sense to define width and height
  if an anchor is present, but most of the time not.

* Actually if the hierachy was defined (e.g. Text item not child of
  background) most likely the anchors should be ignored.
  But this would be just a "dirty" heuristic. I suggest to let the
  template decide. If the template has anchors those have "precedence".
  It is always possible to define templates without anchors.

Task-number: QDS-2071
Change-Id: I9159514a8e884b7ffc31897aef4551b5efbbcb87
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2020-05-27 18:26:12 +00:00
Christian Kandeler 8e1169f4bf qbs build: Take differences between clang and "apple clang" into account
In particular, clang with version number 10 is not really clang 10 on
macOS.

Change-Id: I8be489fa9cffd63c1ea8f13d181686ab1a575ec6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-12 07:31:39 +00:00
Christian Kandeler 27ea67728f qbs build: Suppress more warnings
Amends d08e5c33ff.

Change-Id: Ic842dda51b21427e1989190b44508d54aa1e7120
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-07 15:25:31 +00:00
Christian Kandeler f553e3d16a qbs build: Fix sdktool autotest on Windows
Make sure to fix the path separators for the macro that gets passed on
the command line.

Change-Id: I444883e6fc5a2b49d73a1fa52aa1ea26b207185c
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-05-04 08:39:15 +00:00
hjk 252a0431d1 Debugger: Fix dumper for std::unique_ptr with custom deleter
Task-number: QTCREATORBUG-23885
Change-Id: Ifba6ef7233886d1c9341e7912d6924cd9afbc4eb
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-04-23 06:08:12 +00:00
David Schulz 42f34c8a55 Dumper: Do not test fortran string on windows
Which doesn't exist on windows and will fail the test

Change-Id: I0dd005ccfcbf54faa716c642c5441c2086b3a32a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-03-09 07:10:57 +00:00
Christian Stenger 33b091bd40 QmlJS: Fix compile
..in general, with tests, and when using a namespaced Qt.
Amends b09a48599e.

Change-Id: I99e275e10df5eed741d021911a360457f0d0d2e7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2020-03-04 08:22:12 +00:00
Orgad Shaneh e4dab6b83e QmlJS: Fix compiler warning and add a missing include
qmljsdiagnosticmessage_p.h: In static member function ‘static QmlJS::Severity::Enum QmlJS::DiagnosticMessage::qtMsgTypeToKind(QtMsgType)’:
qmljsdiagnosticmessage_p.h:72:5: warning: control reaches end of non-void function [-Wreturn-type]
   72 |     }
      |     ^

Change-Id: I2183199bf257453e0af2998b739fae8c90f5c098
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io>
2020-03-03 17:28:52 +00:00
Christian Stenger 5d3e56b3b4 QmlDesigner: Fix compile with Qt5.11 and building tests
Change-Id: I96dea7de0d185c67ea3a26a42de0805bd60dc1d1
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
2020-02-24 13:40:07 +00:00
hjk d3d294cd81 ExtensionSystem: Some modernization
Mostly 'foreach'.

Change-Id: I5390d03bb5cc37c3674b61cea6f5d22bae554ed2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-14 09:50:07 +00:00
David Schulz e3c7b72003 LanguageClient: introduce new type for gorgeous formatted errors
Change-Id: Ia76bd768bcb6d33ce66319dddf8cc355a41ffa31
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-02-12 11:25:01 +00:00
hjk a44bfdd779 Provide an empty default IPlugin::extensionsInitialized()
And remove all empy re-implementations.

Change-Id: I19f0b4e55c042c96693ecb89766f97f0a97b54ae
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-07 10:21:34 +00:00
Igor Sidorov a9e40ad14c Add final specifies to classes
Warning -Wfinal-dtor-non-final-class in clang trunk

Change-Id: I2bf17064bf8898eab10b82b69583a283157766d0
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-02-05 09:33:55 +00:00
Cristian Adam 08202b9110 CMake Build: rename target qmljs to QmlJS
This is in sync with what qmake and qbs project have.

Change-Id: Id82bbd933a8331c3e2032e5068323c183b2a1814
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-01-16 17:32:24 +00:00
Christian Stenger 0e4f15996b Tests: Fix build on macOS as well
Amends d6745b488b.

Change-Id: Ic33b642347f2f6f553e674122775e0e07856c2f9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-01-10 08:26:35 +00:00
Christian Stenger 2cc3ac9bbd Tests: Fix build on Windows
Change-Id: I5679077ac3955e65dcce55cf229f10c245543236
Reviewed-by: hjk <hjk@qt.io>
2020-01-09 12:11:08 +00:00
Christian Stenger d6745b488b Tests: Fix build
Broke with a7dd0e50a2.

Change-Id: Ia58bae8e641e50d14d776b689f8ded17e306f4d9
Reviewed-by: David Schulz <david.schulz@qt.io>
2020-01-07 06:30:26 +00:00
Alessandro Portale 4a8e8f2b6e CMake build system: Depend qml tests on configuration
Don't build qml auto tests if the QmlJSTools plugin is disbled in the
configuration.

Change-Id: I05217446b087a9ab201c0ee8b1d37d5a0ddd6c8e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2019-12-23 10:11:25 +00:00
Alessandro Portale a766d89b40 CMake build system: Depend QmlProjectManager tests on configuration
Don't build QmlProjectManager tests if the QmlProjectManager plugin is
disbled in the configuration.

Change-Id: I354a23567528d02ba9d4207202800ff0175d9a6b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2019-12-23 10:11:21 +00:00
hjk e109b731ad Utils: Rename FilePathList to simply FilePaths
The exact storage type does not really matter here.

Change-Id: Iefec40f0f5909c8e7ba3415db4a11962694e1b38
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-12-18 08:43:18 +00:00
Eike Ziller 4e6142c932 Merge remote-tracking branch 'origin/4.11'
Conflicts:
	src/plugins/autotest/testresultspane.cpp
	src/plugins/cmakeprojectmanager/cmaketool.cpp

Change-Id: Iade695ac9cab8bf3e3a1abd6e2c71f4a19132ac0
2019-11-21 22:18:35 +02:00
hjk e8fe082bf9 Debugger: Swap BREAK and unused() in most dumper test
To avoid optimizing.

Change-Id: I43b39746811a822a0b5677920f9dc2f149291bc0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-11-20 11:31:57 +00:00
Eike Ziller 990f52957d Fix mapReduce with QVector input
The iterator type of QVector is just (const) T *, so we cannot call
::reference on it directly. Access via std::iterator_traits instead.

This is especially interesting in the light of Qt 6 replacing QList with
QVector.

Change-Id: Ib4e84f61302822e51b8984e2a44fea874efce81d
Reviewed-by: hjk <hjk@qt.io>
2019-11-12 13:48:24 +00:00
Eike Ziller 04f0123c43 Merge remote-tracking branch 'origin/4.11'
Change-Id: Ie951c531a5b2efd8e6b972c4d04b7f1c681c8ef9
2019-11-04 14:41:36 +01:00
Eike Ziller 53819123e7 Simplify RPATHs for qmake build
Use central rpath.pri for setting RPATHs and qttestrpath.pri for tests.
Simplify install names of plugins and libraries on macOS to be just
@rpath/libName, which follows convention better and makes setting up
RPATHs easier.

Preparation for moving tools one directory level down on macOS, to
be able to add a qt.conf for the tools generically.

Task-number: QTCREATORBUG-23120
Change-Id: I16625d48904abd3a7f4c2ad7bbba5916cdc400cd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-11-04 10:31:55 +00:00
Christian Stenger 8db784349e Tests: Fix compile after clean up
Amends 6371725dbf.

Change-Id: If583fba25ccb92756938bd7127be9461d289a680
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-10-23 12:19:45 +00:00
Christian Stenger 982344a799 Dumper: Remove old workaround
This part had been added for lldb provided by Xcode 8.
Even LLDB 3.10 is rather old, so probably no more necessary.

Change-Id: I823ee15869cc60cb8504fa6969758b5f7c3a74ab
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-10-15 04:42:06 +00:00
Ulf Hermann 3d21c7fdc3 Retain ".pragma library" when reformatting JavaScript files
For ".pragma library" there is a special flag in QmlJS::Directives.
We just need to actually set the flag and query it when re-emitting the
code.

Change-Id: Ia3455fda18aba3219b02ecf092bb28987a6ccef5
Fixes: QTCREATORBUG-22326
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2019-10-10 14:05:18 +00:00
Nikolai Kosjar ea0b7e4563 QmlJS: Fix build of tst_check.cpp
tst_check.cpp:151:36: error: reference to 'Type' is ambiguous
In file included from src/libs/qmljs/qmljscheck.h:30:0,
 src/libs/qmljs/qmljsstaticanalysismessage.h:42:6:
	note: candidates are: enum QmlJS::StaticAnalysis::Type
 src/libs/qmljs/parser/qmljsast_p.h:347:46:
	note:                 class QmlJS::AST::Type

Change-Id: I2f2af3e19fc0cbb7cef359c28d5f5d1505778882
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2019-10-07 08:03:46 +00:00
Eike Ziller 0491c1c06c Merge remote-tracking branch 'origin/4.10'
Change-Id: I4a22cdf4d7d5aab2083d5f9f7baaa38e510f83fd
2019-09-23 12:31:58 +02:00
hjk 89a36c7232 Debugger: Show FORTRAN strings
Fixes: QTCREATORBUG-22976
Change-Id: Ib435b2692301fe2e2d3378623e99bbcf16e27e46
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-09-23 08:50:17 +00:00
Cristian Adam 4a20a596c8 CMake Build: Use shared precompile headers
This will make the build directory size smaller, as only two
pch files will be generated. Not one for every target.

Change-Id: I3eec91e7536eab1c62bff8843f075f0ef7b5fff6
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2019-09-19 11:38:34 +00:00
Eike Ziller 097892cc10 Merge remote-tracking branch 'origin/4.10'
Change-Id: I887fbf79ebfdf2af2719cb0d8aa56ab3dcb08fab
2019-09-17 16:20:52 +02:00
David Schulz f0ad5813b9 LanguageClient: more FileName to FilePath renaming
Change-Id: I803211d462b442b6881a02e870d2cd816675e0d9
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-09-17 08:15:40 +00:00
Christian Stenger 6808c891fb Tests: Fix expectation for parent of COM port
Keep expected path in line with result when using QFileInfo.

Change-Id: I8d323212d1627b81de01582c368a4e9ffbba734c
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-09-12 08:50:22 +00:00
Eike Ziller 8df0653bf8 Merge remote-tracking branch 'origin/4.10'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/qmldesigner/components/stateseditor/stateseditormodel.cpp

Change-Id: Iffdf48e782a734107ea170ebb3812e997cea0e7b
2019-09-12 09:08:04 +02:00
Cristian Adam 486aaabd21 CMake Build: Use same Qt compiler defines for tests
Source code needed adjustments though.

Change-Id: I78b4610a6bb895a385c7c30a6c92c97a276b89dd
Reviewed-by: hjk <hjk@qt.io>
2019-09-10 15:05:59 +00:00
David Schulz d72632acd6 Debugger: add dumper for std::initializer_list
Change-Id: I223182cecf1f04dbc9908dc993a8800c1633c48b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-09-09 11:35:24 +00:00
Cristian Adam ad0dcb9668 CMake build: Build fix for tst_debugger_simplifytypes
simplifytype.cpp is included also in tst_debugger_dumpers, which
has a GUI pch.

Because CMake has global internal file structures, simplifytype.cpp
will get the PCH flags from tst_debugger_dumpers, which will be
reused in tst_debugger_simplifytypes.

This patch makes sure the PCH from tst_debugger_dumpers has all
the dependencies in tst_debugger_simplifytypes

Change-Id: I715cb551f2f75a619b21999ea521976470068c3f
Reviewed-by: hjk <hjk@qt.io>
2019-09-06 09:25:59 +00:00
Eike Ziller 38feea7e25 Merge remote-tracking branch 'origin/4.10'
Change-Id: Idfe86eb91c7a9a16f15d528a2a03beecca1cb208
2019-08-27 09:47:14 +02:00
Dmitry Nuzhdin 309e345818 Debugger: Fix mapping std::set in Locals window via gdb
Currently QtCreator incorrectly shows content of a std::set.
For example set {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
is shown as {0, 1, 2, 1, 2, 1, 2, 1, 2}.

Change-Id: Idaff66451827657ef129aa3d27895c43938e6fdc
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <hjk@qt.io>
2019-08-26 16:11:23 +00:00
Christian Kandeler 567a0db6dd Utils::Environment: Consider target OS type when sorting
That is, use case-insensitive sorting on Windows, so that e.g. "Path"
will not appear after "PROCESSOR_REVISION".

Fixes: QTCREATORBUG-22786
Change-Id: I42d469b6079037d1062dbd5b273f5aa8ade25e79
Reviewed-by: hjk <hjk@qt.io>
2019-08-22 10:29:22 +00:00
Christian Kandeler 6d3f236aab Utils::Environment: Use expanded values
The Environment class is supposed to support values with references to
other variables, but we failed to actually expand them in most places.

Fixes: QTCREATORBUG-22687
Change-Id: I108cb59d3b4571471423455240f6f4f1cf64bf05
Reviewed-by: hjk <hjk@qt.io>
2019-08-20 12:39:16 +00:00
Christian Stenger 10b32863ca Tests: Fix compile
Broke with e027ed5e96.

Change-Id: Ic79537865f42c4d6190d262fcf73399ed42b3035
Reviewed-by: hjk <hjk@qt.io>
2019-08-14 11:39:49 +00:00
Tobias Hunger 1e9ee0ce1d CMakeLists: Allow for internal plugin registration
add_qtc_plugin now takes a flag "INTERNAL_ONLY". These internal plugins
will not show up in the project configuration nor in the feature summary.

This flag is used by the tests that build plugins.

Change-Id: I1912dd62221b2624ed7326df381fbbceccefbdac
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-08-09 09:05:54 +00:00