Ejemplo n.º 1
0
        public YapaTheme(IMainViewModel viewModel, YapaThemeSettings settings, IPomodoroEngine engine, ISettings globalSettings, IPomodoroRepository pomodoroRepository, PomodoroEngineSettings engineSettings) : base(viewModel)
        {
            ViewModel           = viewModel;
            Settings            = settings;
            _pomodoroRepository = pomodoroRepository;
            _engineSettings     = engineSettings;

            InitializeComponent();

            TimerFlush           = (Storyboard)TryFindResource("FlashTimer");
            AfterBreakTimerFlush = (Storyboard)TryFindResource("AfterBreakFlashTimer");

            PomodorosCompleted = 0;

            ViewModel.Engine.PropertyChanged     += Engine_PropertyChanged;
            ViewModel.Engine.OnPomodoroCompleted += Engine_OnPomodoroCompleted;
            ViewModel.Engine.OnStarted           += StopAnimation;
            ViewModel.Engine.OnStopped           += StopAnimation;
            globalSettings.PropertyChanged       += _globalSettings_PropertyChanged;

            DataContext = this;

            UpdateAppSize();
            PhaseChanged();
            UpdateStatusText();

            UpdateCompletedPomodoroCount();

            PropertyChanged += YapaTheme_PropertyChanged;
            UpdateDisplayedTime();
            UpdateSecondVisibility();
        }
        public PomodoroEngineSettingWindow(PomodoroEngineSettings settings, IPomodoroEngine engine, PomodoroProfileSettings profileSettings)
        {
            settings.DeferChanges();
            InitializeComponent();

            var counterValues = new List <CounterListItem>
            {
                new CounterListItem {
                    Item = CounterEnum.CompletedThisSession, Title = "Completed this session"
                },
                new CounterListItem {
                    Item = CounterEnum.CompletedToday, Title = "Competed today"
                },
                new CounterListItem {
                    Item = CounterEnum.PomodoroIndex, Title = "Pomodoro index"
                },
            };

            CounterList.ItemsSource = counterValues;

            Settings    = settings;
            Engine      = engine;
            DataContext = this;

            ProfileSetting.Children.Clear();
            ProfileSetting.Children.Add(profileSettings);
        }
Ejemplo n.º 3
0
        public Dashboard(IPomodoroEngine engine, IPomodoroRepository itemRepository, PomodoroEngineSettings engineSettings)
        {
            _itemRepository = itemRepository;
            _engineSettings = engineSettings;
            _engine         = engine;

            _engine.OnPomodoroCompleted += _engine_OnPomodoroCompleted;
        }
Ejemplo n.º 4
0
        public MusicPlayer(IPomodoroEngine engine, MusicPlayerPluginSettings settings, IMusicPlayer musicPlayer, PomodoroEngineSettings engineSettings)
        {
            _engine         = engine;
            _settings       = settings;
            _musicPlayer    = musicPlayer;
            _engineSettings = engineSettings;

            _engine.PropertyChanged += _engine_PropertyChanged;
        }
Ejemplo n.º 5
0
        public SoundNotifications(IPomodoroEngine engine, SoundNotificationsSettings settings, IMusicPlayer musicPlayer, PomodoroEngineSettings engineSettings)
        {
            _engine         = engine;
            _settings       = settings;
            _musicPlayer    = musicPlayer;
            _engineSettings = engineSettings;

            _engine.PropertyChanged += _engine_PropertyChanged;
        }
Ejemplo n.º 6
0
        public SoundSettingWindow(SoundNotificationSettingWindow soundNotification, MusicPlayerPluginSettingWindow musicPlayer, PomodoroEngineSettings engineSettings)
        {
            InitializeComponent();
            Container.Children.Add(soundNotification);
            Container.Children.Add(musicPlayer);

            engineSettings.DeferChanges();

            DataContext = engineSettings;
        }
        public PomodoroProfileSettings(PomodoroEngineSettings settings, IPomodoroEngine engine)
        {
            settings.DeferChanges();

            InitializeComponent();

            var oneHour = Enumerable.Range(1, 60).Reverse().ToList();

            WorkTimeSelect.ItemsSource      = oneHour;
            BreakTimeSelect.ItemsSource     = oneHour;
            LongBreakTimeSelect.ItemsSource = oneHour;
            Settings = settings;
            Engine   = engine;

            Engine.PropertyChanged += Engine_PropertyChanged;

            Unloaded   += PomodoroProfileSettings_Unloaded;
            DataContext = this;
            ActiveProfileSelect.ItemsSource       = Profiles;
            ActiveProfileSelect.SelectionChanged += ActiveProfile_SelectectionChanged;
            RefreshProfilesList();
        }
        public MainWindow(IMainViewModel viewModel, MotivationalThemeSettings settings, PomodoroEngineSettings baseSettings, IPomodoroRepository pomodoroRepository, ISettings globalSettings) : base(viewModel)
        {
            ViewModel           = viewModel;
            _settings           = settings;
            _baseSettings       = baseSettings;
            _pomodoroRepository = pomodoroRepository;
            _globalSettings     = globalSettings;
            InitializeComponent();
            globalSettings.PropertyChanged += _globalSettings_PropertyChanged;

            DataContext = this;

            // Initialize Pomodoro session
            ResetPomodoroPeriod();

            ViewModel.Engine.PropertyChanged     += Engine_PropertyChanged;
            ViewModel.Engine.OnPomodoroCompleted += Engine_OnPomodoroCompleted;
            ViewModel.Engine.OnStarted           += EngineOnOnStarted;

            UpdateCompletedPomodoroCount();

            UpdateTime();
        }
Ejemplo n.º 9
0
 private static void UpdateSettingsWithReleaseInfo(string newVersion, ISettingManager settings, PomodoroEngineSettings engineSettings)
 {
     if (string.IsNullOrEmpty(newVersion))
     {
         return;
     }
     settings.RestartNeeded      = true;
     settings.NewVersion         = newVersion;
     engineSettings.ReleaseNotes = GetReleaseNotesFor(newVersion);
 }
Ejemplo n.º 10
0
        private static async Task Update(ISettingManager settings, IEnvironment environment, PomodoroEngineSettings engineSettings)
        {
            try
            {
                var releaseUrl    = "yapa-2/";
                var preReleaseUrl = "yapa-2-pre-release/";

                var ftpUrl  = "ftp://s1.floatas.net";
                var httpUrl = "http://app.floatas.net/installers";

                var updateType = environment.PreRelease() ? preReleaseUrl : releaseUrl;

                try
                {
                    var httpUpdateUrl = CombineUri(httpUrl, updateType);
                    var newVersion    = await UpdateFromUrl(httpUpdateUrl);

                    UpdateSettingsWithReleaseInfo(newVersion, settings, engineSettings);
                }
                catch (Exception)
                {
                    var ftpUpdateUrl = CombineUri(ftpUrl, updateType);
                    var newVersion   = await UpdateFromUrl(ftpUpdateUrl);

                    UpdateSettingsWithReleaseInfo(newVersion, settings, engineSettings);
                }
            }
            catch (Exception)
            {
                //Ignore
            }
        }