Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
TimeBarCurrentTimeSetterBehavior.cs
Go to the documentation of this file.
1 using System;
2 using System.Collections.Generic;
3 using System.Linq;
4 using System.Text;
5 using System.Windows.Interactivity;
6 using SiliconStudio.Presentation.Controls;
7 
8 namespace SiliconStudio.Paradox.DebugTools.Behaviors
9 {
10  public class TimeBarCurrentTimeSetterBehavior : Behavior<ScaleBar>
11  {
12  public ProcessInfoRenderer Renderer { get; set; }
13 
14  protected override void OnAttached()
15  {
16  if (Renderer == null)
17  // throw new InvalidOperationException("The Renderer property must be set a valid value.");
18  return; // can be null at design time
19 
20  Renderer.LastFrameRender += OnRendererLastFrameRender;
21  }
22 
23  protected override void OnDetaching()
24  {
25  Renderer.LastFrameRender -= OnRendererLastFrameRender;
26  }
27 
28  private void OnRendererLastFrameRender(object sender, FrameRenderRoutedEventArgs e)
29  {
30  AssociatedObject.SetUnitAt(e.FrameData.EndTime, Renderer.ActualWidth);
31  }
32  }
33 }
Renders a full micro threading process.