summaryrefslogtreecommitdiffstats
path: root/examples/demos/mediaplayer/MediaPlayer/TouchMenu.qml
blob: 89a3611866371f755f0cfd7133e1b16d4d11d632 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause

import QtQuick
import QtQuick.Controls.Fusion
import QtQuick.Layouts
import Config

Menu {
    id: menuPopup
    padding: 0
    verticalPadding: 15

    property alias openUrlMenuItem: openUrlMenuItem
    property alias openFileMenuItem: openFileMenuItem

    background: Rectangle {
        color: Config.mainColor
        radius: 15
        border.color: Config.highlightColor
    }

    component MenuItemLabel: Label {
        font.pixelSize: 24
        color: Config.highlightColor
        horizontalAlignment: Text.AlignHCenter
        verticalAlignment: Text.AlignVCenter
        topPadding: 4
        bottomPadding: 4
    }

    component CustomMenuItem: MenuItem {
        id: menuItem

        property bool bold

        text: qsTr("File")
        contentItem: MenuItemLabel {
            text: menuItem.text
            font.bold: menuItem.bold
        }

        background: Rectangle {
            color: menuItem.pressed ? Config.highlightColor : "transparent"
            opacity: 0.25
        }
    }

    MenuItemLabel {
        text: qsTr("Load media file from:")
        color: Config.secondaryColor
        bottomPadding: 12

        width: parent.width
    }

    Rectangle {
        width: parent.width
        implicitHeight: 1
        color: Config.highlightColor
        opacity: 0.25
    }

    CustomMenuItem {
        id: openFileMenuItem
        text: qsTr("File")
        bold: true
    }

    Rectangle {
        width: parent.width
        implicitHeight: 1
        color: Config.highlightColor
        opacity: 0.25
    }

    CustomMenuItem {
        id: openUrlMenuItem
        text: qsTr("URL")
        bold: true
    }

    Rectangle {
        implicitHeight: 1
        color: Config.highlightColor

        Layout.fillWidth: true
    }

    CustomMenuItem {
        id: cancelButtonBackground
        text: qsTr("Cancel")
    }
}