Commit Graph

173 Commits

Author SHA1 Message Date
hjk
3f528de7db ProjectExplorer: Fix compilation with Qt 6.6
appoutputpane.cpp:272:12: error: cannot convert ‘const QList<ProjectExplorer::Internal::AppOutputPane::RunControlTab>::iterator’ to ‘ProjectExplorer::Internal::AppOutputPane::RunControlTab*’ in return

Caused by "QList: deprecate iterator<->pointer implicit conversions"
0220484329029fc7598dfe11ba35ea10c3126477
b6cbd9c43afc7e005c1f78e1d0f700524930ed71

Change-Id: I596ead9deafca1154b5a79495e707137b61a14d5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
(cherry picked from commit 8ee6b14f00)
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2023-01-12 11:06:25 +00:00
Marc Mutz
8eb4d52342 Port from qAsConst() to std::as_const()
We've been requiring C++17 since Qt 6.0, and our qAsConst use finally
starts to bother us (QTBUG-99313), so time to port away from it
now.

Since qAsConst has exactly the same semantics as std::as_const (down
to rvalue treatment, constexpr'ness and noexcept'ness), there's really
nothing more to it than a global search-and-replace.

Task-number: QTBUG-99313
Change-Id: I88edd91395849574436299b8badda21bb93bea39
Reviewed-by: hjk <hjk@qt.io>
2022-10-07 13:47:53 +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
Jarek Kobus
ffb282eb47 AppOutputPane: Avoid using sender()
Change-Id: Id24f38d376de66c0d6e91ed37165506c78e33dde
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-07-21 10:11:05 +00:00
Eike Ziller
3ec87e37ee Merge remote-tracking branch 'origin/8.0'
Conflicts:
	src/plugins/todo/optionsdialog.cpp
	src/plugins/todo/todoprojectsettingswidget.cpp

Change-Id: I24ca90c2fc2cd707df901d42694df6d0e27d696d
2022-07-20 12:03:40 +02:00
Jarek Kobus
e6001ae2a0 AppOutputPane: Update buttons after stop was initiated
Otherwise it's possible to quicky press the stop button
again before the process actually finishes and this leads
to inconsistent state transition, resulting in assert
being triggered.

Change-Id: I4618a00cb9cea666992bc9ee6b60b3b3a0d9a8b9
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2022-07-14 13:12:56 +00:00
Christian Kandeler
7f94e68b74 ProjectExplorer: Fix index confusion in app output pane
There's a QTabWidget and a list of RunControlTabs, whose indexes got
confused in several places.
Fix this and decrease the likelihood of the problem occurring again by
never using indexes for the RunControlTab list.

Fixes: QTCREATORBUG-27743
Change-Id: I8a83b0c802fe76a09b4eba0da999a52fdeb6ddac
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2022-07-07 08:19:27 +00:00
hjk
17ee387756 ProjectExplorer: Dissolve a few uses of Runnable
Change-Id: I71b8f1b00e488360e7f9c136912bc64b5a76609a
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2022-05-30 14:10:59 +00:00
hjk
0a875d40ba ProjectExplorer: Always compile WinDebugInterface
Makes it easier to re-shuffle calling code on non-Windows.

Change-Id: Ia6d7e313e9eb42fc7b19a469c1a6f33d226d1e88
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-05-09 13:24:12 +00:00
hjk
ad2fa94ff1 ProjectExplorer: Regularize namespace setup in appoutputpane.cpp
Change-Id: If87fbed5ec054c6180c43ec8190b9993621daa56
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-03-31 15:42:07 +00:00
Leena Miettinen
34ecdc3008 UI text: Replace "pane" with "view" for "Output panes"
Some occurrences of [Output] pane were still found in
translatable strings.

Change-Id: I70c0b6562790b7eb835b2f6a1522fa34fb9c2b51
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-03-09 15:31:05 +00:00
Thomas Hartmann
af24e428f2 Rename 'output pane' to simply 'output'
Change-Id: If45e053a32855bca68dc71cb5da22f981146e45b
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
2022-03-01 19:25:27 +00:00
Leena Miettinen
4f3d3d445c Project Explorer: Fix UI text
Task-number: QTCREATORBUG-27055
Change-Id: I9b0e4f02ea7d1ebb14a9581f21c76b8908589334
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2022-02-17 12:08:37 +00:00
Christian Kandeler
400ada2daa ProjectExplorer: Dis-ambiguate issues pane's "show output" action
Amends 08a86169db.

