Commit Graph

222 Commits

Author SHA1 Message Date
Björn Schäpers
f4545807de clang-format: Adapt to LLVM 16
Change-Id: I2e35f92db6de10b1e4bf173f0864f0cd893a011f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-11-06 18:56:32 +00:00
Artem Sokolovskii
afed126ba1 ClangFormat: Fix wrong comment indentation
Fixes: QTCREATORBUG-25539
Change-Id: Ifecc4bc2c0984319d858720d5bcd1788a9008e90
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-10-26 07:21:07 +00:00
Artem Sokolovskii
60cd36ed31 ClangFormat: Remove deprecated entries in clangformatconfigwidget
Task-number: QTCREATORBUG-28263
Change-Id: I48b0456f3c7bea88905cea40d1e447655da64676
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-10-19 12:39:31 +00:00
Eike Ziller
6becc304b8 Fix compiler warnings
- private field 'm_postId' is not used
- private field 'm_hostChecked' is not used
- missing field 'AcrossEmptyLines' initializer

Change-Id: I1e31c79e078bcb68d053202ad322299b92c4fa38
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-10-13 13:13:07 +00:00
hjk
bcb4db927b ClangFormat: Avoid warning about unused parameter
Style follows precedent in the file.

Change-Id: Id7e5ca3f4e9536cb803e8e0ff36db59fda3c41d5
Reviewed-by: David Schulz <david.schulz@qt.io>
2022-09-20 11:06:49 +00:00
Alessandro Portale
cc7d757a3a ClangFormat: Remove extra margins around ConfigWidget
Change-Id: I542ce841bf1144d4063190d1ec83fef7c1295248
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-09-16 07:28:31 +00:00
David Schulz
c9dc54802c ClangFormat: do not remove trailing spaces on indent calculation
Fixes: QTCREATORBUG-28150
Change-Id: I6f7b18e1afefb96da28295a2c3654d1c1ced4308
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-09-14 11:09:12 +00:00
Eike Ziller
2c51e4bc17 FilePath: Return optional bytearray for file contents
For differentiating between "error" and "empty file".

Change-Id: I2c019ceac625e7be3180afa4d47ae3a24df91c1d
Reviewed-by: hjk <hjk@qt.io>
2022-09-12 11:57:04 +00:00
Eike Ziller
0cd61061d0 ClangFormat: Add missing override
Change-Id: I8ed5918471935d21ae7036081cc45d6430c295d2
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-09-07 14:41:15 +00:00
Björn Schäpers
a1bfcbf30d ClangFormat: Fix compilation with LLVM 15
Change-Id: I7990e8331c317d3bc363be610b2585d37dee4445
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-09-02 09:40:41 +00:00
Eike Ziller
04e50438eb Utils: Remove Utils::optional
Since we are now requiring macOS 10.14 we can remove our local
implementation of optional and use std::optional for macOS too.

Change-Id: I2bd018261b68da64f7f031a812045dd7784697e1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
2022-09-01 06:58:04 +00:00
Lucie Gérard
a7956df3ca Use SPDX license identifiers
Replace the current license disclaimer in files by
a SPDX-License-Identifier.

Task-number: QTBUG-67283
Change-Id: I708fd1f9f2b73d60f57cc3568646929117825813
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-08-26 12:27:18 +00:00
Artem Sokolovskii
2d375eb776 ClangFormat: Move override checkbox to global settings
Moved override checkbox to global settings groupbox.

Change-Id: I70c97486a61f69274d059edc5095fe02c86fb04d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-24 15:11:40 +00:00
Artem Sokolovskii
17693bc415 ClangFormat: Fix list declaration
Fixed list declaration indentation.
Fixed function declaration with parameters on the new line.
Added tests for both cases.

Fixes: QTCREATORBUG-25011
Change-Id: Ida4f6ec4f407c5e5b015dc2c0afff110262d9645
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-23 09:07:59 +00:00
Jarek Kobus
71f0597e49 ClangFormatConfigWidget: Avoid using sender()
Use Utils::Guard instead of Utils::ExecuteOnDestruction.

