blob: b51f38d2b58e64e1ff61ba032845fe12d641447b (
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
|
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QFont
from PyQt5.QtWidgets import QHBoxLayout, QLabel
class Entry:
def __init__(self, id, parent_id, desc, due = "", due_alt = "", link = "", done = False, hidden = False):
self.id = id
self.parent_id = parent_id
self.desc = desc
self.due = due
self.due_alt = due_alt
self.link = link
self.done = done
self.hidden = hidden
def buildLayout(self):
output = QHBoxLayout()
bullet = QLabel()
body = QLabel()
bullet.setFont(QFont("Arial", 11))
body.setTextInteractionFlags(Qt.TextSelectableByMouse | Qt.LinksAccessibleByMouse)
body.setFont(QFont("Arial", 11))
body.setWordWrap(True)
if self.done:
bullet.setText("\u2713 ")
else:
bullet.setText("- ")
output.addWidget(bullet)
if self.due:
body.setText("{0}/{1}/{2}: ".format(self.due.month(), self.due.day(), self.due.year()))
if self.link:
body.setOpenExternalLinks(True)
body.setText(body.text() + "<a href=\"{0}\">".format(self.link))
body.setText(body.text() + self.desc)
if self.link:
body.setText(body.text() + "</a>")
output.addWidget(body)
output.addStretch()
if self.done:
font = body.font()
font.setStrikeOut(True)
body.setFont(font)
return output
|