Commit Graph

64 Commits

Author SHA1 Message Date
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
Christian Kandeler
08a86169db ProjectExplorer: Generalize issues -> output pane linking
This feature was specific to the compile output pane, but we want
to have it in other panes too.

Change-Id: I110b27af7d0aa23acbc5623d1c0405816250df19
Reviewed-by: hjk <hjk@qt.io>
2021-11-25 15:19:42 +00:00
Jarek Kobus
48c2afe157 Decorate some classes and methods with final keyword
This way we silence the clang warnings about calling
virtual methods from c'tor or from d'tor:
[clang-analyzer-optin.cplusplus.VirtualCall]

Change-Id: I8d6318b490152133da4833bda2ba28622bce30dd
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2020-11-19 09:45:53 +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
37ce45c21e Core::OutputWindow: Prevent UI thread overload
... by splitting up huge amounts of output and feeding it to the
formatter in more digestable chunks, with event processing in between.
This prevents a UI freeze in the case that a single file emits a large
amount of diagnostics and the build tool buffers the output (as ninja
and qbs do), which therefore comes in all at once.
Apart from keeping the UI responsive, this also speeds up execution of
the build step itself, as the remaining output can now be displayed
after it has finished. If another build step is started and there is too
much output pending to flush all at once, we discard the pending output,
in order to prevent the delay to accumulate.

Fixes: QTCREATORBUG-23944
Task-number: QTCREATORBUG-22914
Change-Id: I7cfef939a85bbd13730f607b0f83c36473b0e550
Reviewed-by: hjk <hjk@qt.io>
2020-05-05 07:40:08 +00:00
Christian Kandeler
1c6e4fbd32 Merge output formatters and output parsers
Now only one piece of code needs to be written to both linkify output in
an output pane and create tasks for it in the issues pane.
The calling sites are also simplified. For instance, until now, build
steps had to feed their output parsers manually and then push the
created tasks up the signal stack in parallel with the actual output,
which the build manager relied upon for cross-linking the output pane
content. Afterwards, the output would get forwarded to the formatter
(and parsed for ANSI escape codes a second time). In contrast, a build
step now just forwards the process output, and task parsing as well as
output formatting is done centrally further up the stack.
Concrete user-visible improvements so far:
    - File paths in compiler/linker messages are clickable links now.
    - QtTest applications now create clickable links also when run
      as part of a build step, not just in the app output pane.

Task-number: QTCREATORBUG-22665
Change-Id: Ic9fb95b2d97f2520ab3ec653315e9219466ec08d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2020-04-23 08:47:08 +00:00
Christian Kandeler
6a07e2c341 Output panes: Do not allocate extra standard formatters
The OutputWindow base class has a functioning default formatter these
days.

Change-Id: I0a75d0a081cdd2cfdd913388419483df836a53e9
Reviewed-by: hjk <hjk@qt.io>
2020-03-20 14:49:49 +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
67eebd09a3 ProjectExplorer: Update CompileOutputSettingsPage
Change-Id: Ib5bfe959025a57f9ae5b5563385fb1663c313ede
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2020-01-08 17:03:16 +00:00
Christian Kandeler
51afb04674 ProjectExplorer: Allow text filtering in compile output pane
Change-Id: Ibd5c20e5d5dbbb1867aefc8d701218469b3a427b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-05-29 12:57:14 +00:00
Andre Hartmann
48073b2990 IOutputPane: Refactor zoom function into base class
Try to make zoom and font handling in the panes more
similar and put common stuff into IOutputPane.

Change-Id: I59c38c5eecbf67b7ca6c9d84a6f61b1292a787df
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-04-16 14:20:22 +00:00
Christian Kandeler
14bffd2c88 ProjectExplorer: Add settings icon to app and compile output panes
This provides a natural shortcut to the respective options page.

Change-Id: I1e57c64d1541540cb1c0c44c6fb8eaad69fc2e32
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2019-04-04 10:44:31 +00:00
Christian Kandeler
0978901b73 ProjectExplorer: Introduce dedicated output settings pages
One page for application output, one for build output. The respective
settings are now easier to find, and the general Build & Run settings
page looks more tidy now. We will also be able to link directly to the
respective settings from some button in the output panes in the future.
As a side effect, this patch also introduces a dedicated "word-wrap
output" setting for the compile output pane. It used to share this
setting with the application output pane, which was not obvious and
might not be what the user wants.

Change-Id: I5629363863ffe38e0faa006d361ec21484b593f4
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2019-03-12 08:50:45 +00:00
Orgad Shaneh
61aa2d3741 CompileOutput: Use output formatter
Change-Id: Ie7c3fd73de33fb5cfcc56f371ea72463f2ef72f4
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-11-19 10:03:11 +00:00
Samuel Gaist
d6591625c3 Add support to change the number of lines of the compile output
This patch adds support to modify the number of line shown in the
compile output window. This will allow users with big projects to have
more room to look at when compiling.

Task-number: QTCREATORBUG-2200
Change-Id: I1023b2150a3eff4a33b8872fb711d150e5a8b00c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2017-08-02 15:29:04 +00:00
Tobias Hunger
f4296d7504 ProjectExplorer: Modernize
* Use override where appropriate
* Use pragma once
* Make more constructors explicit

Change-Id: I2865fe10f288e3de570826058e43b70a0cb4ee37
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
2016-02-03 08:29:08 +00:00
Orgad Shaneh
15f8bb07ed ProjectExplorer: Use Qt5-style connects
The heavy lifting was done by clazy.

