client/src/Iri.Modernisation.Controls/View/WebCamControl/WebCamControl.xaml.cs
changeset 29 5f8d275750e7
child 35 43bb1b8ed555
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/client/src/Iri.Modernisation.Controls/View/WebCamControl/WebCamControl.xaml.cs	Fri Jan 08 11:33:24 2010 +0100
@@ -0,0 +1,58 @@
+using System;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Documents;
+using System.Windows.Ink;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Animation;
+using System.Windows.Shapes;
+using Iri.Modernisation.BaseMVVM.Commands;
+namespace Iri.Modernisation.Controls.View
+{
+	public partial class WebCamControl : UserControl
+    {
+        private CaptureSource _captureSource;
+		public WebCamControl()
+		{
+			// Required to initialize variables
+			InitializeComponent();
+            _captureSource = new CaptureSource()
+            {
+                VideoCaptureDevice = CaptureDeviceConfiguration.GetDefaultVideoCaptureDevice(),
+                AudioCaptureDevice = CaptureDeviceConfiguration.GetDefaultAudioCaptureDevice()
+            };
+            VideoBrush vidBrush = new VideoBrush();
+            vidBrush.SetSource(_captureSource);
+            VideoScreen.Fill = vidBrush;
+
+            Commands.WebCamControl.CamRecordLanch.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(CamRecordLanch_Executed);
+            Commands.WebCamControl.CamRecordStop.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(CamRecordStop_Executed);
+            Commands.WebCamControl.CamRecordEnd.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(CamRecordEnd_Executed);
+            Commands.WebCamControl.CamRecordBegin.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(CamRecordBegin_Executed);
+		}
+
+        void CamRecordStop_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        {
+            _captureSource.Stop();
+        }
+
+        void CamRecordEnd_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        {
+         
+        }
+
+        void CamRecordLanch_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        {
+            if (CaptureDeviceConfiguration.AllowedDeviceAccess || CaptureDeviceConfiguration.RequestDeviceAccess())
+            {
+                _captureSource.Start();
+            }
+        }
+
+        void CamRecordBegin_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e)
+        {
+            
+        }
+	}
+}
\ No newline at end of file