client/src/Iri.Modernisation.Controls/ViewModel/PolemicElementVM.cs
changeset 29 5f8d275750e7
parent 28 2d4ec5ab2a40
equal deleted inserted replaced
28:2d4ec5ab2a40 29:5f8d275750e7
    18     /// <summary>
    18     /// <summary>
    19     /// ViewModel d'un PolemicElement
    19     /// ViewModel d'un PolemicElement
    20     /// </summary>
    20     /// </summary>
    21     public class PolemicElementVM : MenuableViewModel  
    21     public class PolemicElementVM : MenuableViewModel  
    22     {
    22     {
    23         /// <summary>
    23      
    24         /// Timer lançant le ClickMenu
       
    25         /// </summary>
       
    26         private System.Windows.Threading.DispatcherTimer DisplayTimer = new System.Windows.Threading.DispatcherTimer();
       
    27         private MouseButtonEventArgs _selectedCoord;
    24         private MouseButtonEventArgs _selectedCoord;
    28 
    25 
    29         /// <summary>
    26         /// <summary>
    30         /// Temps d'entrée
    27         /// Temps d'entrée
    31         /// </summary>
    28         /// </summary>
   220             TimerOut = _element.TimerOut;
   217             TimerOut = _element.TimerOut;
   221             Title = _element.Title;
   218             Title = _element.Title;
   222             Description = _element.Description;
   219             Description = _element.Description;
   223             Tags = _element.Tags;
   220             Tags = _element.Tags;
   224             Chapter = _element.Chapter;
   221             Chapter = _element.Chapter;
   225             DisplayTimer.Interval = new TimeSpan(0, 0, 0, 0, 500);
   222            
   226             DisplayTimer.Tick += new EventHandler(myDispatcherTimer_Tick);
       
   227             if (_element is Annotation)
   223             if (_element is Annotation)
   228             {
   224             {
   229                 _type = ((Annotation)_element).Type.Color;
   225                 _type = ((Annotation)_element).Type.Color;
   230             }
   226             }
   231         }
   227         }
   232         
   228 
   233         /// <summary>
   229 
   234         /// Lors d'un Tick,c'est à dire, lors d'un appuie long sur un élément
   230 
   235         /// </summary>
   231         public override void ActiveContextualMenu(object sender, MouseButtonEventArgs e)
   236         /// <param name="sender"></param>
       
   237         /// <param name="e"></param>
       
   238         void myDispatcherTimer_Tick(object sender, EventArgs e)
       
   239         {
       
   240             DisplayTimer.Stop();
       
   241             Commands.PolemicElement.ElementSelected.Execute(_selectedCoord, _element);
       
   242         }
       
   243 
       
   244      
       
   245         public override void MenuableUserControl_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
       
   246         {
   232         {
   247 
   233 
   248             _selectedCoord = e;
   234             _selectedCoord = e;
   249             Commands.PolemicElement.SelectPolemicElement.Execute(_element);
   235             Commands.PolemicElement.SelectPolemicElement.Execute(_element);
   250             DisplayTimer.Start();
   236             Commands.PolemicElement.ElementSelected.Execute(_selectedCoord, _element);
   251             
   237             
   252 
   238 
   253         }
   239         }
   254         public override void MenuableUserControl_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
   240         public override void DisactiveContextualMenu(object sender, MouseButtonEventArgs e)
   255         {
   241         {
   256             DisplayTimer.Stop();
   242           
   257             Commands.ContextualBinderLayer.EndBind.Execute(Type, _element);
   243             Commands.ContextualBinderLayer.EndBind.Execute(Type, _element);
   258 
   244 
   259         }
   245         }
   260         public override void MenuableUserControl_MouseLeave(object sender, MouseEventArgs e)
   246         public override void MenuableUserControl_MouseLeave(object sender, MouseEventArgs e)
   261         {
   247         {