Fixes: QTCREATORBUG-27031
Change-Id: Ie6d214673f6c1c52aab1a035c84a7381f9965588
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: hjk <hjk@qt.io>
2022-02-10 12:17:13 +00:00
Eike Ziller
65e8c864af Merge remote-tracking branch 'origin/6.0'
Change-Id: I405e3f95b0cdcd7b2686f31baae16c03c787f007
2022-01-06 11:55:39 +01:00
hjk
70a9b3deae ProjectExplorer: Do not attempt to stop application
... when the user selected "Keep running".

Change-Id: Ia6f6306f9a3c88d4bd35aaf079576dafc54b6323
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2022-01-04 15:20:31 +00:00
Christian Kandeler
0eaba469cf ProjectExplorer: Add "link back from issues" functionality
... to the app output pane.

Change-Id: I3e11f63a42fb30ae4e40da50d5ba8143ce99cd65
Reviewed-by: hjk <hjk@qt.io>
2021-11-26 15:43:46 +00:00
Eike Ziller
29df497d25 Add text search functionality to output window centrally
All output windows should be searchable with Edit > Find/Replace
(Ctrl+F), no reason for every single instance setting that up
individually.

Add a find placeholder for the build system output in Projects mode, so
the search functionality is available there as well.

Change-Id: Idad6824bfb21e6ae9ab923191a7e83b43256e68b
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-09-20 13:58:45 +00:00
hjk
52e5023bcc ProjectExplorer: Use Utils::CommandLine in ProjectExplorer::Runnable
Change-Id: Id965f1f9047dcbc3ea5c9ddaa550d12668cf8ae6
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-13 15:04:30 +00:00
Alessandro Portale
afc2fda8a9 ProjectExplorer: Use qAsConst w/ non-const Qt containers in range-loops
Change-Id: I6422b3e40a6925504a231be2d47b3214d86c6e06
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-02-17 11:19:21 +00:00
Eike Ziller
c898047880 ProjectExplorer: Don't save defaults to settings
Writes less settings and makes it possible to change defaults in the
future.

Task-number: QTCREATORBUG-24762
Change-Id: I73873b3684827b4fe27cfa5ea2f62a76003f9750
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2020-12-16 08:40:24 +00:00
Jarek Kobus
d2e1feceac Don't clash signal names with other methods
In case when signal name clashes with other method name -
rename accordingly.
Remove some repeated signal declarations - they are already
declared in superclass.

Change-Id: Ie1430b85d6436d26996494fa44c7554fb354b6ce
Reviewed-by: hjk <hjk@qt.io>
2020-11-18 12:20:43 +00:00
Orgad Shaneh
4b6a6acc4e Core: De-pure IOutputPane::visibilityChanged()
Most implementations are empty.

Change-Id: I811cacfc2918c8b2803798c4f5d3dabc7d60ccd1
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: hjk <hjk@qt.io>
2020-10-09 05:23:17 +00:00
Christian Kandeler
215b284666 ProjectExplorer: Properly set up the output formatter
... for the app output window.

Fixes: QTCREATORBUG-24560
Change-Id: I199d7b16f445db498027094792c6cf344d920a88
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2020-09-04 08:50:13 +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
Christian Kandeler
6d36db78aa Core::OutputWindow: Pimpl remaining members
Apparently, these were forgotten when the d-pointer was added.

Change-Id: I508074361ee3fb1d07a49c883669e96649561a51
Reviewed-by: hjk <hjk@qt.io>
2020-05-13 09:13:58 +00:00
Christian Kandeler
d42920d372 OutputFormatter: Take ownership of the line parsers
For symmetry with IOutputParser.

