Добавлен компонент PullToRefresh для ListView
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -72,3 +72,4 @@ CMakeLists.txt.user*
|
||||
*.dll
|
||||
*.exe
|
||||
|
||||
build/
|
||||
|
||||
@@ -12,7 +12,10 @@ qt_add_library(components STATIC)
|
||||
qt_add_qml_module(components
|
||||
URI ru.ded.components
|
||||
VERSION 1.0
|
||||
QML_FILES MainMenu.qml MenuBackButton.qml SubtitledItemDelegate.qml
|
||||
QML_FILES MainMenu.qml
|
||||
MenuBackButton.qml
|
||||
SubtitledItemDelegate.qml
|
||||
PoolToRefresh.qml
|
||||
)
|
||||
|
||||
set_target_properties(components PROPERTIES
|
||||
|
||||
42
PoolToRefresh.qml
Normal file
42
PoolToRefresh.qml
Normal file
@@ -0,0 +1,42 @@
|
||||
import QtQuick 2.15
|
||||
import QtQuick.Controls 2.15
|
||||
|
||||
Item {
|
||||
id: root
|
||||
|
||||
signal update()
|
||||
|
||||
property string text: qsTr("Release to update")
|
||||
property real sensivity: 50.0
|
||||
property alias enabled: connections.enabled
|
||||
|
||||
property bool triggered: false
|
||||
property bool trigger: parent.contentY < -1 * sensivity
|
||||
property bool atStart: parent.contentY === 0
|
||||
|
||||
Label {
|
||||
id: label
|
||||
|
||||
anchors.horizontalCenter: root.horizontalCenter
|
||||
|
||||
visible: root.trigger
|
||||
text: root.text
|
||||
}
|
||||
|
||||
Connections {
|
||||
id: connections
|
||||
|
||||
target: root.parent
|
||||
|
||||
function onContentYChanged() {
|
||||
if (root.trigger) {
|
||||
root.triggered = true
|
||||
}
|
||||
|
||||
if (root.atStart && root.triggered) {
|
||||
root.update()
|
||||
root.triggered = false
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user