Exemplo n.º 1
0
    def callbackVerschiebe(self, event):
        from EventManager import EventManager
        from TimeManager import TimeManager
        if event.keysym == "Return":
            nach = Zeit.fromString(self.text)
            self.unfokusiere()
            self.aktualisiereText(
            )  #setzt den Text auf die gespeicherte Zeit, wird nur überschrieben falls nach passt
            if nach is not None:
                if self.event is not None:
                    EventManager.verschiebeZeitNach(self.event,
                                                    self.istStartzeit(), nach)
                    self.text = nach.text

                    # überprüft ob die Zeit die Start oder Endzeit ist wenn sie einem Event zugeordnet ist
                    assert (self.istStartzeit() or self.istEndzeit())
                    assert not (self.istStartzeit() and self.istEndzeit())
                else:
                    TimeManager.verschiebeZeit(self, nach)
            self.zeichne()
        elif event.keysym == "BackSpace":
            self.text = self.text[:-1]
        elif event.keysym == "Delete":
            self.unfokusiere()
        else:
            self.text += event.char
        self.zeichneMarkiert()
Exemplo n.º 2
0
    def verschiebeZeit(zeit, nach):
        from ScreenManager import ScreenManager
        from EventManager import EventManager as EM

        if zeit == TimeManager.mittagspauseStart:
            EM.verschiebeZeitNach(EM.mittagspause, True, nach)
            return
        elif zeit == TimeManager.mittagspauseEnde:
            EM.verschiebeZeitNach(EM.mittagspause, False, nach)
            return

        if zeit == TimeManager.aufstehzeit:
            if nach > EM.findeKleinsteStartzeit(): return None
        elif zeit == TimeManager.schlafenszeit:
            if nach < EM.findeGroessteEndzeit(): return None
        zeit.stunde = nach.stunde
        zeit.minute = nach.minute
        zeit.text = nach.text
        ScreenManager.zeichneHintergrund()
        ScreenManager.zeichneEventsNeu()
        #TimeManager.speichereZeiten()
        return zeit
Exemplo n.º 3
0
    def test_verschiebeZeitNach(self):
        EM.events = []
        TM.schlafenszeit = Zeit(23, 0)
        EM.mittagspause = Event(Zeit(0, 0), Zeit(0, 0))
        event1 = Event(Zeit(11, 30), Zeit(15, 00))
        event2 = Event(Zeit(16, 30), Zeit(22, 00))

        lsg1 = Event(Zeit(11, 30), Zeit(16, 30))
        lsg2 = Event(Zeit(11, 30), Zeit(17, 00))
        lsg3 = Event(Zeit(17, 00), Zeit(22, 00))

        EM.addEvent(event1)
        EM.addEvent(event2)

        EM.verschiebeZeitNach(event1, False, Zeit(16, 30))
        self.assertEqual(str(event1.eventDanach), str(event2))
        self.assertEqual(str(event2.eventDavor), str(event1))
        self.assertEqual(str(event1), str(lsg1))

        EM.verschiebeZeitNach(event1, False, Zeit(17, 0))
        self.assertEqual(str(event1.eventDanach), str(event2))
        self.assertEqual(str(event2.eventDavor), str(event1))
        self.assertEqual(str(event1), str(lsg2))
        self.assertEqual(str(event2), str(lsg3))