def __init__(self, master, model):
        if not isinstance(master, tk.Tk):
            raise Exception("master is not a tk.Tk()")
        if not isinstance(model, TaskModel):
            raise Exception("model is not a TaskModel")

        self.__model = model
        self.__view = TaskView(master)
        self.__view.update_title(self.__model.get_title())
        self.__model.set_callback_title(self.__view.update_title)
        self.__view.toggle_button.config(command=self.__model.toggle)
예제 #2
0
    def __init__(self, master, model):
        if master.__class__.__name__ != "Tk":
            raise Exception("master is not a tk.Tk()")

        if not isinstance(model, TaskModel):
            raise Exception("model is not a TaskModel")
        self.__model = model
        self.__view = TaskView(master)
        ''' Update the TaskView to show the string
            currently represented by the TaskModel '''
        self.__view.update_title(model)
        ''' When the button is clicked, we want it to also update the view's label '''
        self.__model.set_callback_title(self.__view.update_title)
        self.__view.toggle_button.config(command=self.__model.toggle)
    def __init__(self, master, model):

        if isinstance(master, tk.Tk) == False:
            raise Exception("master is not a tk.Tk()")
        if isinstance(model, TaskModel) == False:
            raise Exception("model is not a TaskModel")

        self.__model = model
        self.__view = TaskView(master)
        self.__view.update_title(self.__model.get_title())

        for i in self.__model.load_from_file('task.json'):
            self.__view.insert(i['task'])

        self.__model.set_callback_title(self.callback)
        self.__view.toggle_button.config(command=self.__model.toggle)
        self.__view.add_button.config(command=self.add_item)
        self.__view.remove_button.config(command=self.remove_item)
    def __init__(self, master, model):
        # raise exceptions
        if isinstance(master, tk.Tk) == False:
            raise Exception("master is not a tk.Tk()")
        if isinstance(model, TaskModel) == False:
            raise Exception("model is not a TaskModel")

        # set private attributes
        self.__model = model
        self.__view = TaskView(master)
        self.__view.update_title(
            self.__model.get_title())  # set title for view according to model

        # link all callbacks from model to update view
        self.__model.set_callback_title(self.__view.update_title)
        # self.__view.update_title(self.__model.get_title())

        # link view button to update model (link model callback to view)
        self.__view.toggle_button.configure(command=self.__model.toggle)
예제 #5
0
import Tkinter as tk

from task_model import TaskModel
from task_view import TaskView

root = tk.Tk()
root.withdraw()
tv = TaskView(root)
tv.update_title("Finish this funny project")
root.mainloop()