Commit Graph

87 Commits

Author SHA1 Message Date
hjk
473a741c9f Utils: Rename FileName to FilePath
More in line with QFileInfo terminonlogy which appears to be
best-of-breed within Qt.

Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-28 12:23:26 +00:00
hjk
166cb39709 iOS: More FileName::appendPath -> pathAppended changes
Change-Id: I3db6b1778e6e47e26e243fb2609c481651aa91fe
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-05-17 09:26:57 +00:00
hjk
d116559cd8 ProjectExplorer: Drop Detection argument from ToolChain constructor
This was used wildly inconsistently. Use a setter instead in
circumstances where the context is reasonably clear.

The assumption is that this will always be done at some time in all
code paths.

Use a new 'Uninitialized' value to avoid triggering the first update.

Change-Id: I82c38cb9da3ccdbd8fbae8beefcbfa0e559ff794
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-10 14:38:45 +00:00
hjk
881b59c36e ProjectExplorer: Replace ToolChainFactory::supportedLanguange
... by a member-based approach.

Change-Id: I5c7fef196df6c37fd26c60a58c774426eca562a0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2019-05-09 14:43:23 +00:00
Christian Kandeler
d6dfa7fa77 ProjectExplorer: More registerKit() simplifications
Change-Id: I61c9e9886f3952b2823433a5c94aedd441ebe7f1
Reviewed-by: hjk <hjk@qt.io>
2019-03-12 14:44:37 +00:00
Christian Kandeler
3aea3a13cb ProjectExplorer: Refactor KitManager::registerKit()
The interface of this function was rather unfortunate. In particluar,
the fact that it took ownership of the std::unique_ptr that was passed
in required some weird boiler plate code at all the calling sites.
Instead, it now becomes a proper factory function.

Change-Id: Iecdc6f6345232fc0f0a08bffaf8f1780edb57201
Reviewed-by: hjk <hjk@qt.io>
2019-03-12 10:16:33 +00:00
Christian Kandeler
83dd031960 ProjectExplorer: Rename KitInformation to KitAspect
The name "KitInformation" does not properly convey the fact that it
represents a certain *aspect* of a kit. The same goes for
"KitConfigWidget", which in addition was inconsistent with
"KitInformation".
We now use "KitAspect" and "KitAspectWidget".

Change-Id: I9804ee4cedc4d61fad533ea1dd4e4720e67fde97
Reviewed-by: hjk <hjk@qt.io>
2019-02-11 11:55:01 +00:00
hjk
2da48a47d7 iOS: Move updateAutomaticKitList() trigger closer to its user
This removes the IosPlugin::kitsRestored() member that does not
fully fit the standard plugin implementation pattern.

Change-Id: Iedd79e5326b85b189673c19e1920e21c34cd03bb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-02-01 08:18:38 +00:00
Alessandro Portale
f5974ad993 Fix warning: "Don't call QVector::first() on temporary QList/QVector"
[-Wclazy-detaching-temporary]

Change-Id: I23f5cbd80bb92d3f9f1bfb5ae07493818958c5b0
Reviewed-by: hjk <hjk@qt.io>
2019-01-28 11:03:39 +00:00
Alessandro Portale
39400381b3 iOS: Modernize
modernize-*

Change-Id: I64d2bb4320c9b444bc13e90099600628eac1f5a6
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2018-11-13 15:44:34 +00:00
Orgad Shaneh
bdc2b4b59f Remove hard-coded disabling of debug logs
Instead, set the default level of all logs to QtWarningMsg.

The call to setFilterRules overrides the user preferences in qtlogging.ini.

Change-Id: Id5f6cd550d14ff7f45ae04c5d3110e0bafb0f072
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2018-10-13 16:36:58 +00:00
Tobias Hunger
f685e2bfb4 KitManager: Use unique_ptr to manage kits
Change-Id: I8c66290f0d23afe37673bd858f7db135c8232a78
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
2018-07-25 10:30:27 +00:00
Eike Ziller
bb28b10add Introduce static_container_cast
Casting all elements of a container, similar to qobject_container_cast.

Change-Id: Ib455fe8c7fa0d4acda7e29685c3100638a0152f8
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-05-29 13:44:51 +00:00
Vikas Pachdha
c3688b901f Ios: Fix incorrect Xcode version detected
pkgutil always return the Xcode path installed via app store

Task-number: QTCREATORBUG-18091
Change-Id: I47b5a9c3f3a482feea2dc903dbff3441a3930ab6
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-10-10 17:33:38 +00:00
Vikas Pachdha
fc3469eb1e iOS: Fix invalid device asserts during automatic kit update
Change-Id: I744022ca4441880995f9b965bf7092d6ec985886
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-07-28 06:46:17 +00:00
Vikas Pachdha
78f9ff036f Remove code noise
Change-Id: I34d5df0be0a7772f9e08635afb398d6289840a92
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-07-05 12:30:46 +00:00
Vikas Pachdha
18638d5560 iOS: Add UI for simulator device management
UI under devices tab to enable iOS simulator device management

