def __manage(self): date_list = sg.popup_get_date() find_date = date(date_list[2], date_list[0], date_list[1]) if not (find_date in self.undone_tasks_): sg.popup("No tasks at this date!") return current_tasks = self.undone_tasks_[find_date] is_open = False while True: if len(current_tasks) == 0: del self.undone_tasks_[find_date] sg.popup("No tasks left for today!") if is_open: window.close() return layout = [[sg.Text("Tasks for " + str(find_date))]] i = 0 for task in current_tasks: i += 1 temp = [ sg.Text(str(i) + ")"), sg.Text(task.title_, font=tkinter.font.ITALIC), sg.Text("Is frog? ") ] if task.is_frog_: temp.append(sg.Text("Yes", text_color='#00FF00')) else: temp.append(sg.Text("No", text_color='#FF0000')) temp.append(sg.Button("Delete", key=i)) layout.append(temp) layout.append([sg.Button("Return")]) window = sg.Window("Manage", layout) is_open = True event, value = window.read() if event == "Return" or sg.WIN_CLOSED: window.close() return print(event) if 1 <= event <= len(current_tasks): self.undone_tasks_[find_date].pop(event - 1) sg.popup("Task was successfully deleted.") window.close() is_open = False continue
def __add_task(self): layout1 = [[sg.Text("Write the task title:")], [sg.InputText()], [sg.Button("Next")]] window1 = sg.Window("To-Do app", layout1, resizable=True) while True: event, values = window1.read() if event == sg.WIN_CLOSED: return if event == "Next": break new_task = Task() new_task.title_ = values[0] window1.close() date_list = sg.popup_get_date() new_task.date_ = date(date_list[2], date_list[0], date_list[1]) str1 = "Is it a frog?" # + emoji.emojize(':frog:') layout2 = [[sg.Text(str1)], [ sg.Text("About 'Eat the frog' method.", text_color='#0645AD', enable_events=True, key='-LINK-') ], [sg.Button("Yes")], [sg.Button("No")]] window2 = sg.Window("To-Do app", layout2, resizable=True) while True: event, values = window2.read() if event == sg.WIN_CLOSED: return if event == '-LINK-': webbrowser.open( r'https://todoist.com/productivity-methods/eat-the-frog') if event == "Yes": new_task.is_frog_ = True break if event == "No": new_task.is_frog_ = False break window2.close() if not (new_task.date_ in self.undone_tasks_): self.undone_tasks_[new_task.date_] = [] self.undone_tasks_[new_task.date_].append(new_task)