Commit Graph

29 Commits

Author SHA1 Message Date
Eike Ziller
6477a07654 Merge remote-tracking branch 'origin/4.13' into master
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/clangtools/virtualfilesystemoverlay.h
	src/plugins/mesonprojectmanager/project/buildoptions/mesonbuildstepconfigwidget.ui
	src/plugins/qmldesigner/designercore/model/abstractview.cpp

Change-Id: I5013bd8fdd28d79cdea74380bec01d4c106adfaf
2020-08-31 14:49:19 +02:00
Christian Stenger
0de1668802 Fix qmake build of unittests
This basically continues / amends work done
with e1c88116b3.

Change-Id: Ia8b3a4694e7fea4c15e344839f87c11fbe8fbbf4
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-08-27 04:28:52 +00:00
Christian Stenger
65b3d9028f Minor preparation for Qt6
Change-Id: Id47e7a7ed28dffd12403f2fec72370a8068ad0c0
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2020-07-21 09:07:26 +00:00
Christian Kandeler
f0316dbae9 QbsProjectManager: Do not call qbs config unnecessarily
- We know the name of the profile for a given kit. There is no need to
  call qbs config to retrieve it.
- Do not update a profile upon kit removal.

Change-Id: I1a555233091c69d9ea6daa1e4a11737719c37fdf
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-12-06 11:04:43 +00:00
Christian Kandeler
6913947986 QbsProjectManager: Switch to an out-of-process approach
That is, do not link to the qbscore library anymore. Instead, use the
JSON-based API.
Advantages:
    - We can build Qt Creator with qbs support without qbs being present
      on the build machine.
    - Smaller memory footprint for Qt Creator, as the qbs build graphs
      are now being managed by a separate process.
    - Potential crashes in qbs will not kill the Qt Creator process.

Fixes: QTCREATORBUG-20622
Task-number: QTCREATORBUG-22904
Change-Id: If7d344b0ac65a99ff0a3a3db215d61b8d903e47e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2019-11-21 13:32:18 +00:00
hjk
e9d8ff21b0 Remove unused QObject parent arguments on options pages
In the new plugin setup scheme they are data members of the
plugin pimpl and never use the parent.

Change-Id: I28fe150393e8159064dcfbd113ce0320af50fd58
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-11 06:03:40 +00:00
hjk
6f37348b4c Replace static_casts by QOverload where possible
Mainly to get rid of the QProcess::finished deprecation warning.

Also adjust coding style in the surrounding connects when needed.

Change-Id: I12f9b248c7974b892c4a069356e578e80f8c59e9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2019-02-26 15:18:14 +00:00
Orgad Shaneh
9c688e8f9e QbsProjectManager: Use member-initializers
Complements 11632bbedd.

Change-Id: Id94f53ae1de871aa16257a043f4b95c971c11d6f
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-07-30 20:12:58 +00:00
Alessandro Portale
11632bbedd QbsProjectManager: Modernize
modernize-use-auto
modernize-use-nullptr
modernize-use-override

Change-Id: I8a67b87e614f54554f9ca50c9f5e3f3297458ec1
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-07-27 12:35:12 +00:00
Christian Kandeler
fd710f15c9 Update qbs submodule
To HEAD of 1.12 branch.

Change-Id: If93ae9f977882a1f0663c93e2aff21511322395f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-06-01 11:24:05 +00:00
Eike Ziller
d1ec4c1204 Clean up options page category display name and icon set up
In cases where plugins extend an existing settings category of a plugin
that they depend on anyhow, they do not need to specify the translated
display name and icon for that category.
Some options pages were already not setting the icon, but still the
translated name, which makes even less sense.
Clean up this mess, only setting display name and icon if that is
necessary.

Change-Id: I8bc9d0c51b11d48f1d847337838704d663e70b45
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2018-04-23 11:12:26 +00:00
Alessandro Portale
5915779e81 ProjectExplorer: Make the Options/Kits Category icon themable
Change-Id: I70c3fffd11b217937d6a85e88da1de688031b8e0
Reviewed-by: hjk <hjk@qt.io>
2018-02-28 18:36:00 +00:00
hjk
c4b3779b42 QbsProjectManager: Cut down visible QbsManager interface a bit
Change-Id: I2c2d50f1ec0c7fdb5e9a629728f8db90cdb43b75
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2018-02-02 11:27:40 +00:00
hjk
5afab6f018 ProjectExplorer: Create and populate 'Kits' settings category
Kits are a central concept and structure in anything build and run
related in Creator, their organization is crucial for the functionality
of Creator and deserve to be emphasized over other, often more cosmetic
settings.

This is the first step of two, the second step would be moving
the Device (list) page also in this category, possibly after some
reorganization in the Device category.

