[Interest] QML bug?
Jérôme Godbout
godboutj at amotus.ca
Fri Apr 16 15:02:57 CEST 2021
Both are Component (header and the row delegate), they will be instantiated later. Component are like a recipe to be instantiated, they can bind to actual instance into the current scope. So the current context doesn’t known the other instance value since the header is not an object instantiated but a Component. Both component has the ListView Context as parent Context. They are sibling Context so they do not known each other.
Bind the delegate tot connectionsList.width just like the header does and that should remove the bind issue with hostItem.width.
If you need to have both value, add property into your listview that contain the value and both Component can bind to the ListView property instead.
Jérôme Godbout, B. Ing.
Software / Firmware Team Lead
O: (418) 682-3636 ext.: 114
C: (581) 777-0050
godboutj at dimonoff.com<mailto:godboutj at dimonoff.com>
[signature_1907764182]<https://www.dimonoff.com/>
dimonoff.com<https://www.dimonoff.com/>
1015 Avenue Wilfrid-Pelletier,
Québec, QC G1W 0C4, 4e étage
From: Interest <interest-bounces at qt-project.org> on behalf of Alexander Dyagilev <alervdvcw at gmail.com>
Date: Friday, April 16, 2021 at 7:25 AM
To: interest at qt-project.org <interest at qt-project.org>
Subject: [Interest] QML bug?
Hello,
Is this QML bug or am I misunderstanding something?
It says:
qrc:/qml_ui/desktop/BottomPanel/ConnectionsTab.qml:75: ReferenceError: hostItem is not defined
qrc:/qml_ui/desktop/BottomPanel/ConnectionsTab.qml:84: ReferenceError: portItem is not defined
Why are not they defined? These are ids of items defined in the same qml file.
Code:
import QtQuick 2.10
import QtQuick.Controls 2.4
import QtQuick.Layouts 1.3
import "../BaseElements"
import org.freedownloadmanager.fdm 1.0
Item {
anchors.fill: parent
BaseLabel {
text: qsTr("There are no connections") + App.loc.emptyString
anchors.centerIn: parent
visible: !connectionsList.visible
font.pixelSize: 13
}
ListView {
id: connectionsList
anchors.fill: parent
anchors.bottomMargin: 1
ScrollBar.vertical: ScrollBar{}
flickableDirection: Flickable.AutoFlickIfNeeded
boundsBehavior: Flickable.StopAtBounds
clip: true
headerPositioning: ListView.OverlayHeader
visible: downloadsItemTools.running && count
model: downloadsItemTools.connectionsModel
header: RowLayout {
id: columns
width: parent.width
spacing: 0
z: 2
TablesHeaderItem {
id: hostItem
text: qsTr("Host") + width + App.loc.emptyString
Layout.preferredWidth: Math.max(300, headerMinimumWidth)
color: appWindow.theme.background
}
TablesHeaderItem {
id: portItem
text: qsTr("Port") + App.loc.emptyString
Layout.preferredWidth: headerMinimumWidth
color: appWindow.theme.background
}
TablesHeaderItem {
id: countItem
text: qsTr("Connection count") + App.loc.emptyString
Layout.fillWidth: true
color: appWindow.theme.background
Rectangle {
height: parent.height
width: 1
anchors.right: parent.right
color: appWindow.theme.border
}
}
}
delegate: RowLayout {
width: parent.width
height: 22
spacing: 0
BaseLabel {
text: model.host
Layout.preferredWidth: hostItem.width
Layout.minimumWidth: Layout.preferredWidth
Layout.fillHeight: true
leftPadding: 6
Rectangle{anchors.fill: parent;color:"yellow";z:-1}
}
BaseLabel {
text: model.port
Layout.preferredWidth: portItem.width
Layout.minimumWidth: Layout.preferredWidth
Layout.fillHeight: true
Rectangle{anchors.fill: parent;color:"red";z:-1}
leftPadding: 6
}
BaseLabel {
text: model.connectionCount
Layout.fillWidth: true
Layout.fillHeight: true
leftPadding: 6
Rectangle{anchors.fill: parent;color:"blue";z:-1}
}
}
}
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20210416/68312235/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 13927 bytes
Desc: image001.png
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20210416/68312235/attachment-0001.png>
More information about the Interest
mailing list