Exemplo n.º 1
0
        public CretanPathViewModel(INavigationService navigationService)
        {
            Start = new DelegateCommand(StartProgram);
            _navigationService = navigationService;
            var programTest  = new ProgramSetting("Working test", "Only working program");
            var firstSegment = new SegmentSetting()
            {
                Duration = TimeSpan.FromMinutes(5), TargetPaceInMph = 4
            };
            var secondSegment = new SegmentSetting()
            {
                Duration = TimeSpan.FromMinutes(10), TargetPaceInMph = 6
            };

            programTest.Segments.AddFirst(secondSegment);
            programTest.Segments.AddFirst(firstSegment);

            var dummyPack = new ProgramPack("dummy", "A dummy pack for the dummies");

            dummyPack.Programs.AddFirst(new ProgramSetting("Test1", "Test Description"));
            dummyPack.Programs.AddFirst(new ProgramSetting("Test2", "Test 2 Description"));
            dummyPack.Programs.AddFirst(new ProgramSetting("Test3", "Test 3 Description"));
            dummyPack.Programs.AddFirst(programTest);



            SelectedPack = dummyPack;
        }
Exemplo n.º 2
0
 public FreeRunSetupViewModel(INavigationService navigationService)
 {
     Debug.WriteLine("ctor viewmodel");
     Session = new SegmentSetting() { TargetPaceInMph = 5, TolerancePercent = 10 };
     Duration = 15; //. default to 15 minutes
     HapticFeedback = true;
     Start = new DelegateCommand(StartSession);
     _navigationService = navigationService;
 }
Exemplo n.º 3
0
        private void MonitorProgram()
        {
            _currentSegmentNode.OnNext(_currentProgramSettings.Segments.First);
            _currentSessionSettings = _currentSegmentNode.Value?.Value;
            while (_currentSessionSettings != null)
            {
                _currentSegmentProgress = new SessionProgress(_currentSessionSettings);
                _programProgress.SessionProgress.Add(_currentSegmentProgress);

                // Run the current segment
                Task.Run(() => MonitorSegment(), mSessionMonitorToken.Token).Wait();

                // move to next segment
                _currentSegmentNode.OnNext(_currentSegmentNode.Value.Next);
                _currentSessionSettings = _currentSegmentNode.Value?.Value;
            }
        }
Exemplo n.º 4
0
 public SessionViewModel(SegmentSetting settings)
 {
     SessionSettings = settings;
 }
Exemplo n.º 5
0
 public Session(SegmentSetting settings)
 {
     InitializeComponent();
     BindingContext = new SessionViewModel(settings);
 }