Amends 3edc5673b5.
Turns out quite a few potential uses have other parents than
ICore::dialogParent().
Use a nullptr parent to mean ICore::dialogParent() to keep the
caller side simple.
Change-Id: Icfe1daafd710ae273d286679e0c8e2a3a27da552
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Some tr functions missing, some places where we need full qualification
because lupdate gets confused with namespaces.
Change-Id: Ic1d6ef3b31960dda02bc0788a255857117acdca9
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
There is some space on the right side there, and in Projects mode it is
nice to have the output directly visible without opening the General
Messages pane (without intermangling with other output there).
This is a first step that duplicates the output in a very simple manner.
Fixes: QTCREATORBUG-25522
Change-Id: Id53b21d629b1f1bbc46ebf3d38bcec1fd83a6360
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
The main window of the project mode is already a QMainWindow,
using a dock window also for the empty space on the right makes
it consistent with the separation of the project tree on the left.
Change-Id: Ida42f267b87eb45cd1692ebcc16ded2ee6c1e523
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Window state save/restore was undermined by code that added and removed
the central widget, leading to inconsistent data.
Fix this by making sure that we (de-)serialize if and only if a central
widget is present.
Also remove the hacky workaround that was supposed to fix this, but
didn't.
Fixes: QTCREATORBUG-25551
Change-Id: I6e7f2aff7455db476f870ead64b09a9716f3558b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Steps to trigger the problem:
1) Start Creator with some fresh settings path.
2) Open an unconfigured project.
3) Observe a normal-looking target setup page.
4) Configure the project.
5) Close the project.
6) Remove the .user file.
7) Re-open the project.
8) Observe a target setup page whose left part takes up almost all the
space, leaving the main project widget practically invisible.
Conclusion: The configure page does something to the widget state that
breaks the restored layout. I don't know what it is exactly.
Fix: Slightly delay restoring the widget layout.
Change-Id: Id88ea12267a7dd0fe54749c18b0761d0e873d646
Reviewed-by: hjk <hjk@qt.io>
The coreplugin/id.h header is kept for downstream for now.
Change-Id: I8c44590f7b988b3770ecdc177c40783e12353e66
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
... in the target selector. When requesting the kit context menu by
right-clicking, we get extra mouse events on Windows that activate the
kit, which is annoying to users. Suppress these events.
Fixes: QTCREATORBUG-24156
Change-Id: I8a5de927634dfdfafb54d265ab31763c6120a527
Reviewed-by: David Schulz <david.schulz@qt.io>
There are very few reasons to use mainWindow() directly.
Especially for modal dialogs, using dialogParent() is important, since
that guarantees the stacking order in case of other dialogs currently
being open.
Change-Id: I7ad2c23c5034b43195eb35cfe405932a7ea003e6
Reviewed-by: hjk <hjk@qt.io>
With the introduction of the "Analyze Current File" action the widget to
configure the diagnostic config was moved to the project panel (Project
mode > Project Settings > Clang Tools).
As not too many users are aware of the project settings there and
navigating there involves more user interation now (mode switch, looking
for the "Clang Tools" item), add a toolbar button as a shortcut.
Change-Id: I4c864045ef41ff501d925d3175ce604def213f29
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
... when in project mode.
We re-use the "GotoPreviousInHistory" action, which is semantically not
equivalent, but still seems like the most natural fit.
Fixes: QTCREATORBUG-19719
Change-Id: If00a90ce93ac3bd7e079d47eefa69e4f4aeb30cb
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
More in line with QFileInfo terminonlogy which appears to be
best-of-breed within Qt.
Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
... to pass it around as real values, avoiding, among others,
the need of occasional explicit deletion.
The formerly extra members of the derived stuff are handled via
an extra variant (for data) and via a functor in the build
configuration factory.
The change is mechanical.
Change-Id: I19ca4e0c5f0a5b196fc16dfb98bb005dc679f855
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Use unique_ptr for all *Private classes, except for those
in singletons.
Change-Id: Ib56c31ddedc6e9cf321f15de1f1e697a27ad4089
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
When configuring a newly opened or created project you are
able to press a 'Manage...' button that brings up the
options page of the kits. Was broken with the rework done
on the global object pool.
Change-Id: I87d91351c5769655c1192431a53784de1bca77aa
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The action is for active project. The button should be under active
project.
Change-Id: Ie0029bff02f58dbd5cb4c2a17bc086c168a522dc
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
StatusBarManager needs to delete its contexts when dropping them,
QActions should be parented, and in ProjectWindow we can save an
allocation.
Change-Id: Idee075d4f2ce8014f22f73453987d1ab6539cf18
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
In a rare but plausible scenario panel might be updated on device
connection while project is not yet loaded. The panel update will
happen again when project loading is complete.
Task-number: QTCREATORBUG-18226
Change-Id: I566e2d23adee529f0536ae644cef420c66578d54
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Make the new buildconfiguration active after it was imported via
Project Mode. Before the buildconfiguration was added but the
current one was still set, which lead people to believe that the
build directory was wrong.
Task-number: QTCREATORBUG-18082
Change-Id: I10412d94326d9e21820dfcac89adbe2c5da948ae
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
... and use this to reduce the number of explicit uses of m_children.
Despite of being shorter code by itself it is a step towards having
an explicit LeafItem object that doesn't explicitly store a(n empty)
vector of child nodes.
Change-Id: If8db85e2f1134dd1578a78d31235bf57a28f863a
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
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>
... combining default construction plus a single invocation of
addPropertiesPanel(), the only way it is ever used.
Change-Id: I2080e8b8fa25a2d7e429b7c18f5272466bc4eb79
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
... to a shortcut to the Kits setup page.
This duplicates the functionality from the context menu but can
be directly spotted.
Change-Id: Ia5c2e1208346dc7191a04fbb9c2569ccab9aab31
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Make sure the combobox values are set to null. Otherwise the ComboBoxItem
might try to read from that value while it is being removed from the model.
Task-number: QTCREATORBUG-17223
Change-Id: I6588aaddf39736846878593a8e6844dab96de408
Reviewed-by: hjk <hjk@qt.io>
Fixes a regression introduced in recent changes. Import project from
build is now available again on the target setup page (shown when
no kit is active) and in the context menu of the left pane.
Task-number: QTCREATORBUG-17046
Change-Id: I5a1285624084f0cb6e0947560516ae88d4b3e376
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
As side-effect, fix missing expansion of subitems in some cases.
Task-number: QTCREATORBUG-17110
Change-Id: Ib0c74e968d6d814f9dadbb37b323c8ac68cda310
Reviewed-by: Robert Loehning <robert.loehning@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
- Remove 'panel memory effect' when switching kits
Previously, each target entry memorized when its Build or
Run page was used, and when switching to the target, that
page came up.
Now, don't use that when switching targets, but instead
take the same page as is selected on the target we are
switching from.
- Disable selection of the Build&Run and Project Settings
"group entries"
Change-Id: I2214f8edc38be2e76a50f8984aa75d8f78b62026
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>