Example #1
0
    /// <summary>
    ///     Called when it's time to execute this storyboard action
    /// </summary>
    internal override void Invoke( FrameworkElement containingFE, FrameworkContentElement containingFCE, Storyboard storyboard )
    {
        Debug.Assert( containingFE != null || containingFCE != null,
            "Caller of internal function failed to verify that we have a FE or FCE - we have neither." );

        if( containingFE != null )
        {
            storyboard.Pause(containingFE);
        }
        else
        {
            storyboard.Pause(containingFCE);
        }
    }
Example #2
0
		public PressureTank()
		{
			InitializeComponent();

			// Initialize visualization resources
			_pumpingStoryboard = (Storyboard)Resources["RotatePump"];
			_pumpingStoryboard.Begin();

			_pressureLevelStoryboard = (Storyboard)Resources["PressureLevel"];
			_pressureLevelStoryboard.Begin();
			_pressureLevelStoryboard.Pause();

			_timerAlertStoryboard = (Storyboard)Resources["TimerEvent"];
			_sensorAlertStoryboard = (Storyboard)Resources["SensorEvent"];

			// Initialize the simulation environment
			_simulator = new RealTimeSimulator(_model, stepDelay: 1000);
			_simulator.SimulationStateChanged += (o, e) => UpdateSimulationButtonVisibilities();
			_simulator.ModelStateChanged += (o, e) => UpdateModelState();

			// Initialize the visualization state
			UpdateSimulationButtonVisibilities();
			UpdateModelState();

			TimerAlert.Opacity = 0;
			SensorAlert.Opacity = 0;

			ChangeSpeed(8);
		}
		public PressureTank()
		{
			InitializeComponent();

			// Initialize visualization resources
			_pumpingStoryboard = (Storyboard)Resources["RotatePump"];
			_pumpingStoryboard.Begin();

			_pressureLevelStoryboard = (Storyboard)Resources["PressureLevel"];
			_pressureLevelStoryboard.Begin();
			_pressureLevelStoryboard.Pause();

			_timerAlertStoryboard = (Storyboard)Resources["TimerEvent"];
			_sensorAlertStoryboard = (Storyboard)Resources["SensorEvent"];

			// Initialize the simulation environment
			SimulationControls.ModelStateChanged += (o, e) => UpdateModelState();
			SimulationControls.Reset += (o, e) => OnModelStateReset();
			SimulationControls.SetModel(new Model());

			// Initialize the visualization state
			UpdateModelState();

			TimerAlert.Opacity = 0;
			SensorAlert.Opacity = 0;
			SimulationControls.MaxSpeed = 64;
			SimulationControls.ChangeSpeed(8);
		}
Example #4
0
 public MainWindow()
 {
     InitializeComponent();
       sb = (Storyboard)Resources["PeakBack"];
       sb.Begin();
       sb.Pause();
       sb.Seek(TimeSpan.FromSeconds(0));
       this.MouseEnter += new MouseEventHandler(MainWindow_MouseEnter);
       this.MouseLeave += new MouseEventHandler(MainWindow_MouseLeave);
 }
Example #5
0
 void UnloadStoryboardEvent(Storyboard storyboard)
 {
     storyboard.Pause();
     storyboard.Completed -= storyboard_Completed;
     storyboard.Completed -= BePushed_Completed;
     storyboard.Completed -= BeKnockUp_Completed;
     storyboard.Completed -= BeKnockDown_Completed;
 }
Example #6
0
		private void Transition(Storyboard aStoryboard, Storyboard bStoryboard)
		{
			if (m_AnimationElement == null || bStoryboard == null)
				return;

			bStoryboard.Stop();

			// Give the target a unique name so we can find it later
			string name = Guid.NewGuid().ToString();
			bStoryboard.SetTargetName(name);
			m_AnimationElement.Tag = name;

			bStoryboard.SetTarget(m_AnimationElement);
			foreach (Timeline animation in bStoryboard.Children)
				animation.SetTarget(m_AnimationElement);

			//m_AnimationElement.Visibility = Visibility.Visible;
			m_AnimationElement.UpdateLayout();
			if (aStoryboard != null)
			{
				aStoryboard.Pause();
				Duration duration = bStoryboard.Duration;
				TimeSpan timeSpan = aStoryboard.GetCurrentTime();
				bStoryboard.Begin();
				if (timeSpan.TotalMilliseconds != 0 && duration.HasTimeSpan)
					bStoryboard.Seek(duration.TimeSpan - timeSpan);
			}
			else
				bStoryboard.Begin();
		}
Example #7
0
		public void Pause ()
		{
			Canvas c = new Canvas ();
			Rectangle r = new Rectangle ();
			c.Children.Add (r);

			Storyboard sb = new Storyboard { Duration = new Duration (TimeSpan.FromSeconds (10000)) };
			DoubleAnimation anim = new DoubleAnimation { From = 10, To = 50 };

			sb.Children.Add (anim);

			Storyboard.SetTarget (anim, r);
			Storyboard.SetTargetProperty (anim, new PropertyPath ("Width"));

			Enqueue (() => sb.Begin ());

			double width = 0;
			TimeSpan time = new TimeSpan(0);
			Enqueue (() => {
				Assert.IsLess (10000, sb.GetCurrentTime().TotalMilliseconds, "0");
				sb.Pause ();
				time = sb.GetCurrentTime ();
				width = r.Width;
			});

			Enqueue (() => {
				Assert.AreEqual (time, sb.GetCurrentTime(), "1");
				Assert.AreEqual (width, r.Width, "2");
				sb.Resume ();
			});

			Enqueue (() => {
				Assert.IsGreater (time.TotalMilliseconds, sb.GetCurrentTime().TotalMilliseconds, "3");
				Assert.IsGreater (width, r.Width, "4");
			});

			Enqueue (() => { TestPanel.Children.Clear (); TestPanel.Resources.Clear (); });
			EnqueueTestComplete ();
		}
Example #8
0
 public Task RegisterStoryboard(Storyboard storyboard)
 {
     storyboard.Begin(_container, true);
     storyboard.Pause(_container);
     var controller = new StoryboardController(storyboard, _container, _frameDelay);
     _storyboardControllers.Add(controller);
     return controller.CompletedTask;
 }
Example #9
0
 private void Button_Click_2(object sender, RoutedEventArgs e)
 {
     storyboard.Pause();
 }
Example #10
0
 private void SetStoryBoardActivity(Storyboard sb, bool play)
 {
     if (play)
     {
         sb.Resume(this);
     }
     else
     {
         sb.Pause(this);
     }
 }
        private static void OnWavingPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
        {
            if (Infrastructure.IsInDesignMode)
                return;

            FrameworkElement control = sender as FrameworkElement;
            if (control != null)
            {
                var waving = new DoubleAnimationUsingKeyFrames();
                waving.KeyFrames.Add(new LinearDoubleKeyFrame()
                {
                    Value = 6.28,
                    KeyTime = KeyTime.FromTimeSpan(new TimeSpan(0, 0, 1)),
                });
                Timeline.SetDesiredFrameRate(waving, 12);
                Storyboard.SetTargetProperty(waving, new PropertyPath("(UIElement.Effect).(WaveEffect.Offset)"));
                Storyboard.SetTarget(waving, control);
                var story = new Storyboard()
                {
                    RepeatBehavior = new RepeatBehavior(Int32.MaxValue),
                };
                story.Children.Add(waving);
                animations.Add(story);
                story.Begin();

                Trace.TraceInformation(ResourceHelper.FindText("NewWavingAnimationCreated"));
                if (!Settings.Default.WavingFlag)
                {
                    story.Pause();
                }
            }
        }