Task-number: QTCREATORBUG-22665
Change-Id: I92e93b32e87ff4f3fa163a2d2fe13768e56bfa24
Reviewed-by: hjk <hjk@qt.io>
2020-04-15 09:07:17 +00:00
Christian Kandeler
c0c2df203d Utils: Split up OutputFormatter class
An OutputFormatter takes some string and prints it into a text edit.
In addition, it can ask any number of registered OutputLineParsers
whether they think any special formatting should be applied to the
current line.
This mechanism is now properly modeled by our class design, rather than
being hidden in a monolithic class where everything had the same type,
no matter what its purpose was.
Prospective contributors can now simply be pointed to the
OutputLineParser class and will see at one glance what they have to do.

Change-Id: I9844499f062c94fb038ce73fd6f26576910148c2
Reviewed-by: hjk <hjk@qt.io>
2020-04-14 14:15:26 +00:00
Christian Kandeler
04a99c1de1 Remove the limitation that output formatters have to be exclusive
Introduce an aggregating output formatter that forwards its input to a
sub-formatter that feels responsible for it, or otherwise lets the base
class handle it.
Our output panes now use such an aggregating formatter.
In particular, this means that in the future, we won't have to stuff all
run control output formatting into the Qt output formatter anymore.

Change-Id: I5498f200a61db10ccff3ec8974c6825da7f7072d
Reviewed-by: hjk <hjk@qt.io>
2020-03-20 13:48:15 +00:00
Eike Ziller
c8a2ea5433 Merge remote-tracking branch 'origin/4.12'
Conflicts:
	src/plugins/qmldesigner/components/curveeditor/detail/graphicsview.cpp

Change-Id: I2a0ccb84560174c5170d5baaff526c0e095f0ba0
2020-03-19 09:35:50 +01:00
Christian Kandeler
438195ae83 OutputFormatter: Remove unneeded function and include statement
Change-Id: I7372a340660e0e927c3e8e83dd438d5fa32304eb
Reviewed-by: hjk <hjk@qt.io>
2020-03-18 13:54:05 +00:00
Eike Ziller
9e0009803c Fix lupdate issues
Change-Id: I26f08ae82354c178f6d26f9138796328b50bfba8
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2020-03-18 10:45:15 +00:00
Leena Miettinen
25b438b6f3 Project Explorer: Fix UI text according to the guidelines
https://doc.qt.io/qtcreator-extending/qtcreator-ui-text.html

Task-number: QTCREATORBUG-23683
Change-Id: Idd3a1691c8a2fb46d8289a0de60a39f7020bc5a9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-03-11 12:01:05 +00:00
hjk
df7400b686 ProjectExplorer: Disentangle ProjectExplorer::updateRunActions
This enforces a linear pass through

  [static] ProjectExplorerPlugin::updateRunActions
  ProjectExplorerPluginPrivate::doUpdateRunAction
  [emit] ProjectExplorerPluginPrivate::runActionsUpdated

instead of the previous direct emission of the signal from
user code and connecting also the internal update to it.

This is meant to simplify reasoning about execution order and
maybe to help elimimating double executation.

Change-Id: Id8cc41a46d9dec06afb5514855f2ae80560f3695
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-02-26 14:32:58 +00:00
hjk
c3f7ef5340 Several SettingsPages: Code cosmetics
De-Q_OBJECT-ify, remove unnecessary #includes, final-ize, etc.

Change-Id: I461d3e73400dacac90c22e7c84a40e3ea1718b6e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-01-30 15:04:58 +00:00
hjk
c75923756a Core: Provide empty implementation for IOptionPageWidget::finish()
Having it pure virtual only lead to a lot of unnecessary
re-implementation.

Change-Id: I37f71d1a160e21b93c7c73a6304b0eb6d5f0441d
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-01-15 12:28:29 +00:00
hjk
eef4a19125 ProjectExplorer: Use new settings page convenience for app output
Following the pattern introduced in 809e62e373.

Change-Id: I87dc785e071b3b80817df984ab3921e949f9f1bc
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-01-08 09:54:50 +00:00
Christian Kandeler
aacfd340ca Output panes: Allow to invert the meaning of the filter field
That is, show only the non-matching lines.

