The tool buttons for switching the edit mode e.g. between "edit",
"signals/slots", and "buddy" hardcoded the index of the corresponding
tool in designer. The index in designer depends on the load order of
(static) plugins, that has changed in qtbase
2f226336a2aeb477b7ba339b6c3a63abb69746c3 (Qt 6.5.1 and later).
Instead of relying on the index/plugin load order, try to find the right
tool by class name (still falling back to the index otherwise).
It would be nicer if the tools had actual IDs though, but that change
would need to go into Designer first.
Fixes: QTCREATORBUG-30017
Change-Id: I17caea6289574db2b1c8934e80d865a142b74725
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
This function takes a QFont and returns the relevant CSS properties as a
string. Using that CSS string in Qt's HTML supporting widgets ensures
the true to detail HTML rendering of text elements with those CSS
properties.
This change also adds an HTML sample to tst_manual_widgets_uifonts.
Change-Id: I7caf3214854f6ee62ae1211015572c640fc08dc8
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
- move name and type fields to same line as their labels to reduce
dialog's height
- remove "force" option, force by default after showing a warning
- focus and select name field upon dialog open
- when opening the dialog for last column, align right to avoid overflow
- bunch of cleanups and naming improvements
Fixes: QDS-11245
Fixes: QDS-11250
Change-Id: I613a9cf693320b0bc0768ea709eb47e00d218222
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Shrief Gabr <shrief.gabr@qt.io>
Display the local commits (not contained in an upstream
branch) in this case.
Change-Id: If1b7e4c8c98c9867b1003b6ea0530494a14bc994
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
According to https://en.wikipedia.org/wiki/Menlo_(typeface) 'Menlo' is
the newer font family.
Is also in sync with the font used by the Terminal plugin.
Task-number: QTCREATORBUG-29964
Change-Id: I50b439be32f08176b910017b68384ea61cab7337
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Without this all keyframes are first deleted and then recreated.
This becomes notable slow with a larger number of keyframes, since the
timeline does react to each deletion/creation and rebuilds the scene
for the group.
Instead we can keep all keyframes and simply adjust their frame.
Change-Id: Ic34ffbdea74f57cf8f5bcddfbce8a8c18ffef7b0
Reviewed-by: Knud Dollereder <knud.dollereder@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
This would allow usage from other places, like the CMakeProjectManager
plugin.
Change-Id: Idf12b6688c9ac3c71b5614dce37babbeab7f6748
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Fixes warning about non virtual destructor:
Qt/6.6.1/macOS/lib/QtCore.framework/Headers/qcontainertools_impl.h:220:9: warning: destructor called on non-final 'QmlDesigner::QmlObjectNode' that has virtual functions but non-virtual destructor [-Wdelete-non-abstract-non-virtual-dtor]
(--first)->~T();
^
Change-Id: I72306f68f7ae745c3e2dc51ef7d989525a8532e0
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Marco Bubke <marco.bubke@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
If the user has a minimal configuration and the test is not enabled the
call to set_target_properties will fail because the target does not
exist.
Change-Id: I084c53e8d78d92547c1592edc0a19f48d4e76327
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Currently it works only in case of ProcessLaucher implementation.
The issue with QProcess implementation is that we need to
select the active channel in advance with QProcess::setReadChannel(),
what really doesn't make sense, since we can't predict on which
channel we will receive the data.
Currently we don't have setReadChannel() method inside Process API.
Change-Id: I23592e37f2ed5e3326bead445a9c6c6500d0e615
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
The actual blocking is done at uniform level, as the problem of having
same effect node twice is duplicate uniforms.
Fixes: QDS-11470
Change-Id: I77b15b4a207efaebff39b4f6b1700d70262abcdb
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
As we don't show blame annotations for the trailing
(empty) lines, the following could happen for single
line files:
1. Cursor is in the first line, annotation is shown
2. Cursor is moved to the last line, the annotation
is cleared
3. Cursor is moved back to the first line, but now
no annotation is shown
Fix this by resetting the last visited line when the
annotation is cleared in step 2.
Change-Id: I1ea5dc339f57c94bc1835dcbccd7a9d93f79ffe5
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
In case the server returns with an invalid credentials message, the user
shall get a dialog box to enter new ones.
Change-Id: Ied6cc8b0eae6f0cbb49fbfedec282a821ece58aa
Reviewed-by: hjk <hjk@qt.io>
The current code supports Python 2 and Python 3 based debugger backends
(gdb, lldb) at the same time, but we'd like to drop Python 2 support
so we can take advantage of some of Python 3's goodies.
This copy here is not meant to be used in general but could perhaps be
used to replace the main code in situations that cannot use Python 3 yet.
Change-Id: I62273bc41b5a1e3a24720e167e64e4eac2e0c056
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Qt SDK is using the following parameters for sdktool:
"--name", "CMake %CMAKE_VERSION% (Qt)"
This effectively hardcodes the CMake version for the Qt SDK forever.
Fixes: QTCREATORBUG-30019
Fixes: QTCREATORBUG-29973
Fixes: QTCREATORBUG-28437
Change-Id: I05408442ea26d390f60a123be4fbf71f7018b150
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
They are already added by the Python run configuration.
Change-Id: Icfea32e00209a690901cf672a17a8ef5c23b909d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
pdbbridge uses exec() on the main file which causes the inferior to
use its sys.argv. Inferiors using argparse would then fail since they
cannot make use of the working directory passed.
To fix this, append the inferior arguments separated by "--" and
change sys.argv accordingly.
Change-Id: I35caf4b3ec19c5259c0d4235787c03a3e592768a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
... such that it passes with both the built-in indenter and ClangFormat.
The former just indents relative to the previous line, while the latter
considers more context.
Change-Id: I6e837c307728a9d1add16d6eb81880d54bcc89d6
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
We used to follow a Goto Implementation request with a Goto Definition
request, because the latter gave us the declaration instead of the
definition. This has changed in clangd 17, which means we now called Goto
Definition on a definition, which clangd interprets as switching to the
declaration.
We now do the right thing for all supported clangd versions.
Change-Id: I1c0acd2c8d5c942f7e25dedb1da953bb4f8d8d13
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
It's enough to remove just one item, as it's guaranteed
that items are unique inside the m_children vector.
This should fix the following warning:
"ignoring return value of function declared with 'nodiscard'
attribute [-Wunused-result]".
Change-Id: Iae8a11d1f12cd28ef3c4ae4363a4bdc3dbfe31e6
Reviewed-by: hjk <hjk@qt.io>
- Check condition only once
- Make sure correct length is being used
Change-Id: I8c9627d91b4f022d60bae039c0478248cc30d183
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Makes it possible to jump to Qt Test data tags using the locator.
Change-Id: I9b4590b0520a59675cd05055ee07918aa0dcf08d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>