client/src/Iri.Modernisation.Controls/ViewModel/ProductionView/ProductionViewVM.cs
changeset 30 644e3cd48034
parent 27 f292db96b050
child 34 4d9ebc6fbbe8
equal deleted inserted replaced
29:5f8d275750e7 30:644e3cd48034
   130        private void InitializeCommands()
   130        private void InitializeCommands()
   131        {
   131        {
   132             Commands.ProductionView.ClickAddSelectedRecord.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(ClickAddSelectedRecord_Executed);
   132             Commands.ProductionView.ClickAddSelectedRecord.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(ClickAddSelectedRecord_Executed);
   133             ViewModelProductionTimeLine.SwitchVideo += new EventHandler<ProductionTimeLineVMEventArgs>(ViewModelProductionTimeLine_SwitchVideo);
   133             ViewModelProductionTimeLine.SwitchVideo += new EventHandler<ProductionTimeLineVMEventArgs>(ViewModelProductionTimeLine_SwitchVideo);
   134             ViewModelMasterVideoViewer.Tick += new EventHandler<VideoViewerVMEventArgs>(ViewModelMasterVideoViewer_Tick);
   134             ViewModelMasterVideoViewer.Tick += new EventHandler<VideoViewerVMEventArgs>(ViewModelMasterVideoViewer_Tick);
   135             
   135             ViewModelHeaderProduction.Change += new EventHandler<HeaderProductionVMArgs>(ViewModelHeaderProduction_Change);
   136        }
   136        }
   137         public ProductionViewVM()
   137         public ProductionViewVM()
   138         {
   138         {
   139             RecordedVideoSequences = new ObservableCollection<VideoSequence>();
   139             RecordedVideoSequences = new ObservableCollection<VideoSequence>();
   140             ViewModelHeaderProduction = new HeaderProductionVM();
   140             ViewModelHeaderProduction = new HeaderProductionVM();
   160                     RunTime = new TimeSpan(0, rndNumbers.Next(10, 60), 0),
   160                     RunTime = new TimeSpan(0, rndNumbers.Next(10, 60), 0),
   161                     BeginTrim = new TimeSpan(0, 0, 0),
   161                     BeginTrim = new TimeSpan(0, 0, 0),
   162                     EndTrim = new TimeSpan(0, 0, 0),
   162                     EndTrim = new TimeSpan(0, 0, 0),
   163                 });
   163                 });
   164             }
   164             }
   165             ViewModelHeaderProduction.Change += new EventHandler<HeaderProductionVMArgs>(ViewModelHeaderProduction_Change);
   165            
   166             InitializeCommands();
   166             InitializeCommands();
   167             OnPropertyChanged(String.Empty);
   167             OnPropertyChanged(String.Empty);
   168            
   168            
   169         }
   169         }
   170 
   170 
   185             double newPos = ViewModelProductionTimeLine.ActualVideoSequence.TimerIn.TotalMilliseconds+e.Position.TotalMilliseconds;
   185             double newPos = ViewModelProductionTimeLine.ActualVideoSequence.TimerIn.TotalMilliseconds+e.Position.TotalMilliseconds;
   186             if (ViewModelProductionTimeLine.ActualVideoSequence.TimerOut.TotalMilliseconds <= newPos)
   186             if (ViewModelProductionTimeLine.ActualVideoSequence.TimerOut.TotalMilliseconds <= newPos)
   187             {
   187             {
   188                 ViewModelProductionTimeLine.ActualVideoSequence = ViewModelProductionTimeLine.TimeLine[ViewModelProductionTimeLine.TimeLine.IndexOf(ViewModelProductionTimeLine.ActualVideoSequence) + 1];
   188                 ViewModelProductionTimeLine.ActualVideoSequence = ViewModelProductionTimeLine.TimeLine[ViewModelProductionTimeLine.TimeLine.IndexOf(ViewModelProductionTimeLine.ActualVideoSequence) + 1];
   189                 ViewModelMasterVideoViewer.Source = ViewModelProductionTimeLine.ActualVideoSequence.Path;
   189                 ViewModelMasterVideoViewer.Source = ViewModelProductionTimeLine.ActualVideoSequence.Path;
   190                 
       
   191                 ViewModelMasterVideoViewer.GoTo(ViewModelProductionTimeLine.ActualVideoSequence.BeginTrim);
   190                 ViewModelMasterVideoViewer.GoTo(ViewModelProductionTimeLine.ActualVideoSequence.BeginTrim);
   192             }
   191             }
   193             ViewModelProductionTimeLine.Position = newPos;
   192             ViewModelProductionTimeLine.Position = newPos;
   194         }
   193         }
   195 
   194 
   196         private void ClickAddSelectedRecord_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
   195         private void ClickAddSelectedRecord_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
   197         {
   196         {
   198             if (ViewModelProductionTimeLine.SelectedChapter != -1)
   197             if (ViewModelHeaderProduction.SelectedChapter != null && ViewModelHeaderProduction.SelectedChapter.IsActive)
   199             {
   198             {
   200                 if (!ViewModelProductionTimeLine.IsIndexing)
   199                 if (!ViewModelProductionTimeLine.IsIndexing)
   201                 {
   200                 {
   202                     if (SelectedVideoSequence != null)
   201                     if (SelectedVideoSequence != null)
   203                     {
   202                     {