def main(): ScreenManager.init() TM.ladeZeiten() EM.ladeEvents() ScreenManager.zeichneHintergrund() ScreenManager.root.protocol("WM_DELETE_WINDOW", beenden) ScreenManager.run()
def keyInput(keyEvent): from Zeit import Zeit from TimeManager import TimeManager from EventManager import EventManager from Event import Event if keyEvent.keysym == "Return": #Parse different input zeit = Zeit.fromString(ScreenManager.inputText) zeit1, zeit2 = Zeit.intervalFromString(ScreenManager.inputText) datum = Zeit.dateFromString(ScreenManager.inputText) #reset the input Text ScreenManager.inputText = "" if zeit is not None: zeit.datum = TimeManager.aktuellesDatum.datum ScreenManager.select(zeit, True) elif zeit1 is not None and zeit2 is not None: zeit1.datum = zeit2.datum = TimeManager.aktuellesDatum.datum if (TimeManager.aufstehzeit <= zeit1 < TimeManager.mittagspauseStart and zeit1 < zeit2 <= TimeManager.mittagspauseStart ) or (TimeManager.mittagspauseEnde <= zeit1 < TimeManager.schlafenszeit and zeit1 < zeit2 <= TimeManager.schlafenszeit): neuesEvent = EventManager.addEvent(Event(zeit1, zeit2)) ScreenManager.ausgewaehlt = neuesEvent ScreenManager.ausgewaehlt.zeichneMarkiert() ScreenManager.ausgewaehlt.fokusiere() else: ScreenManager.inputText = "Invalid Input for Interval" elif datum is not None: # speichere EventManager.speichereEvents() TimeManager.speichereZeiten() #verschiebe TimeManager.aktuellesDatum.datum = datum.datum # lösche die Zeiten und Events von vorherigen Tag vom Canvas for event in EventManager.events: event.verstecke() for zeit in TimeManager.zeiten: zeit.entferne() EventManager.mittagspause.verstecke() # Lade und zeichne neu TimeManager.ladeZeiten() EventManager.ladeEvents() ScreenManager.zeichneHintergrund() ScreenManager.canvas.itemconfig( ScreenManager.datumAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumLang()) ScreenManager.canvas.itemconfig( ScreenManager.jahrAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumJahr()) elif keyEvent.keysym == "BackSpace": ScreenManager.inputText = ScreenManager.inputText[:-1] elif keyEvent.keysym == "Delete": pass elif keyEvent.keysym == "Right": #speichere EventManager.speichereEvents() TimeManager.speichereZeiten() TimeManager.aktuellesDatum.verschiebeAufMorgen() # lösche die Zeiten und Events von vorherigen Tag vom Canvas for event in EventManager.events: event.verstecke() for zeit in TimeManager.zeiten: zeit.entferne() EventManager.mittagspause.verstecke() #Lade und zeichne neu TimeManager.ladeZeiten() ScreenManager.zeichneHintergrund() EventManager.ladeEvents() ScreenManager.canvas.itemconfig( ScreenManager.datumAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumLang()) ScreenManager.canvas.itemconfig( ScreenManager.jahrAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumJahr()) elif keyEvent.keysym == "Left": #speichere EventManager.speichereEvents() TimeManager.speichereZeiten() TimeManager.aktuellesDatum.verschiebeAufGestern() #lösche die Zeiten und Events von vorherigen Tag vom Canvas for event in EventManager.events: event.verstecke() for zeit in TimeManager.zeiten: zeit.entferne() EventManager.mittagspause.verstecke() #lade und zeichne neu TimeManager.ladeZeiten() ScreenManager.zeichneHintergrund() EventManager.ladeEvents() ScreenManager.canvas.itemconfig( ScreenManager.datumAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumLang()) ScreenManager.canvas.itemconfig( ScreenManager.jahrAnzeige, text=TimeManager.aktuellesDatum.erhalteDatumJahr()) else: ScreenManager.inputText += keyEvent.char ScreenManager.canvas.itemconfig( ScreenManager.inputAnzeige, text=f"Input: {ScreenManager.inputText}")