client/src/Iri.Modernisation.Controls/View/VideoViewer/VideoViewer.xaml.cs
changeset 15 3f70aee2432f
parent 0 249d70e7b32d
child 22 69a2910ec6f9
equal deleted inserted replaced
14:a48c44bc825b 15:3f70aee2432f
    32 
    32 
    33         // Using a DependencyProperty as the backing store for Source.  This enables animation, styling, binding, etc...
    33         // Using a DependencyProperty as the backing store for Source.  This enables animation, styling, binding, etc...
    34         public static readonly DependencyProperty SourceProperty =
    34         public static readonly DependencyProperty SourceProperty =
    35             DependencyProperty.Register("MediaSource", typeof(String), typeof(VideoViewer), new PropertyMetadata(""));
    35             DependencyProperty.Register("MediaSource", typeof(String), typeof(VideoViewer), new PropertyMetadata(""));
    36 
    36 
    37 
    37         private bool _isPlayed  = false;
    38 		public VideoViewer()
    38 		public VideoViewer()
    39 		{
    39 		{
    40 			// Required to initialize variables
    40 			// Required to initialize variables
    41 			InitializeComponent();
    41 			InitializeComponent();
    42             Commands.VideoPositionTimer.Tick += new EventHandler(VideoPositionTimer_Tick);
    42             Commands.VideoPositionTimer.Tick += new EventHandler(VideoPositionTimer_Tick);
    50             VideoScreen.Position = TimeSpan.FromMilliseconds((double)e.Parameter);
    50             VideoScreen.Position = TimeSpan.FromMilliseconds((double)e.Parameter);
    51         }
    51         }
    52 
    52 
    53         void VideoPositionTimer_Tick(object sender, EventArgs e)
    53         void VideoPositionTimer_Tick(object sender, EventArgs e)
    54         {
    54         {
       
    55            if(_isPlayed)
    55            Commands.VideoViewer.SendPosition.Execute(VideoScreen.Position);
    56            Commands.VideoViewer.SendPosition.Execute(VideoScreen.Position);
    56         }
    57         }
    57         public void ChangePosition(TimeSpan TS)
    58         public void ChangePosition(TimeSpan TS)
    58         {
    59         {
    59             VideoScreen.Position = TS;
    60             VideoScreen.Position = TS;
    60             
    61             
    61         }
    62         }
    62         void Pause_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    63         void Pause_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    63         {
    64         {
    64             VideoScreen.Pause();
    65             VideoScreen.Pause();
       
    66             _isPlayed = false;
    65             Commands.VideoPositionTimer.Stop();
    67             Commands.VideoPositionTimer.Stop();
    66             if (Commands.VideoPositionTimer.IsEnabled)
    68             if (Commands.VideoPositionTimer.IsEnabled)
    67             {
    69             {
    68                 MessageBox.Show("Click Time IS NOT STOPPED");
    70                 MessageBox.Show("Click Time IS NOT STOPPED");
    69             }
    71             }
    71 
    73 
    72         void Play_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    74         void Play_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
    73         {
    75         {
    74             if (e.Parameter == DataContext || e.Parameter == null)
    76             if (e.Parameter == DataContext || e.Parameter == null)
    75             {
    77             {
    76                 
    78                 _isPlayed = true;
    77                 VideoScreen.Play();
    79                 VideoScreen.Play();
    78                 Commands.VideoPositionTimer.Start();
    80                 Commands.VideoPositionTimer.Start();
    79             }
    81             }
    80         }
    82         }
    81 
    83