private BeeImage GetNextImage(bool advancePointers) { BeeStack nextStack = BeeBurnVM.Get().EnsureActiveStack(); BeeImage biNext; if (advancePointers) { biNext = nextStack.GetNextImage(PlayOption == PlayOptions.RepeatThisList); } else { biNext = nextStack.PeekNextImage(PlayOption == PlayOptions.RepeatThisList); } if (biNext == null && PlayOption == PlayOptions.NextList) { nextStack = BeeBurnVM.Get().GetNextStack(true, advancePointers); if (nextStack != null) { if (advancePointers) { return(nextStack.GetNextImage(PlayOption == PlayOptions.RepeatThisList)); } else { return(nextStack.PeekNextImage(PlayOption == PlayOptions.RepeatThisList)); } } } return(biNext); }
private void QueueNextImage() { EnsureProjectionWindow(); BeeStack activeStack = BeeBurnVM.Get().EnsureActiveStack(); BeeImage biNext = GetNextImage(true); if (biNext == null) { PauseProjection(true); m_proj.FadeToBlack(); return; } CurrentImage.Source = biNext.BitmapFrame; RefreshNextImageControl(); double panSeconds = m_proj.QueueImage(biNext) + BeeBurnVM.Get().ConfigSettings.ImageFadeTime; // DispatcherTimer setup if (m_dispatcherTimer == null) { m_dispatcherTimer = new System.Windows.Threading.DispatcherTimer(); m_dispatcherTimer.Tick += new EventHandler(ProjectionTimerTick); } m_dispatcherTimer.Tag = panSeconds; m_proj.UpdateProgress(0); m_timerStart = DateTime.Now; m_dispatcherTimer.Interval = new TimeSpan(0, 0, 0, 0, 50); m_dispatcherTimer.Start(); }
private void BtnAct_Click(object sender, RoutedEventArgs e) { BeeBurnVM.Get().ActiveStack = Stacks[SelectedStackIndex]; }
public PresenterView() { InitializeComponent(); DataContext = BeeBurnVM.Get(); }