client/src/Iri.Modernisation.Controls/View/ProductionTimeLine/ProductionTimeLine.xaml.cs
changeset 35 43bb1b8ed555
parent 30 644e3cd48034
child 38 bd33267300aa
--- a/client/src/Iri.Modernisation.Controls/View/ProductionTimeLine/ProductionTimeLine.xaml.cs	Tue Jan 19 09:49:56 2010 +0100
+++ b/client/src/Iri.Modernisation.Controls/View/ProductionTimeLine/ProductionTimeLine.xaml.cs	Mon Jan 25 09:30:22 2010 +0100
@@ -22,6 +22,7 @@
             get;
             set;
         }
+        
 		public ProductionTimeLine()
 		{
             ScaleTime = 0.0002;
@@ -30,12 +31,28 @@
             Commands.ProductionTimeLine.EditorPartSelected.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(EditorPartSelected_Executed);
             Commands.ProductionView.VideoRecordUpdated.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(VideoRecordUpdated_Executed);
             TimeSlider.MouseLeftButtonUp += new MouseButtonEventHandler(TimeSlider_MouseLeftButtonUp);
-            //TimeSlider.ValueChanged += new RoutedPropertyChangedEventHandler<double>(TimeSlider_ValueChanged);
+            TimeSlider.MouseMove += new MouseEventHandler(TimeSlider_MouseMove);
+            TimeSlider.MouseLeftButtonDown += new MouseButtonEventHandler(TimeSlider_MouseLeftButtonDown);
+            TimeSlider.ValueChanged += new RoutedPropertyChangedEventHandler<double>(TimeSlider_ValueChanged);
             TimeSlider.Maximum = TimeSlider.ActualWidth / ProductionTimeLine.ScaleTime;
            
             ScaleTimeLine.ValueChanged += new RoutedPropertyChangedEventHandler<double>(ScaleTimeLine_ValueChanged);
 		}
+        bool _mousecapture { get; set; }
+        void TimeSlider_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
+        {
+            _mousecapture = true;
+        }
 
+   
+
+        void TimeSlider_MouseMove(object sender, MouseEventArgs e)
+        {
+            if (_mousecapture)
+                ((ProductionTimeLineVM)DataContext).ViewModelVideoViewer.Pause();
+        }
+
+      
         void ScaleTimeLine_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
         {
             ScaleTime = e.NewValue / 3200000;
@@ -45,12 +62,16 @@
 
         void TimeSlider_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
         {
+          
             Commands.TimeChange.Execute(TimeSlider.Value,DataContext);
+            ReleaseMouseCapture();
+            _mousecapture = false;
         }
 
         void TimeSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
         {
-            DeleteSequenceButton.Content = TimeSpan.FromMilliseconds(TimeSlider.Value);
+        
+
            
         }
 
@@ -124,6 +145,7 @@
                                     //an.DataContext = new PolemicElementVM(Si);
 
                                     an.MouseLeftButtonDown += new MouseButtonEventHandler(an_MouseLeftButtonDown);
+
                                     an.MouseMove += new MouseEventHandler(an_MouseMove);
                                     an.MouseLeftButtonUp += new MouseButtonEventHandler(an_MouseLeftButtonUp);
                                     //((ProductionTimeLineVM)DataContext).SelectedBookChapter);
@@ -261,5 +283,7 @@
             //VideoTimeStrip.Children.Remove(_selected);
             Commands.ProductionView.DelVideoSequence.Execute(((CustomableVideoElement)_selected).DataContext);
         }
+
+      
 	}
 }
\ No newline at end of file