Change-Id: I7f2be9c3864d9cac31423353d46dfa98660dd0af
Reviewed-by: hjk <hjk@qt.io>
2022-08-22 10:11:01 +00:00
Eike Ziller
64247bf571 Merge remote-tracking branch 'origin/8.0'
Reverts/comments out parts of 45f93a817a,
which needs to be resolved in a follow-up commit.

 Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	share/qtcreator/qml/qmlpuppet/qml2puppet/instances/qt5informationnodeinstanceserver.cpp
	src/plugins/clangcodemodel/clangmodelmanagersupport.cpp
	src/plugins/cmakeprojectmanager/cmakesettingspage.cpp
	src/plugins/python/pythoneditor.cpp
	src/plugins/qmldesigner/designercore/instances/nodeinstanceview.cpp
	src/plugins/scxmleditor/common/colorsettings.cpp

Change-Id: I7f0f7b7120e75a9fc3a8886bc57c17345cbb501b
2022-08-19 12:48:27 +02:00
Cristian Adam
c7cdd55dea ClangFormat: Fix build for LLVM 15.0.0
This fixes the CMake build of Qt Creator against LLVM 15.0.0

Change-Id: Icecd45821091c8c2b565246cb17ce5a6e5c49f36
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-18 09:43:30 +00:00
Artem Sokolovskii
74ac09346f CodeStyle: Remove edit pop-up
Removed the Edit pop-up on the CodeStyle page.
Now editing is available immediately after opening
CodeStyle tab.
I left a preview on the project CodeStyle page and
added a link to global settings.

ToDo:
In project CodeStyle page replace preview with CodeStyleEditor.
I'm not 100% sure that it is needed. If you have some thoughts
please write a comment.

Change-Id: I31032a97b9668b4f6b06fc6c5c704700fb44ee4f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-16 11:49:19 +00:00
Artem Sokolovskii
176c3906fe ClangFormat: Fix ignoring DisableFormat option
Task-number: QTCREATORBUG-27261
Change-Id: Ib9671f5c4499a39eb40e2a269dc73328fa5ad12f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-08-09 09:01:54 +00:00
hjk
031bf8d3a4 ClangFormat: Inline *.ui files
Change-Id: Ie6bcb486c70896894121434b1030861b029a46a2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-05 11:55:28 +00:00
Artem Sokolovskii
e572bdd90c ClangFormat: Move global settings in main page
The settings: indenting instead formatting, format while
typing, format edited on file save are moved to Code Style
page.

Change-Id: I28787b44602ce288961c778fe704ad2a1a05913f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-08-05 09:41:14 +00:00
Artem Sokolovskii
80b4e6a910 ClangFormat: Update clangformatchecks.ui file
File updated by scripts/generateClangFormatChecksUI.py

Fixes: QTCREATORBUG-27952
Change-Id: Ib7ffbf1f416a4edffc130a00ae8348d2ac9ed010
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-07-28 13:09:38 +00:00
Jarek Kobus
683ad910b8 Drop Qt5: Clang, QBS & Valgrind: Get rid of QOverload
Change-Id: I86697f07a8dce5674d6e748bce807df59b773227
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-07-20 13:13:27 +00:00
Eike Ziller
90a03391d7 Merge remote-tracking branch 'origin/8.0'
Change-Id: I37a1f78caf9ae258c6b052efa3be15b3dbcbe164
2022-07-12 13:56:23 +02:00
Artem Sokolovskii
a427527328 ClangFormat: Fix saving settings for standard code style
Task-number: QTCREATORBUG-27269
Change-Id: I8ddd30e55989dc3f9ee83d3cb1a3c2a794144da8
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-07-08 11:13:04 +00:00
Eike Ziller
91fb0cf123 Merge remote-tracking branch 'origin/8.0'
Conflicts:
	src/plugins/qmldesigner/qmldesignerprojectmanager.cpp

Change-Id: I5106bb632c2a3a144287097137be45b0894b9ee4
2022-07-04 08:53:22 +02:00
Artem Sokolovskii
2f18256633 Clangformat: Brings back some of checkboxes
Brought back checkboxes: format while typing, format on save.
Brought back format while typing feature.
Global checkboxes will be hidden in project settings,
and visible for global.

