Ejemplo n.º 1
0
def main():
    ScreenManager.init()
    TM.ladeZeiten()
    EM.ladeEvents()
    ScreenManager.zeichneHintergrund()
    ScreenManager.root.protocol("WM_DELETE_WINDOW", beenden)
    ScreenManager.run()
Ejemplo n.º 2
0
    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}")