client/src/Iri.Modernisation.Controls/View/WebCamControl/WebCamControl.xaml.cs
author totetm <>
Fri, 08 Jan 2010 11:33:24 +0100
changeset 29 5f8d275750e7
child 35 43bb1b8ed555
permissions -rw-r--r--
After SL4 Convertion

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)
        {
            
        }
	}
}