// Copyright (C) 2023 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause /* This is a UI file (.ui.qml) that is intended to be edited in Qt Design Studio only. It is supposed to be strictly declarative and only uses a subset of QML. If you edit this file manually, you might introduce QML code that is not supported by Qt Design Studio. Check out https://doc.qt.io/qtcreator/creator-quick-ui-forms.html for details on .ui.qml files. */ pragma ComponentBehavior: Bound import QtQuick import QtQuick.Controls.Basic import Thermostat Item { id: root required property list roomsList required property ScheduleViewForm scheduleViewRoot required property int currentRoomIndex property bool isOneColumn: false ListView { id: roomSelector model: root.roomsList width: root.width height: 28 spacing: 26 orientation: ListView.Horizontal delegate: Label { id: labelDelegate required property Room modelData required property int index readonly property bool isActive: swipeView.currentIndex === index text: modelData.name font.pixelSize: 12 font.family: "Titillium Web" font.weight: 400 font.bold: isActive font.underline: isActive color: isActive ? "#2CDE85" : "#898989" MouseArea { anchors.fill: parent Connections { function onClicked() { swipeView.setCurrentIndex(labelDelegate.index) } } } } } SwipeView { id: swipeView height: root.height - roomSelector.height + 13 width: root.width anchors.top: roomSelector.bottom anchors.horizontalCenter: parent.horizontalCenter spacing: 7 clip: true currentIndex: root.currentRoomIndex Connections { function onCurrentIndexChanged() { root.currentRoomIndex = swipeView.currentIndex } } Repeater { id: repeater model: root.roomsList ScheduleScrollView { required property Room modelData room: modelData width: swipeView.width height: swipeView.height scheduleViewRoot: root.scheduleViewRoot } } } }