Task-number: QTCREATORBUG-17602
Change-Id: I66dbf57f07dac107c253518ded5ffd78b8ce4555
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-07-05 12:29:13 +00:00
Jake Petroules
0784dd20fe Refactor iOS toolchain handling
This significantly simplifies the implementation, properly handles
C vs C++ compilers, and defaults to 64-bit architectures for iOS devices
and simulators.

LLVM-GCC support has been removed, as the last version to support it was
4.6.3, which is far below the version of Xcode we still intend to
support. The toolchains are also given more sensible names
("Apple Clang") instead of iphonesimulator-clang and iphoneos-clang, as
the there is now only one compiler for all Apple platform targets, and
there is one entry of the Apple Clang compiler per supported
architecture.

The different to the end user is minimal except that the compilers are
named better. The number of kits and their configurations remain the
same, but this patch paves the way for tvOS and watchOS support.

Change-Id: I6e2b17f8c17d9dd504f0ad540e08782f291b73c0
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
2017-06-07 15:59:45 +00:00
Vikas Pachdha
3a9f9d5eac iOS: Fix stack overflow issue
Change-Id: Ic71e2af2cff41c61c85f4798f06144b36e459448
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-06-07 08:53:26 +00:00
Tobias Hunger
7bf81fe53e Ios: Simplify code
Initialize pointer to nullptr and use that as indicator that IosConfiguration
was initialized instead of a static bool.

Change-Id: I7d1c5b38e25282d065ddeb4ba1415c28932aa64b
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-05-31 08:49:18 +00:00
Robert Loehning
d98276e06d iOS: Fix compilation on Windows
Change-Id: I047d460ca446378781a268005216bdb8d608930b
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-03-16 11:40:30 +00:00
Orgad Shaneh
5d1e12faad iOS: Fix compilation
Change-Id: Ieb5357a25240a64c4461325cc7165b68df3e71b9
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-03-14 19:49:11 +00:00
Vikas Pachdha
7c95aedfd3 iOS: Add API's to get provisioning data
Change-Id: I927b2dbaa9e6c175d90b1407418570bbd2a3d96e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-03-14 17:15:57 +00:00
Tim Jenssen
2631ffabd5 Remove spaces in initializer lists
Format initializer lists code style like.

Change-Id: Ib82c235e4ba7dc75ee96a7abc0c47eff7b0a9013
Reviewed-by: hjk <hjk@qt.io>
2017-02-22 16:25:09 +00:00
Filippo Cucchetto
4b1f8f3609 ProjectExplorer: Added support for registering custom languages
Change-Id: I728a2ed1ef7d9f44d7c2b59d27d6e23444cd3bb5
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-01-23 11:19:11 +00:00
Tobias Hunger
96c6033d39 QtVersionManager: Rename QtVersionManager::unsortedVersions(...)
Rename QtVersionManager::unsortedVersions(...) to QtVersionManager::versions(...).

This is what you should use, so make that the obvious choice.

Change-Id: Ice6e195d9aad7968ce87d378323627347b22bc74
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
2017-01-18 10:40:12 +00:00
Tobias Hunger
6553c3c99e BaseQtVersion: Allow for a predicate when retrieving Qt versions
Make methods used to retrieve Qt versions from the Qt versions manager
take a predicate to select the interesting version.

Change-Id: I9218c57bae6d5033d49d618dfc0da41fe578444d
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-01-17 13:13:48 +00:00
Eike Ziller
b1f1ccb32e Merge remote-tracking branch 'origin/4.2'
Conflicts:
	src/plugins/android/androidbuildapkstep.cpp
	src/plugins/genericprojectmanager/genericproject.cpp

Change-Id: I3484b668f9323ed0c05de99f8dfed07c9e65ab98
2017-01-11 09:29:37 +01:00
Vikas Pachdha
1e8c0c3632 iOS: Find Xcode version
To enable/disable the version specific features

Change-Id: Ia4cbe83f0aae366f517d8b46f322d8202dbbe3c8
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-01-04 09:51:44 +00:00
Tobias Hunger
43c6e97529 ToolChainKitInformation: Remove setToolChain(kit, language, toolchain)
Replace that with clearToolChain(kit, languguage). The only use-case
for that method was to unset toolchains in a kit.