Change-Id: I619db09a79760186b72e7662490ed1205155c1a7
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-02-01 15:51:34 +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
Daniel Teske
8dfa9a5dab ZOOOOM for CompileOutputWindow and AppOutWindow
Implement zooming for the compile output and app output panes.
Those windows can be zoomed by toolbar buttons or ctrl+mousewheel.
The zoom factor is synced between app output panes, but not between
compile and app output. The scroll wheel zoom can be disabled
in the settings.

While at it, fix that the AppOutputPane did not update its font
on changes to the fontsettings.

Task-number: QTCREATORBUG-12476
Change-Id: I8a1639ab3d39c24a5fc21ed82f558f3d10efc02d
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2015-08-31 14:59:03 +00:00
Daniel Teske
4f383f77b4 Tasks: Make the linking of compile output to Tasks more robust
Clicking on error messages is supposed to jump to the editor.
And "Show Output" on the task is supposed to select the error
in the output.

The old code just registered the task for the last line of
output. This broke for every parser that allowed for
error messages that spanned multiple lines. And was obviously
also incorrect for tasks that weren't generated due to
compile output.

Fix both of those issues by giving the IOutputParsers more
control on which lines are linked to a task.

Task-number: QTCREATORBUG-14136
Change-Id: I095922c9875620dabfb7d406f6b152c8a9b25b62
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-04-21 13:42:03 +00:00
Eike Ziller
3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
Eike Ziller
020c86038c Merge "Merge remote-tracking branch 'origin/3.2'" 2014-10-14 16:28:45 +02:00
Orgad Shaneh
c884f3e0ef ProjectExplorer: Remove redundant namespace qualifications
Change-Id: Id9034e31f3f61c38894111951534dd0d59b746dc
Reviewed-by: hjk <hjk121@nokiamail.com>
2014-10-14 16:22:02 +02:00
Eike Ziller
8295b503be License update
Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-10-09 11:41:44 +02:00
Daniel Teske
86e3d5af5f CompileOutputWindow: Remove unused ctor parameter
Change-Id: I890575cfbec90780461b249e36caebf40558f3fc
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
2014-01-27 16:10:52 +01:00
Robert Loehning
746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
Petar Perisin
e8f5502b78 Added color support of ANSI escape codes
in compile and application output pane. Only simple font and background
controles added.

Task-number: QTCREATORBUG-9592
Task-number: QTCREATORBUG-5956
Change-Id: Ida010ed17d34bb73ae1364a77073ff435a03a060
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-09-09 13:05:16 +02:00
Friedemann Kleint
92207c96b7 Clean headers in ProjectExplorer.
Change-Id: If61a8a91d2a39c5c97974a5bfcef91892b68d3f1
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-03-26 12:37:29 +01:00
Robert Loehning
298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
hjk
386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Eike Ziller
e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Orgad Shaneh
9270d858c1 Compile output: Add 'Cancel Build' button
Change-Id: Ib633c172f3e5a79818ac737016948cbeda82ac41
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-04-02 12:04:48 +02:00
Francois Ferrand
54801c5163 Open file when double-clicking in compile window
Track the tasks which are added, so that the generic parsers are
used for detecting file names.

Change-Id: Ie3bcf04c946fa45c99836dc4c29ca03ab5243fb2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-03-09 11:27:26 +01:00
Erik Verbruggen
3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
hjk
2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
hjk
31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
hjk
373d51a1ed IOutputPane: constify some member functions
Change-Id: I023b7f5976b30fc950d2dd5a76f749ef4720ac2f
Reviewed-on: http://codereview.qt-project.org/5618
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-09-28 15:21:19 +02:00
Tobias Hunger
aa2acec14c Fix/add copyright headers
Change-Id: I8b73d583be1ee7183f4074bce49d5390e38631a2
2011-05-06 15:17:05 +02:00
con
feefdfdc38 Re-use output window implementation for general messages.
Moving the implementation to core plugin.
2011-04-26 10:45:26 +02:00
con
ef77155291 Make output window implementation reusable.
Removes the dependencies to project explorer and text editor plugins
and moves unrelated code to its own file.
2011-04-26 10:45:25 +02:00
hjk
8397663964 Update license. 2011-04-13 11:49:28 +02:00
con
d1023c7614 It's 2011 now.
Reviewed-by: hjk
2011-01-12 09:46:24 +01:00
con
04e32b0049 License headers. 2010-12-17 16:03:42 +01:00
dt
615cda8430 Fix compile output to be readeable with dark themes
This changes the colors to be a mix of red/blue and the foreground
color. If the regular text color is either of those, well...
2010-07-15 11:11:21 +02:00
dt
185bc0ee26 Fix scrolling of compile output windwow again
This time by porting to the ApplicationOutputwindow
2010-07-14 13:01:43 +02:00
Friedemann Kleint
e8c0d0c162 Yet another include purging spree. 2010-07-13 16:36:37 +02:00
Tobias Hunger
d4ed1e2b5b Add show output task handler
* Add a taskhandler that shows the compile output that
   originally created the task.

Task-number: QTCREATORBUG-107
Reviewed-by: dt
2010-06-30 17:18:15 +02:00
Tobias Hunger
9b18a58ae5 s/name/displayName/ in ioutputpane
Reviewed-by: dt
2010-06-16 13:08:40 +02:00
dt
181cecbb32 Port the compile output window away from HTML to QTextCharFormat
Is more then twice as fast
2010-06-08 15:23:58 +02:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00