-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathController.py
70 lines (61 loc) · 2.22 KB
/
Controller.py
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
from datetime import date
class Controller:
def __init__(self, model, view):
self.view = view
self.model = model
self.view.start_scheduler(0,1)
self.view.attach2controller(self)
self.model.create_tables()
# print('1:',self.model.steps)
temp = self.model.load_steps()
# print('2:',self.model.steps)
# print('>> data read:', temp)
self.view.set_data(temp)
self.view.update_ratio()
def date_change(self):
print('>> date_change')
stopped = self.view.date_change()
self.model.save_records()
self.model.date_change()
# temp = self.model.load_steps()
# print(temp)
# self.view.set_data(temp) #
self.view.date_changed(stopped)
def add_task(self):
# print('>> add_task')
task_name = self.view.get_new_task_name()
if self.model.exist_task(task_name):
self.view.msg_window("Existed", "The task existed", warning=True)
elif task_name == '':
self.view.msg_window("Empty name", "The task name shouldn't be empty", warning=True)
else:
self.model.add_task(task_name)
self.view.add_task_recorder(task_name)
def remove_task(self):
# print('>> remove_task')
remove = self.view.remove_task()
print('removing',remove)
self.model.remove_task(remove)
def clear_tasks(self):
# print('>> clear_tasks')
self.view.clear_tasks()
self.model.clear_all()
def save_records(self):
# print('>> save_records')
self.model.save_records()
self.view.saved()
def load_combobox(self):
# print('>> load_combobox')
tasks = self.model.get_tasks()
print(tasks)
self.view.combobox_load_tasks(tasks)
def show_records(self):
# print('>> show_records')
tasks = self.view.get_combobox_selected()
print('tasks',tasks)
if len(tasks) > 0:
(table_data, perc_data, date_total) = self.model.get_table_data(tasks)
self.view.show_records(tasks, table_data, perc_data, date_total)
else:
print('reset')
self.view.reset_table()