|
1 using System; |
|
2 using System.Windows; |
|
3 using System.Windows.Controls; |
|
4 using System.Windows.Documents; |
|
5 using System.Windows.Ink; |
|
6 using System.Windows.Input; |
|
7 using System.Windows.Media; |
|
8 using System.Windows.Media.Animation; |
|
9 using System.Windows.Shapes; |
|
10 using Iri.Modernisation.BaseMVVM.Commands; |
|
11 using Iri.Modernisation.Data.Models; |
|
12 namespace Iri.Modernisation.Controls.View |
|
13 { |
|
14 public partial class ClickMenu : UserControl |
|
15 { |
|
16 |
|
17 |
|
18 public PolemicElement SelectedElement |
|
19 { |
|
20 get { return (PolemicElement)GetValue(SelectedElementProperty); } |
|
21 set { SetValue(SelectedElementProperty, value); } |
|
22 } |
|
23 |
|
24 // Using a DependencyProperty as the backing store for SelectedElement. This enables animation, styling, binding, etc... |
|
25 public static readonly DependencyProperty SelectedElementProperty = |
|
26 DependencyProperty.Register("SelectedElement", typeof(Iri.Modernisation.Data.Models.PolemicElement), typeof(ClickMenu), null); |
|
27 |
|
28 |
|
29 public ClickMenu() |
|
30 { |
|
31 // Required to initialize variables |
|
32 InitializeComponent(); |
|
33 /*Animation*/ |
|
34 Commands.PolemicElement.ElementSelected.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(MenuClick_Executed); |
|
35 _annoterPanel.ClickMenuItemHooverSelected += new EventHandler<ClickMenuItemHooverEventArgs>(Item_ClickMenuItemHooverSelected); |
|
36 _contextualiserPanel.ClickMenuItemHooverSelected += new EventHandler<ClickMenuItemHooverEventArgs>(Item_ClickMenuItemHooverSelected); |
|
37 _localiserItem.ClickMenuItemHooverSelected += new EventHandler<ClickMenuItemHooverEventArgs>(Item_ClickMenuItemHooverSelected); |
|
38 _copierItem.ClickMenuItemHooverSelected += new EventHandler<ClickMenuItemHooverEventArgs>(Item_ClickMenuItemHooverSelected); |
|
39 _chutierItem.ClickMenuItemHooverSelected += new EventHandler<ClickMenuItemHooverEventArgs>(Item_ClickMenuItemHooverSelected); |
|
40 |
|
41 /*Action*/ |
|
42 Commands.Action.Executed += new EventHandler<SLExtensions.Input.ExecutedEventArgs>(Action_Executed); |
|
43 _localiserItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
44 _copierItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
45 _chutierItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
46 _contextualiserPanel._adhesionItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
47 _contextualiserPanel._polemicItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
48 _contextualiserPanel._questionItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
49 _contextualiserPanel._referenceItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
50 _annoterPanel._videoItem.ClickMenuItemSelected += Commands.Action.Execute; |
|
51 _annoterPanel._textItem.ClickMenuItemSelected += Commands.ClickMenu.CreateNewTextualAnnotation.Execute; |
|
52 |
|
53 } |
|
54 |
|
55 void Action_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e) |
|
56 { |
|
57 MessageBox.Show("Action - Command:"+((ClickMenuItem)e.Parameter).Title); |
|
58 } |
|
59 |
|
60 void ClickMenuItemSelected(object sender, ClickMenuItemSelectedEventArgs e) |
|
61 { |
|
62 MessageBox.Show("Action"); |
|
63 } |
|
64 |
|
65 |
|
66 |
|
67 |
|
68 |
|
69 void MenuClick_Executed(object sender, SLExtensions.Input.ExecutedEventArgs e) |
|
70 { |
|
71 Visibility = Visibility.Visible; |
|
72 SelectedElement = (PolemicElement)e.Source; |
|
73 textBlock.Text = ((PolemicElement)e.Source).Title; |
|
74 } |
|
75 |
|
76 void Item_ClickMenuItemHooverSelected(object sender, ClickMenuItemHooverEventArgs e) |
|
77 { |
|
78 ClickMenuItem temp = (ClickMenuItem)sender; |
|
79 textBlock.Text = " > "+temp.Title; |
|
80 } |
|
81 |
|
82 private void LayoutRoot_MouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e) |
|
83 { |
|
84 Visibility = Visibility.Collapsed; |
|
85 |
|
86 } |
|
87 |
|
88 |
|
89 } |
|
90 } |