Change-Id: I8cffe39393281f424fa8e044e6b90c5cea17ac90
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-12-13 14:34:16 +00:00
Vikas Pachdha
9f0bb3c93a iOS: Add C toolchain
To fix kits complaining about incorrect C compiler and ABI
incompatibility

Task-number: QTCREATORBUG-17135
Change-Id: I69ece613453463b97d193bb1740044d16f62172f
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-11-25 12:37:53 +00:00
Eike Ziller
85e8bdb3ba iOS: Remove unused signal
Change-Id: I1d949b01f93485a12bd37142cea02f5b96b7acbb
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-11-01 11:54:19 +00:00
Eike Ziller
02a39c013f Merge remote-tracking branch 'origin/4.1' into 4.2
Conflicts:
	src/plugins/ios/iostoolhandler.cpp
	src/shared/qbs
	src/tools/3rdparty/iossim/iossim.qbs
	src/tools/3rdparty/iossim_1_8_2/main.mm

Change-Id: Ied9cafec4f1ee93d9e524f095f5c6b1480b2f054
2016-10-17 16:16:07 +02:00
Vikas Pachdha
2b0daf42ce iOS: Replaces ios_sim tool with simctl
Task-number: QTCREATORBUG-16947
Change-Id: Ia28d5e4f9f220d566bd64da73989e8c24ef3eb37
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2016-10-17 13:46:34 +00:00
Alessandro Portale
ee6b19cb39 Themable, HighDpi Android/iOS device icons
Also used as option category icons

Change-Id: I40916ff4683554a3e7de7126d737286eba4a525f
Reviewed-by: Vikas Pachdha <vikas.pachdha@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2016-09-27 14:18:04 +00:00
Tobias Hunger
cb14fb0d71 Kits: Save several ToolChains per kit
BREAKS BACKWARD COMPATIBILITY OF TOOLCHAIN SETTINGS!

* Convert old ToolChainKitInformation to new version
* Store several toolchains in one kit (one per language)

Change-Id: Ia59a2ad067c57971ec34ce9b2e43758344443755
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-07-14 15:34:06 +00:00
Tobias Hunger
ca04c4c264 ToolChainFactory: Add support for different languages
* Add a pure virtual method to get supportedLanguges with

Change-Id: Ida4445ca045c90fb9f7656a661af83e5b6801b30
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-07-14 15:33:40 +00:00
Tobias Hunger
1304b250eb ToolChain: Make sure all ToolChains have a language set
* Add code to toolchains
* Assert that this is the case in the toolchainmanager

Change-Id: I82452689e83279fd9d1afb3140b0070bef9b6cd8
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
2016-07-14 15:33:33 +00:00
Orgad Shaneh
3410fee65f Ios: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: I1b25f0108939d87e859d0407a35f75b88fa0edc3
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2016-06-30 12:12:09 +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
Eike Ziller
79c27ec6f1 Avoid running qmake by using unsortedVersions
Use unsortedVersions() instead of versions() where possible, since
versions() sorts by version numbers, and therefore needs "qmake -query"
to have run.

Change-Id: I76a05f1647d2baacbd33829c6b3bf719a1c8dcbb
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-11-23 14:48:55 +00:00
Tobias Hunger
ac1d9abd07 ToolChainManager: Refactor toolchain restoration
This should be simpler to follow now.

Fix autodetection to return not only the newly detected toolchains,
but also those that are re-detected (taking their definition from
the alreadyKnown list passed to the autodetect method where possible).

This avoids running lots of toolchains during start-up, but still
enables us to fix QTCREATORBUG-12751

Task-number: QTCREATORBUG-12751
Change-Id: Ie74e7cffb2b014a6132cc8559db232397344f2f1
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-10-27 12:16:16 +00:00
Eike Ziller
e3f770a50c iOS: Refactor iOS tool chain and kit auto detection
It was all done in one huge, unreadable method.
The refactoring along-side fixes the following:

- iOS tool chains were demoted to manual at start up because there
  was no tool chain factory that would auto detect them
- a QTC_CHECK failed because single Qt Versions could appear multiple
  times in the architecture->Qt version map, because each architecture
  is present in two abis (32-bit and 64-bit)

The refactoring also removes unneeded automatic conversion
from non-iOS Qt version to iOS Qt version, and removes considering GCC
toolchains (which were not handled anyhow, because only Clang
"platforms" were considered).

Change-Id: Ic9ae797646f159ed45959fc797990aa98f2136fb
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-10-19 07:20:53 +00:00
Eike Ziller
3286113ea8 Merge remote-tracking branch 'origin/3.5'
Change-Id: I4d74ad26046136ff2d38cfc1015b502009b2b344
2015-10-07 10:54:25 +02:00
Eike Ziller
bbc07bd47e iOS: Do not hardcode Qt version in iOS kits
Since Qt installers nowadays (since Qt 5.3) register all Qt patch
releases of the same minor version with the same ID, the Kit will not be
updated (because the Qt 'is the same'), so it should use %{Qt:Version}
instead of hardcoding the version.

