-
Notifications
You must be signed in to change notification settings - Fork 2
/
IQHistoryWindow.qml
101 lines (89 loc) · 3.65 KB
/
IQHistoryWindow.qml
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
95
96
97
98
99
100
101
/*
* This file is part of IQ Notifier.
*
* IQ Notifier is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* any later version.
*
* IQ Notifier is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with IQ Notifier. If not, see <http://www.gnu.org/licenses/>.
*/
import QtQuick 2.5
import QtQuick.Window 2.1
import IQNotifier 1.0
IQPopup {
id: root
dropDuration: container.dropDuration
height: IQThemes.historyWindowTheme.height ?
IQThemes.historyWindowTheme.height :
calcHeight
width: IQThemes.historyWindowTheme.width ?
IQThemes.historyWindowTheme.width :
calcWidth
x: IQThemes.historyWindowTheme.x
y: IQThemes.historyWindowTheme.y
property var closeCallback: function () {
console.log("No close callback provided!")
}
property int calcHeight: Screen.height
property int calcWidth: Screen.desktopAvailableWidth / 4
property int barHeight: 32
IQFancyContainer {
id: container
anchors.fill: parent
color: IQThemes.historyWindowTheme.bgColor
bgImageSource: IQThemes.historyWindowTheme.bgImage
IQNotificationBar {
id: bar
z: 1
visible: height
height: IQThemes.historyWindowTheme.barHeight
closeButtonImageSource: IQThemes.historyWindowTheme.closeIcon
anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
color: IQThemes.historyWindowTheme.barBgColor
text: IQThemes.historyWindowTheme.windowTitle
textFontSize: IQThemes.historyWindowTheme.barFontSize
textColor: IQThemes.historyWindowTheme.barTextColor
onCloseClicked: {
closeCallback();
root.drop();
}
}
ListView {
id: listView
highlightFollowsCurrentItem: false
focus: true
anchors.top: bar.bottom
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
model: IQHistory.model
delegate: IQHistoryNotification{
height: IQThemes.historyWindowTheme.notificationHeight ?
IQThemes.historyWindowTheme.notificationHeight : 70
color: IQThemes.historyWindowTheme.nbgColor
appColor: IQThemes.historyWindowTheme.nappTextColor
titleColor: IQThemes.historyWindowTheme.ntitleTextColor
bodyColor: IQThemes.historyWindowTheme.nbodyTextColor
appSize: IQThemes.historyWindowTheme.nappFontSize?
IQThemes.historyWindowTheme.nappFontSize :
height * 0.08333333333333333333
titleSize: IQThemes.historyWindowTheme.ntitleFontSize ?
IQThemes.historyWindowTheme.ntitleFontSize :
height * 0.125
bodySize: IQThemes.historyWindowTheme.nbodyFontSize ?
IQThemes.historyWindowTheme.nbodyFontSize :
height * 0.11111111111111111111
onRemoveNotification: IQHistory.remove(index)
}
}
}
}