Change-Id: I4abc89472d0575c691fc9e5051397833126e5456
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-01-24 16:35:39 +00:00
Christian Kandeler
ff0d67dcd2 Update qbs submodule
To HEAD of 1.11 branch. Also do the adaptations necessary because of the
branch switch.

Change-Id: Ief69ef014c10397c14fcd68a9ca770d1391d5491
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2018-01-23 08:55:40 +00:00
Tobias Hunger
4ef01c961e app_version.h: Make IDE name configurable
Change-Id: I993f452c8d09cf89e9a2958fc8e36b7d2c17ee6f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-09-05 10:19:48 +00:00
Jake Petroules
829bf2b9e6 Qbs: move both Qbs settings pages into a single page in Build & Run
Now all build system settings (qmake, CMake, Qbs) are in the same place.

Change-Id: I006168de6ebb1a93b141e81f00788fa7097ab6fd
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2017-06-26 17:44:56 +00:00
Christian Kandeler
d5066ac06e QbsProjectManager: Introduce QbsKitInformation
... and use it to allow users to set custom properties in the
corresponding profile. This replaces the idiosyncratic and more
complicated approach we had before, when that was done in the qbs
profiles settings page. The profiles view is now read-only.

Change-Id: I0c29c1ac0c510e17d685e7bbaa38b54c8100ddb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2017-06-20 12:00:11 +00:00
Tobias Hunger
25fbcca96b KitManager: Get rid of KitMatcher class
Use std::function instead. Clean up API while at it.

Change-Id: I6e401ab57f5375e36710c30508c596af3f4b3385
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-01-18 10:39:16 +00:00
Christian Kandeler
f911ddba86 QbsProjectManager: Remove a redundant header file
Somebody mistakenly introduced qbsconstants.h, even though
qbsprojectmanagerconstants.h already existed for that purpose. Merge
these two files and remove the newer one.

Change-Id: I6103509d902880d0e9c181873ec4cf56acf04424
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-10-26 08:21:31 +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
Orgad Shaneh
a22d8bcaa3 QbsPM: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: I841454b0815bc697ae2372dbc6d2caa59d7dc3e8
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2016-06-29 13:03:03 +00:00
Christian Kandeler
6274875ab9 QbsProjectManager: Allow to use default qbs settings dir.
By default, we use a dedicated qbs settings dir located in Creator's
settings path, so that different instances of Qt Creator won't
overwrite each other's profiles. Users for whom this is not a concern
can now choose to use the normal qbs settings dir.

Change-Id: I0119228a48cfee430686ab51f69864866f4ba270
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2016-03-04 12:20:21 +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
Robert Loehning
afcfc5f73f Fix compile in QbsProfilesSettingsPage
Change-Id: Ie1d14f22ed6f276da52525053e56999bf462e968
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-03-24 11:00:00 +00:00
Sergey Belyashov
7fa58f1d99 Fix missing of some translations
Task-number: QTCREATORBUG-13649
Change-Id: I69f78b3b8d2366003bfce81a2afba0068e716d22
Reviewed-by: hjk <hjk@theqtcompany.com>
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-03-24 07:04:46 +00:00
Christian Kandeler
6804c21179 QbsProjectManager: Make QbsManager instance available as a Singleton.
We now use it in contexts that do not have access to a Project.

Change-Id: I96ebad60f5fc354b004092748033d83c766a305d
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2014-11-26 13:24:30 +01:00
Eike Ziller
a47fbb8309 Merge remote-tracking branch 'origin/3.3'
Conflicts:
	src/plugins/coreplugin/coreplugin.cpp
	src/plugins/coreplugin/themesettingswidget.cpp
	src/plugins/qbsprojectmanager/qbsprojectmanager.cpp
	src/plugins/qbsprojectmanager/qbsprojectmanager.h
	src/plugins/qmlprofiler/qml/Overview.js
	src/shared/qbs

Change-Id: Ibe92c166fc5bfbcb4d6964e50ca7298d8459d60e
2014-11-24 15:43:48 +01:00
Christian Kandeler
bdb9a14de0 QbsProjectManager: Allow users to override profile properties.
Creator derives its qbs profiles from the kits and overwrites
them as it sees fit, which means users cannot set custom properties
by editing the respective settings files or using the normal
qbs command-line tools. Therefore, we need to provide them with
a way to do this from Creator itself. For this purpose, we
introduce a settings page where a user can add or override
qbs properties per kit. The resulting "diff" is then applied
whenever the profiles are written, so qbs will take the
custom properties into account.

Change-Id: I909f5243c65647f62c91a2afa242fd531ddaf915
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2014-11-10 11:05:11 +01:00