client/src/Iri.Modernisation.Controls/View/ProductionTimeLine/ProductionTimeLine.xaml.cs
changeset 35 43bb1b8ed555
parent 30 644e3cd48034
child 38 bd33267300aa
equal deleted inserted replaced
34:4d9ebc6fbbe8 35:43bb1b8ed555
    20         public static double ScaleTime
    20         public static double ScaleTime
    21         {
    21         {
    22             get;
    22             get;
    23             set;
    23             set;
    24         }
    24         }
       
    25         
    25 		public ProductionTimeLine()
    26 		public ProductionTimeLine()
    26 		{
    27 		{
    27             ScaleTime = 0.0002;
    28             ScaleTime = 0.0002;
    28 			// Required to initialize variables
    29 			// Required to initialize variables
    29 			InitializeComponent();
    30 			InitializeComponent();
    30             Commands.ProductionTimeLine.EditorPartSelected.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(EditorPartSelected_Executed);
    31             Commands.ProductionTimeLine.EditorPartSelected.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(EditorPartSelected_Executed);
    31             Commands.ProductionView.VideoRecordUpdated.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(VideoRecordUpdated_Executed);
    32             Commands.ProductionView.VideoRecordUpdated.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(VideoRecordUpdated_Executed);
    32             TimeSlider.MouseLeftButtonUp += new MouseButtonEventHandler(TimeSlider_MouseLeftButtonUp);
    33             TimeSlider.MouseLeftButtonUp += new MouseButtonEventHandler(TimeSlider_MouseLeftButtonUp);
    33             //TimeSlider.ValueChanged += new RoutedPropertyChangedEventHandler<double>(TimeSlider_ValueChanged);
    34             TimeSlider.MouseMove += new MouseEventHandler(TimeSlider_MouseMove);
       
    35             TimeSlider.MouseLeftButtonDown += new MouseButtonEventHandler(TimeSlider_MouseLeftButtonDown);
       
    36             TimeSlider.ValueChanged += new RoutedPropertyChangedEventHandler<double>(TimeSlider_ValueChanged);
    34             TimeSlider.Maximum = TimeSlider.ActualWidth / ProductionTimeLine.ScaleTime;
    37             TimeSlider.Maximum = TimeSlider.ActualWidth / ProductionTimeLine.ScaleTime;
    35            
    38            
    36             ScaleTimeLine.ValueChanged += new RoutedPropertyChangedEventHandler<double>(ScaleTimeLine_ValueChanged);
    39             ScaleTimeLine.ValueChanged += new RoutedPropertyChangedEventHandler<double>(ScaleTimeLine_ValueChanged);
    37 		}
    40 		}
    38 
    41         bool _mousecapture { get; set; }
       
    42         void TimeSlider_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
       
    43         {
       
    44             _mousecapture = true;
       
    45         }
       
    46 
       
    47    
       
    48 
       
    49         void TimeSlider_MouseMove(object sender, MouseEventArgs e)
       
    50         {
       
    51             if (_mousecapture)
       
    52                 ((ProductionTimeLineVM)DataContext).ViewModelVideoViewer.Pause();
       
    53         }
       
    54 
       
    55       
    39         void ScaleTimeLine_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    56         void ScaleTimeLine_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    40         {
    57         {
    41             ScaleTime = e.NewValue / 3200000;
    58             ScaleTime = e.NewValue / 3200000;
    42             UpdateElements();
    59             UpdateElements();
    43 
    60 
    44         }
    61         }
    45 
    62 
    46         void TimeSlider_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
    63         void TimeSlider_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
    47         {
    64         {
       
    65           
    48             Commands.TimeChange.Execute(TimeSlider.Value,DataContext);
    66             Commands.TimeChange.Execute(TimeSlider.Value,DataContext);
       
    67             ReleaseMouseCapture();
       
    68             _mousecapture = false;
    49         }
    69         }
    50 
    70 
    51         void TimeSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    71         void TimeSlider_ValueChanged(object sender, RoutedPropertyChangedEventArgs<double> e)
    52         {
    72         {
    53             DeleteSequenceButton.Content = TimeSpan.FromMilliseconds(TimeSlider.Value);
    73         
       
    74 
    54            
    75            
    55         }
    76         }
    56 
    77 
    57         void EditorPartSelected_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    78         void EditorPartSelected_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    58         {
    79         {
   122                                 };
   143                                 };
   123 
   144 
   124                                     //an.DataContext = new PolemicElementVM(Si);
   145                                     //an.DataContext = new PolemicElementVM(Si);
   125 
   146 
   126                                     an.MouseLeftButtonDown += new MouseButtonEventHandler(an_MouseLeftButtonDown);
   147                                     an.MouseLeftButtonDown += new MouseButtonEventHandler(an_MouseLeftButtonDown);
       
   148 
   127                                     an.MouseMove += new MouseEventHandler(an_MouseMove);
   149                                     an.MouseMove += new MouseEventHandler(an_MouseMove);
   128                                     an.MouseLeftButtonUp += new MouseButtonEventHandler(an_MouseLeftButtonUp);
   150                                     an.MouseLeftButtonUp += new MouseButtonEventHandler(an_MouseLeftButtonUp);
   129                                     //((ProductionTimeLineVM)DataContext).SelectedBookChapter);
   151                                     //((ProductionTimeLineVM)DataContext).SelectedBookChapter);
   130                                     AnnotationTimeStrip.Children.Add(an);
   152                                     AnnotationTimeStrip.Children.Add(an);
   131                                 
   153                                 
   259         private void DeleteSequenceButton_Click(object sender, System.Windows.RoutedEventArgs e)
   281         private void DeleteSequenceButton_Click(object sender, System.Windows.RoutedEventArgs e)
   260         {
   282         {
   261             //VideoTimeStrip.Children.Remove(_selected);
   283             //VideoTimeStrip.Children.Remove(_selected);
   262             Commands.ProductionView.DelVideoSequence.Execute(((CustomableVideoElement)_selected).DataContext);
   284             Commands.ProductionView.DelVideoSequence.Execute(((CustomableVideoElement)_selected).DataContext);
   263         }
   285         }
       
   286 
       
   287       
   264 	}
   288 	}
   265 }
   289 }