Change-Id: Ieb8b766490b3c6297fa11802c6e13724658795d5
Task-number: QTCREATORBUG-15128
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2015-10-01 16:31:22 +00:00
Tobias Hunger
c275dac084 Rename toolchain type constants in ProjectExplorer
Change-Id: I56f5b7373846bb091456c050eb1ff3495ca2dd72
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-07-14 14:44:07 +00:00
Tobias Hunger
e6d1141e1e ToolChain: Get rid of type() in favor of typeId()
Change-Id: I8fc68c266acb55a7c3e014697a7b526784914f7a
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-07-14 14:40:03 +00:00
Tobias Hunger
cbf302893d ToolChain: Turn id into a QByteArray
That should take a couple of bytes less to store. Make sure this
change is invisible to the configuration files.

Change-Id: If5e73b52493c9164de9e342021d8153d274b350f
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-07-09 11:07:12 +00:00
Friedemann Kleint
991cf84991 Clean exported headers of the Debugger plugin.
Change-Id: I70ca6773e0f6aa6d80a441f8920d7f5d2418e1bf
Reviewed-by: hjk <hjk@theqtcompany.com>
2015-02-26 14:49:20 +00:00
Eike Ziller
9926fc2ab1 Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'
Conflicts:
	src/libs/utils/tooltip/tipcontents.cpp
	src/libs/utils/tooltip/tipcontents.h
	src/plugins/android/androiddeployqtstep.cpp
	src/plugins/baremetal/baremetalconstants.h
	src/plugins/baremetal/baremetaldevice.cpp
	src/plugins/baremetal/baremetaldevice.h
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwidget.h
	src/plugins/baremetal/baremetaldeviceconfigurationwizard.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp
	src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h
	src/plugins/baremetal/baremetalplugin.cpp
	src/plugins/baremetal/baremetalplugin.h
	src/plugins/baremetal/baremetalruncontrolfactory.cpp
	src/plugins/baremetal/baremetalruncontrolfactory.h
	src/plugins/cppeditor/cppcodemodelinspectordialog.cpp
	src/plugins/cppeditor/cppdoxygen_test.cpp
	src/plugins/cppeditor/cppdoxygen_test.h
	src/plugins/debugger/breakpointmarker.cpp
	src/plugins/debugger/debuggeritemmodel.cpp
	src/plugins/debugger/debuggeritemmodel.h
	src/plugins/debugger/loadcoredialog.cpp
	src/plugins/genericprojectmanager/cppmodelmanagerhelper.cpp
	src/plugins/projectexplorer/addnewmodel.cpp
	src/plugins/projectexplorer/addnewmodel.h
	src/plugins/projectexplorer/jsonwizard/jsonfieldpage.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.cpp
	src/plugins/qmlprofiler/abstracttimelinemodel.h
	src/plugins/qmlprofiler/notesmodel.cpp
	src/plugins/qmlprofiler/qml/CategoryLabel.qml
	src/plugins/qmlprofiler/qml/MainView.qml
	src/plugins/qmlprofiler/qml/Overview.js
	src/plugins/qmlprofiler/qml/Overview.qml
	src/plugins/qmlprofiler/qml/TimeDisplay.qml
	src/plugins/qmlprofiler/qml/TimeMarks.qml
	src/plugins/qmlprofiler/qmlprofilertimelinemodelproxy.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.cpp
	src/plugins/qmlprofiler/sortedtimelinemodel.h
	src/plugins/qmlprofiler/timelinemodelaggregator.cpp
	src/plugins/qmlprofiler/timelinemodelaggregator.h
	src/plugins/qmlprofiler/timelinerenderer.cpp
	src/plugins/qmlprofiler/timelinerenderer.h
	src/plugins/qmlprojectmanager/QmlProjectManager.json.in
	src/plugins/texteditor/findinfiles.cpp
	src/plugins/vcsbase/vcsconfigurationpage.cpp
	src/shared/qbs
	src/shared/scriptwrapper/interface_wrap_helpers.h
	src/shared/scriptwrapper/wrap_helpers.h
	tests/auto/qmlprofiler/abstracttimelinemodel/tst_abstracttimelinemodel.cpp
	tests/system/suite_debugger/tst_debug_empty_main/test.py
	tests/system/suite_debugger/tst_qml_js_console/test.py
	tests/system/suite_debugger/tst_qml_locals/test.py

Change-Id: I67540b648f8b162496f4aa606b04d50c7c9125c6
2015-02-12 17:29:21 +01:00