src/FingersDance.Control.Screen/UserControlScreen.xaml.cs
author PAMPHILE Jonathan <pamphile@efrei.fr>
Tue, 13 Oct 2009 19:33:13 +0200
changeset 143 9f157d9c725b
parent 112 08bc8eac9e71
child 148 c379899e9c94
permissions -rw-r--r--
MVVM
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     1
using System;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     2
using System.IO;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     3
using System.Net;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     4
using System.Windows;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     5
using System.Windows.Controls;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     6
using System.Windows.Data;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     7
using System.Windows.Media;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     8
using System.Windows.Media.Animation;
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
     9
using System.Windows.Navigation;
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    10
using FingersDance.Control.ListVideo;
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    11
using FingersDance.Control.SessionInput;
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    12
using FingersDance.ViewModels;
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    13
using FingersDance.Data;
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    14
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    15
namespace FingersDance.Control.Screen
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    16
{
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    17
	public partial class UserControlScreen
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    18
	{
82
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    19
        public String contexteGrid;
112
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 104
diff changeset
    20
        public int id = 0;
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    21
        public event EventHandler UC_Screen_NewSession;
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    22
        public MainViewModel MainViewModel;
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    23
        public User User = new User();
95
07972aa3f2e0 ListVideo
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 82
diff changeset
    24
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    25
        public UserControlScreen(int id, MainViewModel mvmodel)
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    26
        {
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    27
            this.InitializeComponent();
112
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 104
diff changeset
    28
            this.id = id;
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    29
            MainViewModel = mvmodel;
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    30
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    31
            if (MainViewModel.Session.VideoPath.Equals(""))
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    32
            {
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    33
                //1-Creation de la ListVideo
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    34
                UserControlListVideo ListVideo = new UserControlListVideo();
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    35
                ListVideo.Name = "ListVideo1";
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    36
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    37
                //2-Ajout de la ListVideo au ControlScreen
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    38
                this.AddToGrid(ListVideo);
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    39
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    40
                //3-Creation des Events pour chaque item de la video
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    41
                ListVideo.EH_ItemVideo1_ContactDown += new System.EventHandler(this.ListVideo_EH_ItemVideo_ContactDown);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    42
            }
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    43
            else
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    44
                ListVideo_EH_ItemVideo_ContactDown(null, null);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    45
        }
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    46
82
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    47
        //Rajout un UIElement vers la grid du screen.
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    48
        public void AddToGrid(UIElement uie)
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    49
        {
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    50
            if (uie != null)
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    51
            {
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    52
                try { LayoutRoot.Children.Add(uie); }
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    53
                catch(Exception){}
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    54
            }          
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    55
        }
c37122b567fa Work ControlScreen
sarias
parents: 80
diff changeset
    56
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    57
        private void ListVideo_EH_ItemVideo_ContactDown(object sender, EventArgs e)
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    58
        {
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    59
            //1-Creation d'une nouvelle seance.                
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    60
            UserControlSessionInput SessionInput = new UserControlSessionInput();
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    61
            SessionInput.Name = "SessionInput";
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    62
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    63
            try
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    64
            {
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    65
                //2-Recuperer la Grid (Layout root du UC screen)qui contient le UCListVideo et l'ajouter.
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    66
                
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    67
                LayoutRoot.Children.Add(SessionInput);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    68
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    69
                //2.5 rensegner la video choisie au screen
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    70
                if (sender != null)
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    71
                    MainViewModel.CreateSession(((UserControlListVideo)sender).VideoName, ((UserControlListVideo)sender).path);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    72
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    73
                //3-Creation des Events
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    74
                SessionInput.EH_SurfaceButtonSubmit_ContactDown += new System.EventHandler(this.SessionInput_EH_SurfaceButtonSubmit_ContactDown);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    75
                //4-Supression du UC List Video
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    76
                LayoutRoot.Children.Remove((UserControlListVideo)sender);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    77
            }
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    78
            catch (Exception ex) { }
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    79
        }
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    80
        
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    81
        private void SessionInput_EH_SurfaceButtonSubmit_ContactDown(object sender, EventArgs e)
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    82
        {
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    83
            try
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    84
            {
143
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    85
                //1-Creation du projet
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    86
                User = ((UserControlSessionInput)sender).User;
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 112
diff changeset
    87
                MainViewModel.CreateProject(User);
104
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    88
                //2-Suppression UCSession Input
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    89
                LayoutRoot.Children.Remove((UserControlSessionInput)sender);
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    90
                //3-Suppression du UC Screen
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    91
                if(UC_Screen_NewSession!=null)
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    92
                    UC_Screen_NewSession(this, new EventArgs());
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    93
            }
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    94
            catch (Exception ex) { }
PAMPHILE Jonathan <pamphile@efrei.fr>
parents: 95
diff changeset
    95
        }
35
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    96
	}
ed77793b767a Control Pivot,
sarias
parents:
diff changeset
    97
}