#!/usr/bin/python from time import sleep from Tkinter import * class App: def __init__(self, pause): self.pause = pause self.newPause = pause self.noTime = 0 self.yesTime = 0 def sleep(self): sleep(self.pause * 60) def display(self, master): self.pauseLabel = StringVar() self.setLabel() self.frame = Frame(master) self.frame.pack() Label( self.frame, text="Working?", font=("System", 24) ).grid(row=0, column=0, columnspan=4, padx=5, pady=5) Button( self.frame, text="No (" + str(self.noTime).zfill(3) + " minutes)", command=self.workingNo ).grid(row=1, column=0, columnspan=2, padx=5, pady=5) Button( self.frame, text="Yes (" + str(self.yesTime).zfill(3) + " minutes)", command=self.workingYes ).grid(row=1, column=2, columnspan=2, padx=5, pady=5) Button( self.frame, text="-", command=self.decrease ).grid(row=2, column=0, columnspan=1, padx=5, pady=5) Label( self.frame, textvariable=self.pauseLabel ).grid(row=2, column=1, columnspan=2, padx=5, pady=5) Button( self.frame, text="+", command=self.increase ).grid(row=2, column=3, columnspan=1, padx=5, pady=5) def decrease(self): self.newPause -= 1 self.setLabel() def increase(self): self.newPause += 1 self.setLabel() def quit(self): self.pause = self.newPause self.frame.quit() def setLabel(self): self.pauseLabel.set( "(Remind again in " + str(self.newPause).zfill(3) + " minutes)" ) def workingNo(self): self.noTime += self.pause self.quit() def workingYes(self): self.yesTime += self.pause self.quit() app = App(10) while True: app.sleep() root = Tk() root.title("Get To Work") root.geometry('+300+300') app.display(root) root.mainloop() root.destroy()