aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/coreplugin/outputwindow.h
Commit message (Collapse)AuthorAgeFilesLines
* OutputWindow: Add "Save Contents" to context menuEike Ziller2024-02-121-0/+2
| | | | | | | | | | And give individual output windows the option to set a default file name. Change-Id: If3090063055c1b37f4f2d63b971fe0476f11806e Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Tasuku Suzuki <tasuku.suzuki@signal-slot.co.jp>
* OutputWindow: Add "clear" to all context menusEike Ziller2024-02-071-0/+2
| | | | | | | Change-Id: I989b15eb602d3224813510eacf020e3fdc90c650 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
* Utils: Use a bit more Key and Storehjk2023-08-241-1/+2
| | | | | | | | | Also, separate the Key into a separate header to minimiz impact on #include load. Change-Id: I4f719cad4d23a71a9c228d0b7f5c2409fd6e24d5 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
* Remove GPL-3.0+ from license identifiersKai Köhne2023-01-061-1/+1
| | | | | | | | | | | | | | | Since we also license under GPL-3.0 WITH Qt-GPL-exception-1.0, this applies only to a hypothetical newer version of GPL, that doesn't exist yet. If such a version emerges, we can still decide to relicense... While at it, replace (deprecated) GPL-3.0 with more explicit GPL-3.0-only Change was done by running find . -type f -exec perl -pi -e "s/LicenseRef-Qt-Commercial OR GPL-3.0\+ OR GPL-3.0 WITH Qt-GPL-exception-1.0/LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0/g" {} \; Change-Id: I5097e6ce8d10233993ee30d7e25120e2659eb10b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Use SPDX license identifiersLucie Gérard2022-08-261-24/+2
| | | | | | | | | 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>
* ProjectExplorer: Generalize issues -> output pane linkingChristian Kandeler2021-11-251-0/+4
| | | | | | | | 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>
* Output panes: Fix auto-scrolling issueChristian Kandeler2021-02-261-1/+0
| | | | | | | | | | | | | The idea is that the user turns auto-scrolling off by manually moving the scrollbar up and turns it back on again by moving it all the way down. However, at least on my machine I am no longer able to do the latter -- the scrollbar position is always at least one below the maximum. I don't know when, why or how that changed, nor do I know whether it's about Qt, the window system or something else. Either way, we have to account for it. Change-Id: I83aab758d72735d4db45d228eca8bbc7a8eebd93 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* Core::OutputWindow: Make auto-scrolling more robustChristian Kandeler2020-11-261-0/+1
| | | | | | | | | | | We relied on the scrollbar position as an invariant, which breaks if the formatter writes into the text editor directly. Instead, we update the "auto scroll" flag only if the user actively moves the scrollbar, which is what the intention was anyway. Task-number: QTCREATORBUG-24728 Change-Id: Ic747391b3206d6a5ba8eaf4e3cac9a70fed6dfbc Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* VCS: Pass links to the correct VCSOrgad Shaneh2020-06-211-0/+1
| | | | | | | | | | | | | | Current implementation requires each VCS to connect to the referenceClicked signal. Only Git does it, but this is conceptually wrong. If other VCSs would connect to the same signal, all of them will act upon clicking a link, which can result in multiple editors, most of them are likely to be invalid anyway. By default executes vcsDescribe. Can be extended or modified by subclasses. Change-Id: Ib953009efd77446a4b2963f0aa8a2f3f3d26509f Reviewed-by: Artur Shepilko <artur.shepilko@nomadbyte.com> Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Core::OutputWindow: Pimpl remaining membersChristian Kandeler2020-05-131-4/+0
| | | | | | | Apparently, these were forgotten when the d-pointer was added. Change-Id: I508074361ee3fb1d07a49c883669e96649561a51 Reviewed-by: hjk <hjk@qt.io>
* Core::OutputWindow: Prevent UI thread overloadChristian Kandeler2020-05-051-0/+3
| | | | | | | | | | | | | | | | | | ... 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>
* Vcs: Fix output paneChristian Kandeler2020-04-171-1/+5
| | | | | | | Amends c0c2df203d. Change-Id: I77d022f2b3a4d3cab4713d9cbd2bc66102ee58a3 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Utils: Split up OutputFormatter classChristian Kandeler2020-04-141-2/+2
| | | | | | | | | | | | | | | 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>
* Remove the limitation that output formatters have to be exclusiveChristian Kandeler2020-03-201-1/+2
| | | | | | | | | | | | 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>
* Move some code from OutputWindow to OutputFormatterChristian Kandeler2020-03-171-1/+0
| | | | | | | | That's where it belongs: The logic there is applicable to all output formatters, not just those used via an output window. Change-Id: Idf4ca8d22631ca96feb97553f28724c0275e0bf8 Reviewed-by: hjk <hjk@qt.io>
* Core: Provide a default output formatterChristian Kandeler2020-03-161-2/+0
| | | | | | | | This allows us to get rid of a bunch of checks and a parallel implementation. Change-Id: Icbd23150700d26d96f5163418e46bf83e374e98a Reviewed-by: hjk <hjk@qt.io>
* Core: Remove unused OutputWindow accessorChristian Kandeler2020-03-131-1/+0
| | | | | Change-Id: I0845eb0e10f970a473ee5ccd13f7586a5c21b6a6 Reviewed-by: hjk <hjk@qt.io>
* OutputWindow: Cleanup and modernizeAndre Hartmann2020-02-171-1/+1
| | | | | Change-Id: Ie78c84e2677cabb144cfc678e5d1007fcae1f33a Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* ProjectExplorer: Fix copying filtered-out textChristian Kandeler2020-01-081-4/+4
| | | | | | | | Invisible blocks must be excluded. Fixes: QTCREATORBUG-23425 Change-Id: I93a253bd47820d6eb6feea90056c76091e376070 Reviewed-by: David Schulz <david.schulz@qt.io>
* Output panes: Allow to invert the meaning of the filter fieldChristian Kandeler2019-12-021-1/+6
| | | | | | | | That is, show only the non-matching lines. Task-number: QTCREATORBUG-19596 Change-Id: Iac06a7c4531688dbf97c7d5c4d0cdb80979b5f95 Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Output panes: Support keyboard shortcuts for zoomingChristian Kandeler2019-06-241-0/+1
| | | | | | Fixes: QTCREATORBUG-22567 Change-Id: I3c7419c7b464c329d8f8dae11db9a0b01e51f32c Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Output panes: Improve the way to signal that filtering is activeChristian Kandeler2019-06-121-2/+0
| | | | | | | | | | | | | | | | | | | 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>
* Core: Use QElapsedTimer instead of QTimehjk2019-06-121-2/+2
| | | | | | | Avoids deprecation warning. Change-Id: Ia4858235184369df1ba5d80c5eca71df53287bce Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Output panes: Respect filter optionsChristian Kandeler2019-06-051-5/+1
| | | | | | | | 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>
* Core: Remove indirection from OutputWindowChristian Kandeler2019-05-221-3/+0
| | | | | | | An output window always is its formatter's text edit. Change-Id: Ib09b9a95360f4abdfd34fd2c1913f7796591069d Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Core::OutputWindow: Move members into d-pointerChristian Kandeler2019-05-151-4/+0
| | | | | | | | New members were accidentally dumped directly into the class, rather than the private implenmentation. Change-Id: Ie7939534cef1c830ce3925d9cb5e77a48617150b Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* IOutputPane: Refactor zoom function into base classAndre Hartmann2019-04-161-1/+2
| | | | | | | | | 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>
* Add output filtering for Application Output paneAlessandro Ambrosano2019-04-081-0/+22
| | | | | | | | Task-number: QTCREATORBUG-16356 Change-Id: Ibf6cca1915ef56c50c01cd3c23e7798453506a05 Reviewed-by: hjk <hjk@qt.io> Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* Core: Use restrictions on character count instead of line countsEike Ziller2018-09-261-2/+2
| | | | | | | | Assume lines with an average of 100 characters for the transition and use the character limit already in two cases. Change-Id: I43316d51d7d5017aa413d6c910d3784a14237e9f Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Core: Consistently use nullptrTobias Hunger2018-05-081-1/+1
| | | | | | | Fixed by clang-tidy modernize-use-nullptr. Change-Id: I62a9388ab873410555f45a8a6f9b0149467ddbaa Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* Core: Use override consistentlyTobias Hunger2018-05-071-1/+1
| | | | | | | clang-tidy fixes from modernize-use-override check. Change-Id: If33399d60e96cae766bbedbe30044ada411e862f Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* OutputPanes code style fixesNikita Baryshnikov2016-08-021-8/+8
| | | | | Change-Id: I58c4fd1369dc2d6400416b0366b1d357a3308523 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Wholesale conversion to #pragma oncehjk2016-03-301-4/+1
| | | | | | | Kudos to cgmb and https://github.com/cgmb/guardonce Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* Update License according to agreement with Free Qt FoundationTobias Hunger2016-01-191-17/+12
| | | | | | | * Update files in src/plugins Change-Id: Ia5d77fad7d19d4bb3498e78661982f68729adb22 Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
* ZOOOOM for CompileOutputWindow and AppOutWindowDaniel Teske2015-08-311-0/+10
| | | | | | | | | | | | | | | 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>
* Make OutputWindow a bit fasterDaniel Teske2015-05-181-0/+4
| | | | | | | | | By limiting how often we scroll to the bottom and thus limiting how often we redraw. Change-Id: I42ec9dc6284112025108000420ccdfdf5d003f34 Task-number: QTCREATORBUG-14307 Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
* Core: Pimpl OutputWindowOrgad Shaneh2015-02-251-11/+6
| | | | | | Change-Id: Id19f3d0ffcc1b3c939d57c9cb2c5b0fa7be7203c Reviewed-by: Nikita Baryshnikov <nib952051@gmail.com> Reviewed-by: hjk <hjk@theqtcompany.com>
* Merge commit '3c85058694ee2e41658d17f524fb48f0b187d2fe'Eike Ziller2015-02-121-6/+6
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * Update LicenseEike Ziller2015-01-161-6/+6
| | | | | | | | | | Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
* | Core: CosmeticsOrgad Shaneh2014-11-261-2/+2
|/ | | | | | | | | * Remove redundant namespace qualifiers * Qt5-ify some signal/slot connections * Replace some using Core::Internal with explicit namespace scopes Change-Id: Id1aae05e2c6fc2992c2716e1f8f9e985c6e56122 Reviewed-by: hjk <hjk121@nokiamail.com>
* License updateEike Ziller2014-10-091-7/+8
| | | | | Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082 Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
* Incremented year in copyright infoRobert Loehning2014-01-081-1/+1
| | | | | | Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* OutputWindow: Fix spelling of private member.Andre Hartmann2013-09-021-1/+1
| | | | | Change-Id: I94e4cc355f3fd4575f560d4c65c7dc24df1a4cc7 Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Incremented year in copyright infov2.6.2Robert Loehning2013-01-291-1/+1
| | | | | Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Adjust license headershjk2012-10-051-21/+20
| | | | | Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825 Reviewed-by: Eike Ziller <eike.ziller@digia.com>
* Contact -> qt-project.orgEike Ziller2012-07-191-3/+1
| | | | | Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Removed module names from #include directives.Erik Verbruggen2012-02-151-1/+1
| | | | | | | | Getting the #include directives ready for Qt5. This includes the new-project wizards. Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
* Long live the king!hjk2012-01-261-1/+1
| | | | | Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2 Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
* all: s/info@qt.nokia.com/qt-info@nokia.com/hjk2011-11-031-2/+2
| | | | | Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
* Fix/add copyright headersTobias Hunger2011-05-061-1/+1
| | | | Change-Id: I8b73d583be1ee7183f4074bce49d5390e38631a2