| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This is a preparation for https://codereview.qt-project.org/c/qt/qtdeclarative/+/259561
and also avoids walking up the contexts
Change-Id: I9f016b7346db088dfe1519924c9770e486b46ec9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows the user to conveniently manage data for a role associated with
the text role. A common example of this is an enum stored in a backend with
nicely formatted text displayed to the user. Before this patch, developers
would have to write code like this:
ComboBox {
textRole: "text"
onActivated: backend.modifier = model[currentIndex].value
Component.onCompleted: currentIndex = findValue(backend.modifier)
model: [
{ value: Qt.NoModifier, text: qsTr("No modifier") },
{ value: Qt.ShiftModifier, text: qsTr("Shift") },
{ value: Qt.ControlModifier, text: qsTr("Control") }
]
function findValue(value) {
for (var i = 0; i < model.length; ++i) {
if (model[i].value === value)
return i
}
return -1
}
}
With this patch, the code becomes much simpler:
ComboBox {
textRole: "text"
valueRole: "value"
onActivated: backend.modifier = currentValue
Component.onCompleted: currentIndex = indexOfValue(backend.modifier)
model: [
{ value: Qt.NoModifier, text: qsTr("No modifier") },
{ value: Qt.ShiftModifier, text: qsTr("Shift") },
{ value: Qt.ControlModifier, text: qsTr("Control") }
]
}
[ChangeLog][Controls][ComboBox] Added valueRole, currentValue and
indexOfValue(). These allow convenient management of data for a role
associated with the text role.
Change-Id: I0ed19bd0ba9cf6b044a8113ff1a8782d43065449
Fixes: QTBUG-73491
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| | |
Change-Id: I79759d4101b5267c5d9d74ccb81e994da002b0ef
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-73484
Change-Id: I5c6019ec015a7d423dcc103d1acf23383c5b6239
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Work was probably started before 5.12 but the patch ended up getting
merged in time for 5.13. It seems that I forgot to update the versions.
Change-Id: I19edf08158cca0967a7a536b3aee326e3b393d4c
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ia4c5ae4b49beb24b7abb0502990b79bd54ca74ec
|
| |
| |
| |
| |
| |
| |
| | |
This makes sure the qmltypes target for qml_plugin's works.
Change-Id: I4a7624aa2db2eb40b9b44f158e099c651b1249cb
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
If you don't specify a minimumSize, the scrollbar handles will be
"invisible" when the size of the content view is much larger than
the viewport. Since having hidden handles is pointless, set
a default minimum size to be the same as the height of the handle.
Change-Id: Ia486a616308b5edfd6aa6a29f34a6fc9030c276b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
src/imports/controls/qtquickcontrols2plugin.cpp
Change-Id: I27f1260b539354e084beb28be78385e57fda63e1
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Do as the Default style does and make the current item bold. If we
don't do this, it can be impossible to distinguish the current item
from the highlighted item, especially when the popup obscures the
button.
Change-Id: If40b9c73c207d07fb5669564cdcfcea29ebed2f1
Fixes: QTBUG-68794
Reviewed-by: Nils Jeisecke <nils.jeisecke@saltation.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change makes all Qt Quick Controls 2 imports match the current
Qt minor version, which is 12 as of this patch.
It also updates all other Qt Quick imports to match.
This will also make future version bumps easier as all version numbers
in existing code/docs will match.
The following commands were used to verify that no old versions remain:
for i in `seq 0 11`; do git grep "import QtGraphicalEffects.*1.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick 2.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick.Layouts 1.$i$"; done
for i in `seq 0 5`; do git grep "import QtQuick.Controls.*2.$i$"; done
for i in `seq 0 11`; do git grep "import QtQuick.Templates 2.$i as T$"; done
[ChangeLog] From Qt 5.12 onwards, all import versions in
Qt Quick Controls 2 follow the same minor version as Qt's
minor version number. For example, the import version for Qt 5.12 is:
"import QtQuick.Controls 2.12".
Change-Id: I6d87573f20912e041d9c3b7c773cc7bf7b152ec3
Fixes: QTBUG-71095
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SplitView is an important tool for desktop applications that do not
want to use a dock widget-style approach for their user interface.
It allows users to have some degree of control over the sizing of
elements in the UI, as well as the ability to conveniently serialize
those sizes so that they're remembered across sessions.
The main differences between this and the SplitView in
Qt Quick Controls 1 are:
- Has its own SplitView attached properties, rather than relying on
the Layout attached properties (which required an additional import).
- Uses the attached preferredWidth and preferredHeight properties
as well as Item's implicitWidth/implicitHeight properties
for the preferred size of items, rather than using the width and
height properties.
- Inherits from Container, so supports most of its API (though some
parts of the API, like the currentIndex-related stuff, make no
sense for SplitView).
- Uses attached SplitHandle properties for the handle delegate to
visualize hovered/pressed effects.
- Offers convenience API for serializing the user's preferred sizes.
[ChangeLog][Controls][SplitView] Introduced SplitView, a control that
lays out items horizontally or vertically with a draggable splitter
between each item.
Task-number: QTBUG-56318
Change-Id: I3da91643ab312eb9ef5b0567da4e758f17747192
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/controls/Menu.qml
src/imports/controls/fusion/Menu.qml
src/imports/controls/imagine/Menu.qml
src/imports/controls/material/Menu.qml
src/imports/controls/universal/Menu.qml
Change-Id: I017949e5ac617c1cdeece71204e5aa519776fb39
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use Window.window instead of ApplicationWindow.window, as the former
will always result in a window regardless of which type of window is
in use.
Task-number: QTBUG-68858
Change-Id: I3bdb60350d92b13621b0f4db9085bf067b6ff6e2
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/controls/imagine/TextArea.qml
src/imports/controls/imagine/TextField.qml
tests/auto/controls/data/tst_tumbler.qml
Change-Id: I25a8228a4299fb7a53db70b7223663a1637ed933
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The placeholder text's renderType should cohere to the renderType of
the control. This is already the case for font, and sometimes color
too.
This solution avoids the need to expose a new property.
Task-number: QTBUG-68769
Change-Id: I6711aea83b7b8ee27f56b9c905aa4870465e3fd9
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of creating and setting the QQuickTheme instance from each
style plugin (e.g. QtQuickControls2MaterialStylePlugin), create the
QQuickTheme instance in QtQuickControls2Plugin when the style is
being resolved, and just pass the instance to be initialized by the
style plugin(s). This avoids the problem that QQuickTheme API was
virtual, and sub-classes created from plugins would have vtables
destroyed before the QQuickTheme was destroyed.
Task-number: QTBUG-67062
Task-number: QTBUG-68087
Change-Id: I19e9ced5296b708c2668c30163389cb3da6be7cf
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows us to add more themable attributes (on the side of fonts
and palettes) after the QQuickTheme API has been made public, because
it won't require adding virtuals. Only the resolve() method is virtual.
Task-number: QTBUG-67062
Change-Id: I6a5cc8d15aeaa5a9a0fe9b6d2591077f8822daac
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qt Quick Controls 2 selects its style when the main QtQuick.Controls
plugin is loaded. The style selection procedure resolves styled QML
files, such as Button.qml and Slider.qml, from the requested style.
The problem was that external styles were not able to embed styled
QML files into resources, because the external style plugin had not
yet been loaded when the style selection was performed. Only after
Button.qml & friends had been registered, and an instance was created,
those types would import the style (e.g. QtQuick.Controls.Material).
This patch solves the problem by manually loading the external style
plugin from the main Qt Quick Controls 2 plugin, in order to gain
access to its styled QML files in the resources. The name of the
style plugin is read from the qmldir file.
Change-Id: I5095ca129e909fb48fd106c87946a6ab9ae88931
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
All others have been updated, except GroupBox that has some strange
special handling for positioning the background.
Change-Id: Ief5a68cbeedbdc3c66b85e8d03198f70e35aac61
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickabstractbutton_p_p.h
src/quicktemplates2/qquickcombobox.cpp
src/quicktemplates2/qquickcontainer.cpp
src/quicktemplates2/qquickcontrol.cpp
src/quicktemplates2/qquickcontrol_p_p.h
src/quicktemplates2/qquickdialog_p_p.h
src/quicktemplates2/qquickdialogbuttonbox.cpp
src/quicktemplates2/qquickdialogbuttonbox_p_p.h
src/quicktemplates2/qquickdrawer.cpp
src/quicktemplates2/qquickmenubar.cpp
src/quicktemplates2/qquickmenubar_p_p.h
src/quicktemplates2/qquickpage.cpp
src/quicktemplates2/qquickpage_p_p.h
src/quicktemplates2/qquickpane.cpp
src/quicktemplates2/qquickpane_p_p.h
src/quicktemplates2/qquickpopup.cpp
src/quicktemplates2/qquickpopup_p_p.h
src/quicktemplates2/qquickrangeslider.cpp
src/quicktemplates2/qquickscrollview.cpp
src/quicktemplates2/qquickslider.cpp
src/quicktemplates2/qquickspinbox.cpp
src/quicktemplates2/qquickswipeview.cpp
src/quicktemplates2/qquicktabbar.cpp
src/quicktemplates2/qquicktextarea_p_p.h
src/quicktemplates2/qquicktextfield_p_p.h
src/quicktemplates2/qquicktheme_p.h
Change-Id: I6e2b8fe99e51e3e26c87546aa66af045bc429ec4
|
| |
| |
| |
| |
| | |
Change-Id: Ifd7521b8a7bfd7da91808dd00ebdcb59f2ba46dc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Same as 5adce042 for QQuickControl.
[ChangeLog][Controls][TextArea] Added topInset, bottomInset, leftInset,
and rightInset properties to control the geometry of the background
similarly to how paddings control the geometry of the contentItem.
Change-Id: I1e1b3a79a9f477ec7b64ec4c6cc8021bbf48adc0
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Same as 5adce042 for QQuickControl.
[ChangeLog][Controls][TextField] Added topInset, bottomInset, leftInset,
and rightInset properties to control the geometry of the background
similarly to how paddings control the geometry of the contentItem.
Change-Id: Ic1e4c15fd4b06a58f229b5156668c9a986f7bc3f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Same as 5bd9d44b for QQuickControl.
[ChangeLog][Controls][Label] Added implicitBackgroundWidth and
implicitBackgroundHeight properties that can be used to simplify
complex implicit size bindings.
[ChangeLog][Controls][TextArea] Added implicitBackgroundWidth and
implicitBackgroundHeight properties that can be used to simplify
complex implicit size bindings.
[ChangeLog][Controls][TextField] Added implicitBackgroundWidth and
implicitBackgroundHeight properties that can be used to simplify
complex implicit size bindings.
Change-Id: Idcc2d9af8df086b41c15f352506fd8afdbb2e3e7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After commit be9a56e5e3ced5d0d668fa24e4c65ae928f2e25a in qtbase, this is
not needed anymore. Instead the resource system injects the plugin entry
point with a reference to all resources.
Change-Id: Ic3fa0827ee6719b0a22f73b48667deb129089a6f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-60156
Change-Id: I11f59a67f5a319ac5a4eae9b8ccea5d16a983de2
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9f206c3c750fd648ba8761c574e0be94d32e940f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I94885e777a9c24cbde856f10e9dd258d8a72e9e1
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][GroupBox] Added implicitLabelWidth and
implicitLabelHeight properties.
Change-Id: Ieae54a3b3044b306cd00f45101c6573b5291352d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Dialog] Added implicitHeaderWidth, implicitHeaderHeight,
implicitFooterWidth, and implicitFooterHeight properties.
Change-Id: I0435d97cf1b6950d1ecbd5825fed1991549c59e5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Page] Added implicitHeaderWidth, implicitHeaderHeight,
implicitFooterWidth, and implicitFooterHeight properties.
Change-Id: Ia6de025767e64dd2b44edafc2e7dfdf9a99e3b5f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][SpinBox] Added up.implicitIndicatorWidth,
up.implicitIndicatorHeight, down.implicitIndicatorWidth, and
down.implicitIndicatorHeight properties.
Change-Id: I2cdc4e95f8cc3f0e47ce3b24346781f44809eecd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][RangeSlider] Added first.implicitHandleWidth,
first.implicitHandleHeight, second.implicitHandleWidth, and
second.implicitHandleHeight properties.
Change-Id: Iab68a7a905c4b6515517e3b9eb11c6fd70782764
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Slider] Added implicitHandleWidth and
implicitHandleHeight properties.
Change-Id: Id3a67f052a7b234b7eef0e946433e69c3e8add1d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Basically same as 704625a0 for AbstractButton.
[ChangeLog][Controls][ComboBox] Added implicitIndicatorWidth and
implicitIndicatorHeight properties.
Change-Id: I1bc9da1ee7ea99dc04ca4458baa06702a4612628
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/controls/Page.qml
src/imports/controls/fusion/Page.qml
src/imports/controls/imagine/Page.qml
src/imports/controls/material/Page.qml
src/imports/controls/universal/Page.qml
Change-Id: I5acf99d0d2009151d6daff9420d79cb06909c873
|
| |
| |
| |
| |
| |
| |
| |
| | |
Don't add paddings to header and footer width when choosing the max.
Padding affects content, not headers and footers.
Change-Id: I92381762f97eab384b18510522bf788abecd8338
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Popup] Added implicitBackgroundWidth,
implicitBackgroundHeight, implicitContentWidth, and implicitContentHeight
properties.
Change-Id: I3881b337bbd46b29873e8c00832006eec8b2836a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][AbstractButton] Added implicitIndicatorWidth and
implicitIndicatorHeight properties.
Change-Id: Ic9459efa76c12ba0df67dae0ffe103b14e011ee6
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
A simple search'n'replace change without hidden functional changes.
Change-Id: I11c76846028665e66dfc6b4359adb33f77cd88ae
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
A simple search'n'replace change without hidden functional changes.
Change-Id: I8e42f8ad30977630005529094eea726efa15a26d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][SwipeView] Added contentWidth and contentHeight
properties.
Change-Id: I9c37583cb5fcfb1af2d98d5d3753277e17e82608
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a follow-up to f1f884d3, which mentioned that:
This can be fixed properly in dev by providing separate contentWidth
and contentHeight properties that cleanly propagate the content size
to QML.
[ChangeLog][Controls][DialogButtonBox] Added contentWidth and
contentHeight properties.
Change-Id: I4b53702568c55d666bccb587af9fe8c8eba0b63d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Missed in 92e75ae5. (Creator still has problems after a8766caf?)
Change-Id: I41cee8bb26f09be7bbba233053302b15e4a60b79
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia32f3004cf540f995344286683d754558369f279
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...unless explicitly defined. All buttons repeated the same binding.
[ChangeLog][Controls][Control] Unless explicitly specified, baselineOffset
is now automatically updated based on the top padding of the control and
the baselineOffset of the contentItem. Styles no longer need to specify
the baselineOffset in QML.
Change-Id: I9c6f61371fee05a06b5dd31b27d8baf9da0bdeeb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I69ada9110df30ea5f20710a2d1e6ac6b6a448b21
|
| |
| |
| |
| |
| |
| |
| |
| | |
Unlike all other styles, imagine.pro was not assigning QML_FILES to
OTHER_FILES that makes the .qml files show up in Qt Creator.
Change-Id: I7510e8db6ef606774983151da3bae089a4697e8c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace the old enums that were originally copied from QPlatformTheme,
including irrelevant entries for DockWidget, MdiSubWindow, MessageBox,
with a unified enum that will be matched to cover everything needed
for theming fonts and palettes for Qt Quick Controls 2.
Task-number: QTBUG-67062
Change-Id: Ia99d092f28c00210c0c7f24d4241eb5a5d9ceb5b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|