Change-Id: I193cf9e13b10de22091edb5fe04aef957dd74586
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-06-30 10:36:49 +00:00
Eike Ziller
6c98721efc Merge remote-tracking branch 'origin/8.0'
Change-Id: I552d201d09d62d21655176467088c6e48b8a2fe2
2022-06-29 15:29:49 +02:00
Artem Sokolovskii
8f1a9ea6d7 Revert "ClangFormat: Remove format while typing feature"
This reverts commit 323ba720db.

Reason for revert: The feature is needed

Change-Id: Iaf09ef91c49ff0c85c1b5906a1c1464bd8e4cae6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-06-29 11:53:04 +00:00
hjk
9e363c6421 Add plugintr.h files to all plugins
Except FakeVim, which had it before.

for i in [a-eg-z]*/*.json ; do
    upper=${i##*/}
    upper=${upper/.json/}
    lower=${i%/*}
    trfile=$lower/${lower}tr.h

    cat << EOT > $lower/${lower}tr.h
/****************************************************************************
**
** Copyright (C) 2022 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of Qt Creator.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 as published by the Free Software
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
****************************************************************************/

namespace $upper {

struct Tr
{
    Q_DECLARE_TR_FUNCTIONS($upper)
};

} // namespace $upper
EOT

    git add $trfile

    perl -pi -e "s/(${lower}_global.h)/\1\n    ${lower}tr.h/"  $lower/CMakeLists.txt

    perl -pi -e "s/(\"${lower}_global.h\",)/\1 \"${lower}tr.h\",/"  $lower/$lower.qbs

done

Change-Id: I15ebbaaa9443c57b391b9e143f592d8a0c9208a9
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-06-27 13:34:57 +00:00
Artem Sokolovskii
7020b0a44a ClangFormat: Convert old settings to a new ones
Added possibility to convert old setting to new one out of the box.
So now, if options FormattingInsteadOfIndentting or FormatOnSave
was set the mode will be set to Formatting.

Change-Id: I3c30ca8543d4fe25d1a44665d286f27ac2102c52
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-06-03 07:47:33 +00:00
Artem Sokolovskii
323ba720db ClangFormat: Remove format while typing feature
Change-Id: I6737c429694218d39fc06c9ef3ce502228e26a2a
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-25 17:51:32 +00:00
Cristian Adam
ee98c98676 CMake: Remove libclang references
Now that libclang is no longer used, make sure that all references
to libclang are gone.

Change-Id: I4b66eff992b22adb6a9c25d34053f2b36079583c
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-24 14:57:22 +00:00
Artem Sokolovskii
0b6fca2293 ClangFormat: Add disable option
- Added a possibility to disable ClangFormat plugin
- Removed unneeded properties from clangformatsettings

Change-Id: If71f46670e4fd3d2dac6d18c97df5a811504ed5e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-05-19 11:58:45 +00:00
Eike Ziller
c311b8e0fa ClangFormat: Ignore compiler warnings in clang-format headers
By making the include paths "system" includes.

Change-Id: Idf417195b921c2cd861efc24b814a30f5739eef5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-17 11:55:26 +00:00
Artem Sokolovskii
e30652ae55 ClangFormat: Build fix Qt 5
Change-Id: I5afec32314263dfa9db6f36b8871b43fde47f698
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-05-16 09:51:38 +00:00
Artem Sokolovskii
b634ec77fc ClangFormat: Fix override checkbox doesn't affect behavior
Override checkbox allows use clangFormat settings
from widget even if there is .clang-format file in
file's folder or parent folder.
It works for global settings and for project settings.

Change-Id: I03152f4b0e1b62b3ac038024e76cc9082fa37ec3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-16 07:00:07 +00:00
Eike Ziller
502223337d Merge remote-tracking branch 'origin/7.0'
Conflicts:
	src/plugins/clangformat/clangformatconfigwidget.cpp
	src/plugins/clangformat/clangformatplugin.cpp
	src/plugins/cppeditor/cppcodestylepreferencesfactory.cpp
	src/plugins/cppeditor/cppcodestylepreferencesfactory.h
	src/plugins/nim/settings/nimcodestylepreferencesfactory.cpp
	src/plugins/nim/settings/nimcodestylepreferencesfactory.h
	src/plugins/qmljstools/qmljscodestylepreferencesfactory.cpp
	src/plugins/qmljstools/qmljscodestylepreferencesfactory.h
	src/plugins/texteditor/codestyleselectorwidget.cpp
	src/plugins/texteditor/icodestylepreferencesfactory.h

Change-Id: I20ee430a7f0085774c9df1aa5487046ba4f404c1
2022-05-10 12:13:36 +02:00
Artem Sokolovskii
bbc44cfb90 ClangFormat: Fix settings checkboxes disappearance
- Fixed settings checkboxes disappearance after open a project
- Fixed impossibility to save settings

Task-number: QTCREATORBUG-26948
Change-Id: Ia73a61bf56b99adea9ed45c9d656860b185a3d7e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2022-05-10 09:40:53 +00:00
Artem Sokolovskii
9afe4f958a ClangFormat: Remove unneeded warning
- Remove warning when .clang-format file is absent
- Remove warning when a page is nullptr in addTab function

Change-Id: I4232bc77eaac56c78707fc37aaf75b00b8af9006
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-04-26 09:10:05 +00:00
Artem Sokolovskii
72dd90e512 ClangFormat: Start to use new file management
- Indenter uses .clang-format file from a dir of
editing file or from a parent dir. If there is no
such file then indenter starts to use file from a dir
with the name current CodeStyle settings.
- Test fixed

ToDo: Add file absentness processing in case of import

Change-Id: If09ef0c598899856b948c214e524bcfd5dad76e2
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-04-20 07:52:17 +00:00
Artem Sokolovskii
7574ec3e21 ClangFormat: Add the logical settings management
Now there are changeable and unchangeable settings,
as it works for usual codestyle settings.
They save parallel with codestyle settings but in another dir.
In general, the behavior became similar to usual codestyle settings.

ToDo: Make indenter use this settings instead standard one and
instead project settings when "override" checkbox is checked.

Change-Id: I639dbda296932bf9b967a11f1cc4fda120415ed9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-04-11 14:03:22 +00:00
Eike Ziller
c84380cdc8 Merge remote-tracking branch 'origin/7.0'
Change-Id: Ib2267ddbb702564a6e1c8f6b1db802bc9c45759d
2022-03-31 15:32:42 +02:00
Artem Sokolovskii
059d20ed22 ClangFormat: Fix unsaving properties for global settings
- Fixed behavior "Formatting mode" combobox settings isn't
saved after pressing "Ok" button when no one project is
open. Now it works as expected, settings save after press
"Ok" button.
- Added additional applying interface for ICodeStylePreferenceFactory
which allows pass-through apply call from dialog to the editor.

Note: it doesn't work with read-only code style profiles

Change-Id: If4f0c85e3105550db4ffd9860e94b678f0d9b386
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-03-30 16:32:08 +00:00
Christian Stenger
42d6704c4f ClangFormat: Fix build on Windows and macOS
Amends 355c5a7c73.

Change-Id: I4c350d92766e35fca2230c756fb07772e0524c08
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-03-30 14:58:49 +00:00
Christian Stenger
355c5a7c73 ClangFormat: Avoid interfering llvm libs for qbs as well
Task-number: QTCREATORBUG-24998
Change-Id: I7dbf0f08358ea0dca096074320ac6446c65cfe68
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-03-29 12:09:57 +00:00
Eike Ziller
780f5da7c4 Merge remote-tracking branch 'origin/7.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/studiowelcome/recentpresets.h
	src/plugins/studiowelcome/userpresets.h

Change-Id: Ie573b945eb28347a36ee1b3582fbd6ab0c0f866c
2022-03-28 15:10:11 +02:00
Christian Stenger
de88d00ca4 ClangFormat: Fix build with Qt5
Amends 4022ed547d.

Change-Id: I66fc822443c8353209446cf7973a3db9dc52debe
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-03-28 09:00:23 +00:00
Artem Sokolovskii
4022ed547d [ClangFormat] Remove redundant checkboxes
- Removed redundant checkboxes
- Removed apply button
- Combined checkboxes to combobox

ToDo:
- Specify behavior for global and project settings

Change-Id: I39a00ac8439ae7be3041890f7fc882849685d102
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-03-25 14:17:48 +00:00
Christian Kandeler
b97c9494af ClangFormat: Adapt to LLVM 15 API change
Task-number: QTCREATORBUG-27170
Change-Id: I3676792da351f52199b1bf303c596e581469d7a5
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-03-25 13:36:50 +00:00