author | cavaliet |
Wed, 04 Nov 2009 16:28:01 +0100 | |
changeset 186 | 83615722dbab |
parent 182 | 25b49d4f1635 |
child 187 | b266af50744c |
permissions | -rw-r--r-- |
35 | 1 |
using System; |
2 |
using System.IO; |
|
3 |
using System.Net; |
|
148 | 4 |
using System.Collections.Generic; |
35 | 5 |
using System.Windows; |
6 |
using System.Windows.Controls; |
|
7 |
using System.Windows.Data; |
|
8 |
using System.Windows.Media; |
|
9 |
using System.Windows.Media.Animation; |
|
10 |
using System.Windows.Navigation; |
|
104 | 11 |
using FingersDance.Control.ListVideo; |
12 |
using FingersDance.Control.SessionInput; |
|
143 | 13 |
using FingersDance.ViewModels; |
14 |
using FingersDance.Data; |
|
35 | 15 |
|
16 |
namespace FingersDance.Control.Screen |
|
17 |
{ |
|
18 |
public partial class UserControlScreen |
|
19 |
{ |
|
82 | 20 |
public String contexteGrid; |
112 | 21 |
public int id = 0; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
22 |
public event EventHandler UC_Screen_NewCutting; |
143 | 23 |
public MainViewModel MainViewModel; |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
24 |
public CuttingViewModel CuttingVM; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
25 |
private List<Project> existingProjects = new List<Project>(); |
148 | 26 |
User User = new User(); |
95 | 27 |
|
143 | 28 |
public UserControlScreen(int id, MainViewModel mvmodel) |
29 |
{ |
|
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
30 |
try |
143 | 31 |
{ |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
32 |
this.InitializeComponent(); |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
33 |
this.id = id; |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
34 |
User.Name = "User " + id; |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
35 |
MainViewModel = mvmodel; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
36 |
if (MainViewModel.Project.VideoPath.Equals("")) |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
37 |
{ |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
38 |
//1-Creation de la ListVideo |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
39 |
UserControlListVideo ListVideo = new UserControlListVideo(); |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
40 |
ListVideo.Name = "ListVideo1"; |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
41 |
//2-Ajout de la ListVideo au ControlScreen |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
42 |
this.AddToGrid(ListVideo); |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
43 |
//3-Creation des Events pour chaque item de la video |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
44 |
ListVideo.EH_ItemVideo1_ContactDown += new System.EventHandler(this.ListVideo_EH_ItemVideo_ContactDown); |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
45 |
} |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
46 |
else |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
47 |
OpenProject(); |
143 | 48 |
} |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
49 |
catch (Exception) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
50 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
51 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
52 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
53 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
54 |
} |
143 | 55 |
} |
35 | 56 |
|
82 | 57 |
//Rajout un UIElement vers la grid du screen. |
58 |
public void AddToGrid(UIElement uie) |
|
59 |
{ |
|
60 |
if (uie != null) |
|
61 |
{ |
|
62 |
try { LayoutRoot.Children.Add(uie); } |
|
63 |
catch(Exception){} |
|
64 |
} |
|
65 |
} |
|
66 |
||
104 | 67 |
private void ListVideo_EH_ItemVideo_ContactDown(object sender, EventArgs e) |
68 |
{ |
|
69 |
try |
|
70 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
71 |
//1 renseigner la video choisie au screen et créer un nouveau projet à partir de ce chemin vidéo |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
72 |
MainViewModel.CreateProject(((UserControlListVideo)sender).VideoName, ((UserControlListVideo)sender).path); |
148 | 73 |
//2-Supression du UC List Video |
104 | 74 |
LayoutRoot.Children.Remove((UserControlListVideo)sender); |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
75 |
OpenProjectList(); |
104 | 76 |
} |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
77 |
catch (Exception ex) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
78 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
79 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
80 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
81 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
82 |
} |
104 | 83 |
} |
148 | 84 |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
85 |
private void OpenProjectList() |
148 | 86 |
{ |
87 |
try |
|
88 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
89 |
existingProjects = LoadProjects(MainViewModel.Project.VideoPath); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
90 |
UserControlListSession listProject = new UserControlListSession(existingProjects); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
91 |
listProject.Name = "ListProject"; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
92 |
LayoutRoot.Children.Add(listProject); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
93 |
listProject.EH_List_ContactDown += new EventHandler(listProject_EH_List_ContactDown); |
148 | 94 |
} |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
95 |
catch (Exception) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
96 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
97 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
98 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
99 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
100 |
} |
148 | 101 |
} |
102 |
||
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
103 |
private List<Project> LoadProjects(string name) |
148 | 104 |
{ |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
105 |
// Does nothing because for the moment we do not load sessions when we know the video path, we just create a new session |
148 | 106 |
try |
107 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
108 |
return new List<Project>(); |
148 | 109 |
} |
110 |
catch (Exception) |
|
111 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
112 |
return new List<Project>(); |
148 | 113 |
} |
114 |
} |
|
115 |
||
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
116 |
void listProject_EH_List_ContactDown(object sender, EventArgs e) |
148 | 117 |
{ |
118 |
try |
|
119 |
{ |
|
120 |
LayoutRoot.Children.Remove((UserControlListSession)sender); |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
121 |
if (((UserControlListSession)sender).SelectedItem.Equals("New Project")) |
148 | 122 |
{ |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
123 |
UserControlSessionInput ProjectInput = new UserControlSessionInput(); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
124 |
ProjectInput.Name = "ProjectInput"; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
125 |
LayoutRoot.Children.Add(ProjectInput); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
126 |
ProjectInput.EH_SurfaceButtonSubmit_ContactDown += new System.EventHandler(this.ProjectInput_EH_SurfaceButtonSubmit_ContactDown); |
148 | 127 |
} |
128 |
else |
|
129 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
130 |
foreach (Project elt in existingProjects) |
148 | 131 |
{ |
132 |
if (elt.Name.Equals(((UserControlListSession)sender).SelectedItem)) |
|
133 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
134 |
MainViewModel.Project.Project = elt; |
148 | 135 |
OpenProject(); |
136 |
return; |
|
137 |
} |
|
138 |
} |
|
139 |
} |
|
140 |
} |
|
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
141 |
catch (Exception) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
142 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
143 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
144 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
145 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
146 |
} |
148 | 147 |
} |
148 |
||
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
149 |
private void ProjectInput_EH_SurfaceButtonSubmit_ContactDown(object sender, EventArgs e) |
104 | 150 |
{ |
151 |
try |
|
152 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
153 |
//MainViewModel.Project.Alias = ((UserControlSessionInput)sender).Alias; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
154 |
//MainViewModel.Project.Email = ((UserControlSessionInput)sender).Email; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
155 |
MainViewModel.Project.Description = ((UserControlSessionInput)sender).Description; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
156 |
MainViewModel.Project.Name = ((UserControlSessionInput)sender).SessionName; |
148 | 157 |
|
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
158 |
|
104 | 159 |
//2-Suppression UCSession Input |
160 |
LayoutRoot.Children.Remove((UserControlSessionInput)sender); |
|
148 | 161 |
OpenProject(); |
104 | 162 |
} |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
163 |
catch (Exception ex) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
164 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
165 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
166 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
167 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
168 |
} |
104 | 169 |
} |
148 | 170 |
|
171 |
private void OpenProject() |
|
172 |
{ |
|
173 |
try |
|
174 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
175 |
UserControlListProject listCuttings = new UserControlListProject(MainViewModel.Project.CuttingsDict); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
176 |
listCuttings.Name = "listCuttings"; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
177 |
LayoutRoot.Children.Add(listCuttings); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
178 |
listCuttings.EH_Item_ContactDown += new EventHandler(listCuttings_EH_Item_ContactDown); |
148 | 179 |
} |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
180 |
catch (Exception) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
181 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
182 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
183 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
184 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
185 |
} |
148 | 186 |
} |
187 |
||
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
188 |
void listCuttings_EH_Item_ContactDown(object sender, EventArgs e) |
148 | 189 |
{ |
190 |
try |
|
191 |
{ |
|
192 |
LayoutRoot.Children.Remove((UserControlListProject)sender); |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
193 |
if (((UserControlListProject)sender).SelectedItem.Equals("New Cutting")) |
148 | 194 |
{ |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
195 |
UserControlNewProject newCutting = new UserControlNewProject(User); |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
196 |
newCutting.Name = "newCutting"; |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
197 |
LayoutRoot.Children.Add(newCutting); |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
198 |
newCutting.EH_NewCutting_ContactDown += new EventHandler(newCutting_EH_ContactDown); |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
199 |
} |
148 | 200 |
else |
201 |
{ |
|
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
202 |
foreach(KeyValuePair<string, Cutting> elt in MainViewModel.Project.CuttingsDict) |
148 | 203 |
if (elt.Key.Equals(((UserControlListProject)sender).SelectedItem)) |
204 |
{ |
|
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
205 |
CuttingVM = new CuttingViewModel(elt.Value, 815); |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
206 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
207 |
UC_Screen_NewCutting(this, new EventArgs()); |
148 | 208 |
return; |
209 |
} |
|
210 |
} |
|
211 |
} |
|
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
212 |
catch (Exception) |
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
213 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
214 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
215 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
216 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
217 |
} |
148 | 218 |
} |
219 |
||
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
220 |
void newCutting_EH_ContactDown(object sender, EventArgs e) |
148 | 221 |
{ |
222 |
try |
|
223 |
{ |
|
224 |
LayoutRoot.Children.Remove((UserControlNewProject)sender); |
|
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
225 |
CuttingVM = new CuttingViewModel(((UserControlNewProject)sender).Cutting, 850); |
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
226 |
MainViewModel.Project.CuttingsDict.Add(CuttingVM.Title, ((UserControlNewProject)sender).Cutting); |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
227 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
228 |
UC_Screen_NewCutting(this, new EventArgs()); |
148 | 229 |
} |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
230 |
catch (Exception) |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
231 |
{ |
186
83615722dbab
Debug data management for others panels to redisplay.
cavaliet
parents:
182
diff
changeset
|
232 |
CuttingVM = null; |
182
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
233 |
if (UC_Screen_NewCutting != null) |
25b49d4f1635
First step of data reorganisation : session is meant to disappear : a "session" is in fact a project and one project owns several cuttings, one per user. WARNING : this commit builds without problems but we can not open more than one UserPanel.
cavaliet
parents:
156
diff
changeset
|
234 |
UC_Screen_NewCutting(this, new EventArgs()); |
152
46577fd0a294
PlayerPause en resize
PAMPHILE Jonathan <pamphile@efrei.fr>
parents:
148
diff
changeset
|
235 |
} |
148 | 236 |
} |
35 | 237 |
} |
238 |
} |