2019-04-21 20:56:59 +10:00
|
|
|
import QtQuick 2.7
|
2019-05-03 04:20:21 +10:00
|
|
|
import QtQuick.Layouts 1.3
|
2019-04-29 05:18:36 +10:00
|
|
|
import "../Base"
|
2019-04-21 20:56:59 +10:00
|
|
|
|
2019-05-03 04:20:21 +10:00
|
|
|
Column {
|
|
|
|
id: roomCategoryDelegate
|
|
|
|
width: roomCategoriesList.width
|
2019-05-07 11:37:34 +10:00
|
|
|
|
|
|
|
property int normalHeight: childrenRect.height // avoid binding loop
|
|
|
|
|
2019-05-18 05:39:00 +10:00
|
|
|
opacity: roomList.model.count > 0 ? 1 : 0
|
|
|
|
height: normalHeight * opacity
|
|
|
|
visible: opacity > 0
|
|
|
|
|
2019-07-07 07:42:04 +10:00
|
|
|
Behavior on opacity { HNumberAnimation {} }
|
2019-04-21 20:56:59 +10:00
|
|
|
|
2019-05-03 04:20:21 +10:00
|
|
|
property string roomListUserId: userId
|
|
|
|
property bool expanded: true
|
2019-04-21 20:56:59 +10:00
|
|
|
|
2019-05-03 04:20:21 +10:00
|
|
|
HRowLayout {
|
|
|
|
width: parent.width
|
2019-04-21 20:56:59 +10:00
|
|
|
|
2019-05-03 04:20:21 +10:00
|
|
|
HLabel {
|
|
|
|
id: roomCategoryLabel
|
|
|
|
text: name
|
|
|
|
font.weight: Font.DemiBold
|
|
|
|
elide: Text.ElideRight
|
|
|
|
maximumLineCount: 1
|
|
|
|
|
|
|
|
Layout.fillWidth: true
|
|
|
|
}
|
|
|
|
|
2019-05-07 10:37:41 +10:00
|
|
|
ExpandButton {
|
|
|
|
expandableItem: roomCategoryDelegate
|
2019-05-17 05:53:17 +10:00
|
|
|
iconDimension: 12
|
2019-05-03 04:20:21 +10:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
RoomList {
|
|
|
|
id: roomList
|
|
|
|
interactive: false // no scrolling
|
|
|
|
visible: height > 0
|
|
|
|
width: roomCategoriesList.width - accountList.Layout.leftMargin
|
2019-05-18 05:39:00 +10:00
|
|
|
opacity: roomCategoryDelegate.expanded ? 1 : 0
|
|
|
|
height: childrenRect.height * opacity
|
|
|
|
clip: listHeightAnimation.running
|
2019-05-03 04:20:21 +10:00
|
|
|
|
|
|
|
userId: roomListUserId
|
|
|
|
category: name
|
|
|
|
|
2019-05-18 05:39:00 +10:00
|
|
|
Behavior on opacity {
|
2019-07-07 07:42:04 +10:00
|
|
|
HNumberAnimation { id: listHeightAnimation }
|
2019-05-03 04:20:21 +10:00
|
|
|
}
|
|
|
|
}
|
2019-04-21 20:56:59 +10:00
|
|
|
}
|