Task-number: QTCREATORBUG-19596
Change-Id: Iac06a7c4531688dbf97c7d5c4d0cdb80979b5f95
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-12-02 13:14:30 +00:00
Eike Ziller
0491c1c06c Merge remote-tracking branch 'origin/4.10'
Change-Id: I4a22cdf4d7d5aab2083d5f9f7baaa38e510f83fd
2019-09-23 12:31:58 +02:00
Christian Stenger
c9e536b9eb ProjectExplorer: Use correct guard in connect
Change-Id: I1784de2914d1c930c0b38fb3919cb8cfdc97dcf0
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2019-09-18 11:23:55 +00:00
Sona Kurazyan
8e31932c29 Remove usages of deprecated APIs of QLayout
Replaced:
  QLayout::setMargin() -> QLayout::setContentsMargins()
  QLayout::margin() -> QLayout::getContentsMargins()

Task-number: QTBUG-76491
Change-Id: If28ef6910b3afe5d04e4746b74f9362a3e3b3c8e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-09-02 13:01:07 +00:00
Christian Kandeler
4fba896d66 App output pane: More fine-grained popup options
Let users specify that the app output pane should pop up only on initial
output.

Fixes: QTCREATORBUG-22844
Change-Id: I13d44af8edebac151b81d7b49fb0640e251ea3ab
Reviewed-by: hjk <hjk@qt.io>
2019-08-21 11:52:00 +00:00
Christian Kandeler
41ade463da Output panes: Support keyboard shortcuts for zooming
Fixes: QTCREATORBUG-22567
Change-Id: I3c7419c7b464c329d8f8dae11db9a0b01e51f32c
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2019-06-24 14:14:07 +00:00
Christian Kandeler
2391ef6088 Output panes: Improve the way to signal that filtering is active
At the moment, background and foreground colors of an output pane are
changed (via the widget's palette) when filtering is active, in order to
make it clear to the user that the output is being tampered with. There
are several problems there:
    - The chosen background color is quite garish.
    - More importantly, the palette change has no effect in the
      compile and app output panes, because their output is explicitly
      formatted and thus not affected by the general text color change.
      As a result, the output may no longer be readable.

We fix this by choosing a less intrusive approach that simply darkens
(or lightens) the pane's background color a bit when filtering is
active. This is still clearly visible to the user.

Change-Id: I41e053b4b218be57fe7655e314d4ebf93f59f505
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-06-12 12:20:31 +00:00
Christian Kandeler
e34b41934d Output panes: Respect filter options
The UI elements for case sensitivity and regexp behavior had not been
doing anything until now.

Change-Id: Ie210103984fda64d4249c56f9a5b21200132108f
Reviewed-by: André Hartmann <aha_1980@gmx.de>
2019-06-05 12:28:57 +00:00
Christian Kandeler
2439cfcbdb ProjectExplorer: Move filtering infrastructure up
... from AppOutputPane to IOutputPane. We want to have filtering in
other output panes too.

Change-Id: I805ec68baedf491b71d392c3370dee78ed4ab76c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-05-24 10:54:37 +00:00
Christian Kandeler
f3b6d60a01 ProjectExplorer: Remove unused AppOutputPane member function
Change-Id: I5372a939dd48eb3f97d5667fbc6153b2a5c14de2
Reviewed-by: hjk <hjk@qt.io>
2019-05-14 11:24:54 +00:00
Christian Kandeler
9065902d2c Output pane settings: Make more more i18n-friendly
Change-Id: Iaccd369a8eea8df933cd036ed9f41f8730c9e973
Written-by: hjk <hjk@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2019-05-09 12:46:14 +00:00
Alessandro Portale
e9cf8a4e3e Remove a couple of "setAutoRaise(true)" for toolbar buttons
Most of the QToolButtons in the toolbars don't set autoRaise, and they
are fine. I assume that those who do set it, just do it for because that
line was copy/pasted so often.

Change-Id: I71341ddbd26a586d34713661ec538b37033685e5
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-04-29 10:35:33 +00:00
Alessandro Portale
c453e896a0 Core: Fix enabling/disabling of zoomIn/Out buttons in output panes
Amends 48073b2990 to avoid the creation of extra toplevel windows (and
warnings on MS Windows on startup).

Also, ensure that that the initial tab-less application output pane
shows the buttons, albeit in disabled state. All other output panes do
not have to explicitly enable them.

Change-Id: I6c6ef374c09c77e2eb953743071917d9346ca85d
Reviewed-by: hjk <hjk@qt.io>
2019-04-23 16:39:24 +00:00