Make setting the icon and the text atomic, and move the text drawing
code to iwizardfactory.cpp. That simplifies things such as setting the
fallback icon.
Also, it enables the upcoming theming of wizard icons.
Change-Id: Ieb803eba52a659b3278b29db32838d9b41d73cb6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The crash appeared when Creator was built against Qt 6.2,
however, the Creator code for IndexFilterModel was
broken before and was working just by coincidence with Qt 5.15.
1. mapToSource() reimplementation creates now indices on source
model side, instead of on proxy side.
2. filter() returns invalid model index now in case when
list is unfiltered and empty and in case when the filter
was used but we got empty result. Before it was creating
a new valid index to (0, 0), but in fact we didn't have a
corresponding valid data for it.
3. Reimplement headerData(), as otherwise the default implementation
of this function inside proxy was calling erroneously index(0, 0)
when we had empty data.
4. Reimplement hasChildren(), as otherwise the default implementation
returned true for hidden root item, what caused a call to
index(0, 0) in case we had empty data.
5. Assert that the index() is being called only for a valid
range of rows that match our internal proxy data.
6. Add some checks whether sourceModel() isn't nullptr prior to use.
7. Simplify IndexWindow::filterIndices().
Fixes: QTCREATORBUG-26309
Change-Id: I5d150488893abd117b7d68c0436e4e511537738b
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
It is a value written by the installer, and to be read from the install
settings. Writing it to the local user settings breaks it if the user
uninstalls Qt and installs it at a different location.
Also add a temporary fixup, removing the setting from the local user
settings, if it was already written there.
Amends beda749326
Fixes: QTCREATORBUG-26289
Change-Id: I27652031b13aaf17a5daff3bfba1312bf1158ec7
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Add some indication which container the log messages belong to.
Change-Id: Iafdc7f9c77e58649f2922aefd2a109cf17db78ff
Reviewed-by: David Schulz <david.schulz@qt.io>
Inkscape 1.1 insists on optimizing several things when saving the
current SVG which was last saved by v1.0. Let's let that happen.
Change-Id: I4a6541f55ba5678255a12115052ab807725389be
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Passing the DISPLAY variable differently on Windows allows to
even run a gui application on the docker image if there is an
XServer (e.g. vcxsrv) running on the Windows host that can be used.
Change-Id: I36f849c4efc6e53ef92fcea96b4b256fd92a01c6
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: David Schulz <david.schulz@qt.io>
Docker images with UNIX on a Windows host should get a proper
default generator.
This allows to build projects with a default set up kit for docker
out of the box without modifying the kit values or the project
setup.
Change-Id: Ic32e72c28d98a367e71f19d4e1c211ec7a4e613e
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This reverts a hunk from commit 1167f0fac7
that was meant to be part of another commit.
Change-Id: Ieee7b8e659e139497f5efc8b611469f82ae0fef5
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Add an AndroidDeviceWidget to handle showing details of detected
Android devices, things like name, serial number, api level,
and more specific info for AVDs.
Task-number: QTCREATORBUG-23991
Change-Id: I97637aa0ced78ebd34c37f2b874802914ce44578
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Some images have convenience entrypoints set, these get into the way
when we want to run a shell deterministically.
Change-Id: Ifedb9924456b80a9a3cdca64b5431c457b052f1a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
OutlineWidgetStack inherits from QStackedWidget, so you don't need a
member object like QStackedWidget.
The m_Factory object is not used in the OutlineWidgetStack class, is
of private type, and is not available in its OutlineWidgetStack
derived class.
Change-Id: I0b94a654dde023144f01e0bd7808ad5cc1dc92b8
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Amends 261a39cbbd, after switching
Android plugin to use new device selection mechanism in
96255208a5.
Change-Id: I7b2dd1950055f3e6f1a449778f44d57c0c0a8758
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
To run it requires either designpreview.apk installed
on the device or apks placed in
<QTCREATATORDIR>/share/qtcreator/android/qtdesignviewer/
Apk filename should follow designpreview_$ARCH.apk
Task-number: QAA-512
Change-Id: Ida955b0fac519112d4623166677a7ba8e9afb1f4
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
The new/upcoming way of co-authoring and sharing a project in Qt
Creator and in Qt Design Studio, as-well as the disabling of the
QmlDesigner plugin in Qt Creator are a substantial step in the
offering.
The QtQuick application wizards must not stay behind, but rather also
reflect that change:
Keep one essential Qt Quick wizard in Qt Creator (which will eventually
support the project sharing approach). Leave the competence to create
Qml UI code to Qt Design Studio.
The removal of wizards for mobile-oriented ui code (for further hand
coding) also re-enforces the motto that application wizards should
create essentials, rather than example code.
Task-number: QTCREATORBUG-26160
Change-Id: I9775d70b45f97290ab65936ff6e373b6fc177c85
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
... in the "Add new run configuration" dialog. Otherwise users will see
placeholders in e.g. the RemoteLinux case.
Change-Id: Id8b22f4e51b83a2b061fd74bbe9649bee44fc0af
Reviewed-by: hjk <hjk@qt.io>
Currently, on deploy/debug steps on Android, an AndroidDeviceDialog
is popped up each time a deployement is done to select a device. This
can be avoidable by using Qt Creator DeviceKitAspect to have the list
of devices easily selectable from the project mini-menu.
This is better than the current way because it:
* reduces the time from deployment to running the app
* reduces the number of clicks
* avoids having to select the same device each time or
* if a default device is selected, this avoids having to go to project
settings to reset the default device to be able to deploy to a new
device.
* it looks cleaner and more compatible with Creator.
Task-number: QTCREATORBUG-23991
Change-Id: Ida4ab7245c1a3b0ca26c5ccdc9a21a072edf0725
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
We have our own dedicated clang-tidy support, so let's not confuse
users.
Change-Id: I69a32de3ac96ad2c51d70c82a9eb62f811e65460
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
* We need the showing of the Wizard dialog to be optional
* Each wizard has a "detailsPage.qml" file that stores wizard-specific
UI configuration. We need a way to access that path (QUrl) from QDS.
* ComboboxField is used directly by QDS, and the field object is
fetched by a call to JsonFieldPage::jsonField() - hence, the
ComboboxField needs to be dllexported. We need to access fields
directly from QDS because the QML controls use those fields as backend.
* From QDS we need to select / activate in a combobox field, and to see
which item is current (activated). We also need to make use of the
model that the ComboBoxField uses in order to show those same items in
the qml controls of QDS.
* From QDS we need to set the text in a LineEditField
Task-number: QDS-4490
Change-Id: Ia42d539a5bcbf3dff4593fb027ac18c52da4d046
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Currently the errors / warnings were visible only in Project mode.
Now they will appear in the build system issues pane, so that the
user knows that something is wrong with the project.
Change-Id: I4e0e6aebed86fdb9ea757692255cdbde37cf58a3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Skip the creation auf a QByteArray. Use QStringEncoder instead.
Change-Id: I3d2297b1fef27acb2136a64587c5af9099d92aa6
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Don't expect that the process being reaped will emit any signal.
Before deleting the process inside AbstractProcessStep::doCancel()
we do the expected cleanup immediately. We can't expect that the
process being reaped will return fine, so we set exitCode to -1
and exitStatus to CrashExit.
Fixes: QTCREATORBUG-26271
Change-Id: I0afd7ba8846d0fa57a0531201bbed9bd7a490942
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Don't puto wrong delimiters into FilrPath. They create multitudes of
problems down the road.
Change-Id: I7a95494c0f59416b7468636b3786d7efdbbdf14e
Reviewed-by: hjk <hjk@qt.io>
In Qt 5, qmake is statically linked to the bootstrap library,
so just copying qmake somewhere results in a runnable executable.
In Qt 6 this changed, and qmake depends on the dynamic QtCore
library, and on Linux also on ICU. Copy these in addition to
the qmake executable. Keep the directory structure as in Qt, so
the dynamic linker finds them.
Change-Id: Ie4f6b617bc91d847b1e4fe38dc8a1c603eae4087
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
With CMake, it seems that the abi was being empty string because
looking for ANDROID_ABIS is not defined and instead there's ANDROID_ABI.
Also make sure to handle the case of ANDROID_ABIS, which might be
declared in future versions like Qt 6.3 which can support multi-abi
builds.
Change-Id: I805c5c25409a4e20a237b8747082d256bd72e275
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Add some useful settings for ctest based testing. Adapt output
parser accordingly to get at least relevant output and display
significant information inside the visual display.
Current implementation loses or mixes some information when
running jobs in parallel.
Complete output is still available inside the text display.
Fixes: QTCREATORBUG-26029
Change-Id: Id040f83900a6cfd89f5c2aff987278a297aa14c4
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It shows very well why only one variable per statement should be
initialized.
Change-Id: I4bef73066583998be545c8930b3f9cbea5bc4e4b
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Fixes warnings
sqlite3.c:43154: warning: C4996: 'GetVersionExA': was declared deprecated
sqlite3.c:43164: warning: C4996: 'GetVersionExW': was declared deprecated
We know that we're running on Windows NT based versions (the default), so
we can as well skip this check.
Change-Id: Idd7db098645060bf8b9e449e59904f2f63fb0e0a
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
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>
This fixes the build in certain configurations, e.g. MSVC + qbs + Qt 6.
Change-Id: Ia72dfd6dcfe1d1ecc08c40a3af6e60a935dc355f
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
The new architecture should be a better abstractions for qml.
ImportedTypeNames are introduced. ModuleDependencies are now taken
over by document imports. Modules lost their version and
ExportedTypeNames gained it.
Task-number: QDS-4938
Task-number: QDS-4933
Task-number: QDS-5009
Task-number: QDS-5032
Change-Id: Ia86921c5be9107fe7d5bfd28f12bf8453769dc10
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Adding a skeleton for the ProjectStorageUpdater.
Task-number: QDS-4819
Task-number: QDS-4793
Change-Id: I230d68f71480d360d71019883510ef22dd276802
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>