status-desktop/ui/app/AppLayouts/Communities/panels/ControlNodeOfflineCenterPan...

139 lines
4.0 KiB
QML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import QtQuick 2.15
import QtQuick.Layouts 1.15
import QtGraphicalEffects 1.0
import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1
import StatusQ.Components 0.1
import StatusQ.Controls 0.1
import StatusQ.Layout 0.1
ColumnLayout {
id: root
property string name
property string chatDateTimeText
property string listUsersText
property var messagesModel
spacing: 0
// Blur background:
Item {
Layout.fillWidth: true
Layout.preferredHeight: Math.min(
centralPanelData.implicitHeight,
parent.height)
ColumnLayout {
id: centralPanelData
width: parent.width
layer.enabled: true
layer.effect: fastBlur
StatusBaseText {
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: 30
Layout.bottomMargin: 30
text: root.chatDateTimeText
font.pixelSize: 13
color: Theme.palette.baseColor1
}
RowLayout {
Layout.alignment: Qt.AlignHCenter
StatusBaseText {
text: root.listUsersText
font.pixelSize: 13
}
}
ListView {
Layout.fillWidth: true
Layout.preferredHeight: childrenRect.height + spacing
Layout.topMargin: 16
spacing: 16
model: root.messagesModel
delegate: StatusMessage {
width: ListView.view.width
timestamp: model.timestamp
enabled: false
messageDetails: StatusMessageDetails {
messageText: model.message
contentType: model.contentType
sender.displayName: model.senderDisplayName
sender.isContact: model.isContact
sender.trustIndicator: model.trustIndicator
sender.profileImage: StatusProfileImageSettings {
width: 40
height: 40
name: model.profileImage || ""
colorId: model.colorId
}
}
}
}
}
}
// User information content
Rectangle {
id: panelBase
Layout.fillWidth: true
Layout.fillHeight: true
color: Theme.palette.statusAppLayout.rightPanelBackgroundColor
gradient: Gradient {
GradientStop {
position: 0.000
color: "transparent"
}
GradientStop {
position: 0.180
color: panelBase.color
}
}
ColumnLayout {
anchors.fill: parent
spacing: 0
Item {
Layout.fillHeight: true
}
StatusBaseText {
Layout.maximumWidth: 405
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
font.weight: Font.Bold
font.pixelSize: Constants.onboarding.titleFontSize
text: qsTr("%1 will be right back!").arg(root.name)
wrapMode: Text.WordWrap
}
StatusBaseText {
Layout.maximumWidth: 405
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
horizontalAlignment: Text.AlignHCenter
font.pixelSize: Constants.onboarding.titleFontSize
text: qsTr("You will automatically re-enter the community and be able to view and post as normal as soon as the communitys control node comes back online.")
wrapMode: Text.WordWrap
}
Item {
Layout.fillHeight: true
}
}
}
Component {
id: fastBlur
FastBlur {
radius: 32
transparentBorder: true
}
}
}