private void PreviousSlide()
 {
     CurrentSlide.Blurred();
     m_CurrentSlide = m_CurrentSlide - 1 < 0 ? m_EnabledSlides.Count - 1 : (m_CurrentSlide - 1) % m_EnabledSlides.Count;
     LandingOnSlide();
     CurrentSlide.Focusing();
 }
 private void NextSlide()
 {
     CurrentSlide.Blurred();
     m_CurrentSlide = (m_CurrentSlide + 1) % m_EnabledSlides.Count;
     LandingOnSlide();
     CurrentSlide.Focusing();
 }
 // Use this for initialization
 void Start()
 {
     if (Application.isPlaying)
     {
         if (m_EnabledSlides != null && m_EnabledSlides.Count > 0)
         {
             LandingOnSlide();
             CurrentSlide.Focusing();
         }
     }
 }
Exemple #4
0
        public override int GetHashCode()
        {
            // Use a different bit for bool fields: bool.GetHashCode() will return 0 (false) or 1 (true). So we would
            // end up having the same hash code for e.g. two instances where one has only noCache set and the other
            // only noStore.
            var result = Autoplay.GetHashCode()
                         ^ (Crossfade.GetHashCode() << 1); // increase shift by one for every bool field

            if (CurrentSlide != null)
            {
                result ^= CurrentSlide.GetHashCode();
            }

            return(result);
        }
        protected override void FadeIn(FrameworkElement slide)
        {
            ScaleTransform st = new ScaleTransform(0.1, 0.1, CurrentSlide.ActualWidth / 2, CurrentSlide.ActualHeight / 2);

            CurrentSlide.RenderTransform = st;
            DoubleAnimation da1 = new DoubleAnimation(0.1, 1, new Duration(TimeSpan.Parse("0:0:0.5")));

            st.BeginAnimation(ScaleTransform.ScaleXProperty, da1);
            st.BeginAnimation(ScaleTransform.ScaleYProperty, da1);

            DoubleAnimation da2 = new DoubleAnimation(0, 1, new Duration(TimeSpan.Parse("0:0:0.5")));

            CurrentSlide.BeginAnimation(FrameworkElement.OpacityProperty, da2);

            Panel.SetZIndex(LastSlide, 0);
            Panel.SetZIndex(CurrentSlide, 100);
        }
        public ISlide GetPreviousSlide()
        {
            if (presentation.Slides.Count == 0)
            {
                return(null);
            }

            if (CurrentSlideIndex == 0)
            {
                return(null);
            }

            CurrentSlide.Reset();

            CurrentSlideIndex--;
            CurrentSlide = presentation.Slides[CurrentSlideIndex];
            CurrentSlide.OnFinished();

            return(CurrentSlide);
        }
        public ISlide GetNextSlide()
        {
            if (presentation.Slides.Count == 0)
            {
                return(null);
            }

            if (CurrentSlide != null)
            {
                CurrentSlide.Next();

                if (CurrentSlide.IsDone == false)
                {
                    return(null);
                }
                else
                {
                    CurrentSlide.OnFinished();

                    if (CurrentSlideIndex == presentation.Slides.Count - 1)
                    {
                        OnSlideShowFinished?.Invoke(this, EventArgs.Empty);
                        return(null);
                    }

                    CurrentSlideIndex++;
                    CurrentSlide = presentation.Slides[CurrentSlideIndex];
                    CurrentSlide.OnStart();
                }
            }
            else
            {
                CurrentSlide = presentation.Slides[CurrentSlideIndex];
                CurrentSlide.OnStart();
            }

            return(CurrentSlide);
        }