aboutsummaryrefslogtreecommitdiff
path: root/todo/gui/tasks/widget.py
blob: cc7fe96baf619d6f25ca627afe0f1d49b36e6092 (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
from PyQt5 import QtWidgets

from todo.model.status import Status
import todo.gui.tasks.signal
import todo.gui.tasks.table.widget
import todo.gui.icon
import todo.gui.signal

def widget(parent, on_show: todo.gui.signal.Reload, status: Status):
    widget = QtWidgets.QWidget(parent)

    layout = QtWidgets.QVBoxLayout(widget)
    widget.setLayout(layout)

    layout.addSpacing(15)

    add_task_signal = todo.gui.tasks.signal.AddTask()

    add_task_button = QtWidgets.QPushButton("  Add a task", widget)
    add_task_button.setFixedHeight(30)
    add_task_button.setIcon(todo.gui.icon.new_folder(widget.style()))
    add_task_button.clicked.connect(lambda: todo.gui.tasks.dialog.add(widget, status, add_task_signal).exec_())
    layout.addWidget(add_task_button)

    layout.addSpacing(20)

    table = todo.gui.tasks.table.widget.Widget(widget, on_show, add_task_signal, status)
    layout.addWidget(table)

    return widget