Beispiel #1
0
        public App(UI ui, Uhr uhr, MP3 mp3, Entrypoints ep)
        {
            ui.Start_gefordert += ep.Wecker_starten;
            ui.Stopp_gefordert += ep.Wecker_stoppen;

            ep.Restzeit += ui.Restzeit_anzeigen;
            ep.Weckzeit_erreicht += mp3.Abspielen;

            ep.Wecker_läuft += ui.Wecker_läuft;
            ep.Wecker_gestoppt += ui.Wecker_läuft_nicht;

            uhr.Uhrzeit += ui.Uhrzeit_anzeigen;

            uhr.Uhrzeit_starten();

            Application.Run(ui);
        }
Beispiel #2
0
        public Entrypoints(Uhr uhr)
        {
            _uhr = uhr;

            _wecker_starten += weckauftrag => {
                var ablaufdauer = weckauftrag.VerbleibendeZeit;
                _uhr.Countdown_starten(ablaufdauer);
                this.Wecker_läuft();
            };

            _wecker_stoppen += () => {
                _uhr.Countdown_stoppen();
                Wecker_gestoppt();
            };

            _uhr.Countdown += r => Restzeit(r);
            _uhr.Countdown_abgelaufen += () => {
                Weckzeit_erreicht();
                Wecker_gestoppt();
            };
        }