status-desktop/ui/imports/shared/panels/CommunityBanner.qml
Pascal Precht 3509de8673 feat(AdvancedView): introduce feature flag for discord import tool
This adds a feature flag for the discord import tool so we can start
landing individual pieces of the feature without it being fully
implemented.

It also introduces the modal chooser for creating new communities but
it doesn't do anything more than that, as of this commit

Closes #6843
2022-08-26 10:18:49 +02:00

81 lines
2.0 KiB
QML

import QtQuick 2.13
import QtQuick.Controls 2.13
import QtGraphicalEffects 1.13
import StatusQ.Core 0.1
import StatusQ.Components 0.1
import StatusQ.Core.Theme 0.1
import StatusQ.Controls 0.1 as StatusQControls
import shared.panels 1.0
import shared.status 1.0
import utils 1.0
Rectangle {
id: root
property alias text: bannerText.text
property alias buttonText: bannerButton.text
property alias icon: bannerIcon.icon
implicitWidth: 272
implicitHeight: 168
border.color: Style.current.border
radius: 16
color: Style.current.transparent
signal buttonClicked()
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.RightButton
propagateComposedEvents: true
onClicked: {
/* Prevents sending events to the component beneath
if Right Mouse Button is clicked. */
mouse.accepted = false;
}
}
Rectangle {
width: 70
height: 4
color: Style.current.background
anchors.top: parent.top
anchors.topMargin: -2
anchors.horizontalCenter: parent.horizontalCenter
}
StatusRoundIcon {
id: bannerIcon
anchors.top: parent.top
anchors.topMargin: -8
anchors.horizontalCenter: parent.horizontalCenter
}
StatusBaseText {
id: bannerText
anchors.top: parent.top
anchors.topMargin: 48
horizontalAlignment: Text.AlignHCenter
font.pixelSize: 15
color: Theme.palette.directColor1
wrapMode: Text.WordWrap
anchors.right: parent.right
anchors.rightMargin: Style.current.xlPadding
anchors.left: parent.left
anchors.leftMargin: Style.current.xlPadding
}
StatusQControls.StatusButton {
id: bannerButton
anchors.horizontalCenter: parent.horizontalCenter
anchors.bottom: parent.bottom
anchors.bottomMargin: 16
font.weight: Font.Medium
onClicked: root.buttonClicked()
}
}