client/src/Iri.Modernisation.Controls/ViewModel/ProductionView/ProductionViewVM.cs
changeset 25 a9c815025a1b
parent 24 c031f1132dde
child 26 44a2dc869e28
--- a/client/src/Iri.Modernisation.Controls/ViewModel/ProductionView/ProductionViewVM.cs	Wed Dec 16 17:14:38 2009 +0100
+++ b/client/src/Iri.Modernisation.Controls/ViewModel/ProductionView/ProductionViewVM.cs	Fri Dec 18 16:45:30 2009 +0100
@@ -16,10 +16,16 @@
 using System.Collections.Generic;
 namespace Iri.Modernisation.Controls.ViewModel
 {
+    /// <summary>
+    /// ViewModel de ProductionView
+    /// </summary>
     public class ProductionViewVM : BaseMVVM.ViewModel.ViewModel
     {
 
         private VideoSequence _selectedVideoSequence;
+        /// <summary>
+        /// VideoSequence Sélectionnée dans la liste
+        /// </summary>
         public VideoSequence SelectedVideoSequence
         {
             get
@@ -36,6 +42,9 @@
         }
 
         private ObservableCollection<VideoSequence> _recordedVideoSequences;
+        /// <summary>
+        /// Liste des VideoSéquences Enregistrées
+        /// </summary>
         public ObservableCollection<VideoSequence> RecordedVideoSequences
         {
             get
@@ -51,6 +60,9 @@
 
 
         private HeaderProductionVM _headerProductionVM;
+        /// <summary>
+        /// ViewModel de HeaderProduction
+        /// </summary>
         public HeaderProductionVM ViewModelHeaderProduction
         {
             get
@@ -63,7 +75,11 @@
                 OnPropertyChanged("ViewModelHeaderProduction");
             }
         }
+
         private ProductionTimeLineVM _productionTimeLineVM;
+        /// <summary>
+        /// ViewModel de ProductionTimeLine
+        /// </summary>
         public ProductionTimeLineVM ViewModelProductionTimeLine
         {
             get
@@ -78,6 +94,9 @@
         }
 
         private ProductionEditorVM _productionEditorVM;
+        /// <summary>
+        /// ViewModel du ProductionEditor
+        /// </summary>
         public ProductionEditorVM ViewModelProductionEditor
         {
             get
@@ -92,6 +111,9 @@
         }
 
         private VideoViewerVM _masterVideoViewerVM;
+        /// <summary>
+        /// ViewModel du Master
+        /// </summary>
         public VideoViewerVM ViewModelMasterVideoViewer
         {
             get
@@ -105,7 +127,13 @@
             }
         }
         
-        //SelectedChapter
+       private void InitializeCommands()
+       {
+            Commands.ProductionView.ClickAddSelectedRecord.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(ClickAddSelectedRecord_Executed);
+            ViewModelProductionTimeLine.SwitchVideo += new EventHandler<ProductionTimeLineVMEventArgs>(ViewModelProductionTimeLine_SwitchVideo);
+            ViewModelMasterVideoViewer.Tick += new EventHandler<VideoViewerVMEventArgs>(ViewModelMasterVideoViewer_Tick);
+            
+       }
         public ProductionViewVM()
         {
             RecordedVideoSequences = new ObservableCollection<VideoSequence>();
@@ -113,11 +141,16 @@
             ViewModelProductionTimeLine = new ProductionTimeLineVM();
             ViewModelProductionEditor = new ProductionEditorVM();
             ViewModelMasterVideoViewer = new VideoViewerVM(true, false);
-           // ViewModelMasterVideoViewer.Source = Application.Current.Host.Source.Host.ToString() + "/video.mp4";
             
             ViewModelProductionTimeLine.ViewModelVideoViewer = ViewModelMasterVideoViewer;
-            Commands.ProductionView.ClickAddSelectedRecord.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(ClickAddSelectedRecord_Executed);
             Random rndNumbers = new Random();
+            _recordedVideoSequences.Add(new VideoSequence()
+            {
+                Path = Application.Current.Host.Source.Host.ToString() + "/test.wmv",
+                RunTime = new TimeSpan(0, rndNumbers.Next(10, 60), 0),
+                BeginTrim = new TimeSpan(0, 0, 0),
+                EndTrim = new TimeSpan(0, 0, 0),
+            });
             for (int i = 0; i < 10; i++)
             {
          
@@ -129,30 +162,28 @@
                     EndTrim = new TimeSpan(0, 0, 0),
                 });
             }
-            ViewModelProductionTimeLine.SwitchVideo += new EventHandler<ProductionTimeLineVMEventArgs>(ViewModelProductionTimeLine_SwitchVideo);   
-            ViewModelMasterVideoViewer.Tick += new EventHandler<VideoViewerVMEventArgs>(ViewModelMasterVideoViewer_Tick);
-           
+            InitializeCommands();
         }
 
-        void ViewModelProductionTimeLine_SwitchVideo(object sender, ProductionTimeLineVMEventArgs e)
+        private void ViewModelProductionTimeLine_SwitchVideo(object sender, ProductionTimeLineVMEventArgs e)
         {
             ViewModelMasterVideoViewer.Source = (e.VideoSequence.Path);
             ViewModelMasterVideoViewer.GoTo(e.BeginAt);
         }
 
-        void ViewModelMasterVideoViewer_Tick(object sender, VideoViewerVMEventArgs e)
+        private void ViewModelMasterVideoViewer_Tick(object sender, VideoViewerVMEventArgs e)
         {
             double newPos = ViewModelProductionTimeLine.ActualVideoSequence.TimerIn.TotalMilliseconds+e.Position.TotalMilliseconds;
             if (ViewModelProductionTimeLine.ActualVideoSequence.TimerOut.TotalMilliseconds <= newPos)
             {
                 ViewModelProductionTimeLine.ActualVideoSequence = ViewModelProductionTimeLine.TimeLine[ViewModelProductionTimeLine.TimeLine.IndexOf(ViewModelProductionTimeLine.ActualVideoSequence) + 1];
                 ViewModelMasterVideoViewer.Source = ViewModelProductionTimeLine.ActualVideoSequence.Path;
-                ViewModelMasterVideoViewer.GoTo(TimeSpan.Zero);
+                ViewModelMasterVideoViewer.GoTo(ViewModelProductionTimeLine.ActualVideoSequence.BeginTrim);
             }
             ViewModelProductionTimeLine.Position = newPos;
         }
 
-        void ClickAddSelectedRecord_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        private void ClickAddSelectedRecord_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
         {
             if (ViewModelProductionTimeLine.SelectedChapter != -1)
             {