summaryrefslogtreecommitdiff
path: root/Header.qml
blob: 395d713dbd89ba5e7da9181ac8eb54375595fe68 (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
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15

ToolBar {
	property alias logo: logo
	property alias toolButton: toolButton
	property alias optionsMenu: optionsMenu
	property alias optionProfile: profile
	property alias optionSettings: settings
	property alias optionHelp: help
	property alias optionSign: sign
	property bool doesntEmbed: Qt.platform.os === "android"
				|| Qt.platform.os === "linux"
				|| Qt.platform.os === "osx"
				|| Qt.platform.os === "unix"
				|| Qt.platform.os === "windows"

	background: Rectangle {
		implicitHeight: 64
	}

	FontLoader {
		id: roboto
		source: doesntEmbed ? "" : "Roboto/Roboto-Medium.ttf"
	}

	Item {
		anchors.fill: parent

		ToolButton {
			id: logo
			anchors.left: parent.left
			icon.source: "https://eduport.webestica.com/assets/images/logo.svg"
			icon.width: 115
			background: Rectangle {
				implicitHeight: 64
			}
		}

		ToolButton {
			id: toolButton
			anchors.right: parent.right
			icon.source: "https://eduport.webestica.com/assets/images/avatar/01.jpg"
			icon.color: "transparent"
			background: Rectangle {
				implicitHeight: 64
			}
			onClicked: optionsMenu.open()

			Menu {
				id: optionsMenu
				y: parent.height
				Action {
					id: profile
					text: qsTr("Edit Profile")
				}
				Action {
					id: settings
					text: qsTr("Account Settings")
				}
				Action {
					id: help
					text: qsTr("Help")
				}
				Action {
					id: sign
					text: qsTr("Sign Out")
				}
				delegate: MenuItem {
					font {
						family: doesntEmbed ? "Roboto"
							: roboto.name
						pixelSize: 15
						weight: Font.Medium
					}
				}
			}
		}
	}
}