client/src/Iri.Modernisation.Controls/ViewModel/PolemicElementVM.cs
author Matthieu Totet
Fri, 18 Dec 2009 16:45:30 +0100
changeset 25 a9c815025a1b
parent 10 12515e11b357
child 27 f292db96b050
permissions -rw-r--r--
Update ProductionView + Cleanning Code
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.Net;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     3
using System.Windows;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     4
using System.Windows.Controls;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     5
using System.Windows.Documents;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     6
using System.Windows.Ink;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     7
using System.Windows.Input;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     8
using System.Windows.Media;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
     9
using System.Windows.Media.Animation;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    10
using System.Windows.Shapes;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    11
using Iri.Modernisation.BaseMVVM;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    12
using Iri.Modernisation.BaseMVVM.ViewModel;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    13
using Iri.Modernisation.BaseMVVM.Commands;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    14
using Iri.Modernisation.Data.Models;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    15
using System.Collections.Generic;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    16
namespace Iri.Modernisation.Controls.ViewModel
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    17
{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    18
    /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    19
    /// ViewModel d'un PolemicElement
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    20
    /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    21
    public class PolemicElementVM : MenuableViewModel  
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    22
    {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    23
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    24
        /// Timer lançant le ClickMenu
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    25
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    26
        private System.Windows.Threading.DispatcherTimer DisplayTimer = new System.Windows.Threading.DispatcherTimer();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    27
        private MouseButtonEventArgs _selectedCoord;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    28
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    29
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    30
        /// Temps d'entrée
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    31
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    32
        private TimeSpan _timerIn;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    33
        public TimeSpan TimerIn 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    34
        { 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    35
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    36
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    37
                return _timerIn;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    38
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    39
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    40
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    41
                _timerIn = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    42
                _element.TimerIn = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    43
                OnPropertyChanged("TimerIn");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    44
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    45
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    46
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    47
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    48
        /// Temps de sortie
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    49
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    50
        private TimeSpan _timerOut;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    51
        public TimeSpan TimerOut
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    52
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    53
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    54
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    55
                return _timerOut;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    56
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    57
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    58
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    59
                _timerOut = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    60
                _element.TimerOut = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    61
                OnPropertyChanged("TimerOut");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    62
            }
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
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    66
        /// Durée de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    67
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    68
        public TimeSpan Duration
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    69
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    70
            get 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    71
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    72
                return TimerOut - TimerIn; 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    73
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    74
            set 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    75
            { 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    76
                TimerOut = TimerIn + value; 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    77
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    78
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    79
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    80
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    81
        /// Titre de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    82
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    83
        private String _title;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    84
        public String Title
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    85
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    86
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    87
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    88
                return _title;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    89
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    90
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    91
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    92
                _title = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    93
                _element.Title = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    94
                OnPropertyChanged("Title");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    95
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    96
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    97
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    98
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
    99
        /// Description de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   100
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   101
        private String _description;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   102
        public String Description 
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   103
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   104
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   105
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   106
                return _description;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   107
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   108
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   109
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   110
                _description = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   111
                _element.Description = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   112
                OnPropertyChanged("Description");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   113
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   114
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   115
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   116
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   117
        /// Tags de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   118
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   119
        private List<String> _tags;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   120
        public List<String> Tags
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   121
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   122
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   123
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   124
                return _tags;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   125
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   126
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   127
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   128
                _tags = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   129
                _element.Tags = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   130
                OnPropertyChanged("Tags");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   131
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   132
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   133
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   134
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   135
        /// Chapitre référent de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   136
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   137
        private VideoChapter _chapter;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   138
        public VideoChapter Chapter
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   139
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   140
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   141
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   142
                return _chapter;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   143
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   144
            set
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   145
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   146
                _chapter = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   147
                _element.Chapter = value;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   148
                OnPropertyChanged("Chapter");
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   149
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   150
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   151
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   152
       /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   153
       /// Auteur de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   154
       /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   155
        public User Contributer
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   156
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   157
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   158
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   159
                try
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   160
                {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   161
                   return ((Annotation)_element).Contributer;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   162
                }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   163
                catch
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   164
                {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   165
                    return null;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   166
                }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   167
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   168
           
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   169
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   170
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   171
		public double Heigh
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   172
		{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   173
			get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   174
			{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   175
				if(_element is SegmentIndex)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   176
				{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   177
					return 20;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   178
				}
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   179
				else
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   180
				{
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   181
					return 10;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   182
				}
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   183
				
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   184
			}
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   185
			
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   186
		}
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   187
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   188
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   189
        /// PolemicType de l'élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   190
        /// </summary>
10
12515e11b357 Update PolemicElement View : Can Display Correct Color of VideoChapter
Matthieu Totet
parents: 0
diff changeset
   191
        public object Type
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   192
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   193
            get
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   194
            {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   195
                if (_element is Annotation)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   196
                {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   197
                    return ((Annotation)_element).Type;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   198
                }
10
12515e11b357 Update PolemicElement View : Can Display Correct Color of VideoChapter
Matthieu Totet
parents: 0
diff changeset
   199
                else if(_element is SegmentIndex)
12515e11b357 Update PolemicElement View : Can Display Correct Color of VideoChapter
Matthieu Totet
parents: 0
diff changeset
   200
                {
12515e11b357 Update PolemicElement View : Can Display Correct Color of VideoChapter
Matthieu Totet
parents: 0
diff changeset
   201
                    return ((SegmentIndex)_element).Chapter.Type;
12515e11b357 Update PolemicElement View : Can Display Correct Color of VideoChapter
Matthieu Totet
parents: 0
diff changeset
   202
                }
0
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   203
                else
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   204
                {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   205
                    return PolemicElementType.Basic;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   206
                }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   207
            }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   208
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   209
        private PolemicElement _element { get; set; }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   210
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   211
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   212
        /// Constructeur
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   213
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   214
        /// <param name="element">PolémicElement</param>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   215
        public PolemicElementVM(PolemicElement element)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   216
            :base()
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   217
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   218
            _element = element;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   219
            TimerIn = _element.TimerIn;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   220
            TimerOut = _element.TimerOut;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   221
            Title = _element.Title;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   222
            Description = _element.Description;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   223
            Tags = _element.Tags;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   224
            Chapter = _element.Chapter;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   225
            DisplayTimer.Interval = new TimeSpan(0, 0, 0, 0, 500);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   226
            DisplayTimer.Tick += new EventHandler(myDispatcherTimer_Tick);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   227
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   228
        
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   229
        /// <summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   230
        /// Lors d'un Tick,c'est à dire, lors d'un appuie long sur un élément
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   231
        /// </summary>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   232
        /// <param name="sender"></param>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   233
        /// <param name="e"></param>
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   234
        void myDispatcherTimer_Tick(object sender, EventArgs e)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   235
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   236
            DisplayTimer.Stop();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   237
            Commands.PolemicElement.ElementSelected.Execute(_selectedCoord, _element);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   238
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   239
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   240
     
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   241
        public override void MenuableUserControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   242
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   243
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   244
            _selectedCoord = e;
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   245
            Commands.PolemicElement.SelectPolemicElement.Execute(_element);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   246
            DisplayTimer.Start();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   247
            
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   248
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   249
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   250
        public override void MenuableUserControl_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   251
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   252
            DisplayTimer.Stop();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   253
            Commands.ContextualBinderLayer.EndBind.Execute(Type, _element);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   254
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   255
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   256
        public override void MenuableUserControl_MouseLeave(object sender, MouseEventArgs e)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   257
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   258
            Commands.ContextualBinderLayer.UnSelectBind.Execute();
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   259
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   260
        public override void MenuableUserControl_MouseEnter(object sender, MouseEventArgs e)
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   261
        {
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   262
            Commands.ContextualBinderLayer.SelectBind.Execute(Type, _element);
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   263
        }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   264
     
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   265
    }
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   266
249d70e7b32d Create Directories & Project
Matthieu Totet
parents:
diff changeset
   267
}