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