132 lines
3.9 KiB
QML
132 lines
3.9 KiB
QML
import QtQuick 2.15
|
|
import QtQuick.Controls 2.15
|
|
import QtQuick.Layouts 1.15
|
|
|
|
import StatusQ.Core.Theme 0.1
|
|
|
|
import Storybook 1.0
|
|
|
|
import utils 1.0
|
|
import shared.views.chat 1.0
|
|
|
|
SplitView {
|
|
id: root
|
|
|
|
Logs { id: logs }
|
|
|
|
ListModel {
|
|
id: emojiReactionsModel
|
|
ListElement {
|
|
emojiId: 1
|
|
filename: "emojiReactions/heart"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
ListElement {
|
|
emojiId: 2
|
|
filename: "emojiReactions/thumbsUp"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
ListElement {
|
|
emojiId: 3
|
|
filename: "emojiReactions/thumbsDown"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
ListElement {
|
|
emojiId: 4
|
|
filename: "emojiReactions/laughing"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
ListElement {
|
|
emojiId: 5
|
|
filename: "emojiReactions/sad"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
ListElement {
|
|
emojiId: 6
|
|
filename: "emojiReactions/angry"
|
|
didIReactWithThisEmoji: false
|
|
}
|
|
}
|
|
|
|
SplitView {
|
|
orientation: Qt.Vertical
|
|
SplitView.fillWidth: true
|
|
|
|
Rectangle {
|
|
SplitView.fillWidth: true
|
|
SplitView.fillHeight: true
|
|
color: Theme.palette.statusAppLayout.rightPanelBackgroundColor
|
|
|
|
Button {
|
|
anchors.centerIn: parent
|
|
text: "Reopen"
|
|
onClicked: messageContextMenuView.open()
|
|
}
|
|
|
|
MessageContextMenuView {
|
|
id: messageContextMenuView
|
|
anchors.centerIn: parent
|
|
visible: true
|
|
closePolicy: Popup.NoAutoClose
|
|
|
|
messageId: "Oxdeadbeef"
|
|
reactionModel: emojiReactionsModel
|
|
messageContentType: Constants.messageContentType.messageType
|
|
chatType: Constants.chatType.oneToOne
|
|
isDebugEnabled: isDebugEnabledCheckBox.checked
|
|
hideDisabledItems: ctrlHideDisabled.checked
|
|
amIChatAdmin: ctrlChatAdmin.checked
|
|
canPin: true
|
|
pinnedMessage: ctrlPinned.checked
|
|
|
|
onPinMessage: logs.logEvent(`onPinMessage: ${messageContextMenuView.messageId}`)
|
|
onUnpinMessage: logs.logEvent(`onUnpinMessage: ${messageContextMenuView.messageId}`)
|
|
onPinnedMessagesLimitReached: logs.logEvent(`onPinnedMessagesLimitReached: ${messageContextMenuView.messageId}`)
|
|
onMarkMessageAsUnread: logs.logEvent(`onMarkMessageAsUnread: ${messageContextMenuView.messageId}`)
|
|
onToggleReaction: (emojiId) => logs.logEvent("onToggleReaction", ["emojiId"], arguments)
|
|
onDeleteMessage: logs.logEvent(`onDeleteMessage: ${messageContextMenuView.messageId}`)
|
|
onEditClicked: logs.logEvent(`onEditClicked: ${messageContextMenuView.messageId}`)
|
|
onShowReplyArea: (senderId) => logs.logEvent("onShowReplyArea", ["senderId"], arguments)
|
|
onCopyToClipboard: (text) => logs.logEvent("onCopyToClipboard", ["text"], arguments)
|
|
}
|
|
}
|
|
}
|
|
|
|
LogsAndControlsPanel {
|
|
id: logsAndControlsPanel
|
|
|
|
SplitView.minimumWidth: 150
|
|
SplitView.preferredWidth: 250
|
|
|
|
logsView.logText: logs.logText
|
|
|
|
controls: ColumnLayout {
|
|
spacing: 16
|
|
|
|
CheckBox {
|
|
id: isDebugEnabledCheckBox
|
|
text: "Enable Debug"
|
|
}
|
|
|
|
CheckBox {
|
|
id: ctrlHideDisabled
|
|
text: "Hide disabled items"
|
|
checked: true
|
|
}
|
|
|
|
CheckBox {
|
|
id: ctrlChatAdmin
|
|
text: "Chat Admin"
|
|
checked: false
|
|
}
|
|
|
|
CheckBox {
|
|
id: ctrlPinned
|
|
text: "Pinned message?"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
// category: Views
|