public CentralPanelVM(
     ITimeProvider timeProvider,
     INoteFactory noteFactory,
     IReadOnlyTimer timer,
     DailyTimeCalculation dailyTimeCalculation)
 {
     this.timeProvider         = timeProvider;
     this.noteFactory          = noteFactory;
     this.timer                = timer;
     this.dailyTimeCalculation = dailyTimeCalculation;
     timer.TimeChanged        += OnTimerTimeChanged;
 }
 public ApplicationInitialization(
     ICentralPanelVM centralPanelVM,
     IMainRepository mainRepository,
     DailyTimeCalculation dailyTimeCalculation,
     ITotalCounterVM totalCounterVM,
     IMainWindowVM mainWindowVM)
 {
     this.centralPanelVM       = centralPanelVM;
     this.mainRepository       = mainRepository;
     this.dailyTimeCalculation = dailyTimeCalculation;
     this.totalCounterVM       = totalCounterVM;
     this.mainWindowVM         = mainWindowVM;
 }
 public InputController(
     ICentralPanelVM centralPanelVM,
     ITimer timer,
     IMainRepository mainRepository,
     DailyTimeCalculation dailyTimeCalculation,
     ITotalCounterVM totalCounterVM, IBottomPanelVM bottomPanelVM)
 {
     this.centralPanelVM                      = centralPanelVM;
     this.timer                               = timer;
     this.mainRepository                      = mainRepository;
     this.dailyTimeCalculation                = dailyTimeCalculation;
     this.totalCounterVM                      = totalCounterVM;
     this.bottomPanelVM                       = bottomPanelVM;
     this.bottomPanelVM.UserInputReceived    += HandleUserInput;
     this.centralPanelVM.NoteCommandReceived += HandleNoteCommand;
 }