Пример #1
0
 void Forward()
 {
     if(HasNext()) {
         transition = TransitionManager.CreateFromName (slide.images[CurrentIndex].Transition);
         SlideImage source = ResizeImage(CurrentIndex);
         transition.Source = source;
         SlideImage target = ResizeImage(CurrentIndex + 1);
         transition.Target = target;
         transition.Frames = transition.Source.Project.Details.FramesPerSecond * slide.images[CurrentIndex].TransitionTime;
         uint time = (uint)(1000/transition.Source.Project.Details.FramesPerSecond);
         time = time < MinTime ? MinTime : time;
         GLib.Timeout.Add(time, new GLib.TimeoutHandler(OnNextSlide));
     } else {
         Pause();
     }
 }
Пример #2
0
        public void UpdateTransitionType(string type)
        {
            if (type == string.Empty || type.Equals (TransitionManager.None.Name)) {
                timer.Enabled = false;
                images_transition = null;
                return;
            }

            images_transition = TransitionManager.CreateFromName (type);

            timer.Enabled = true;
            images_transition.Source = slide_a;
            images_transition.Target = slide_b;
            images_transition.Frames = 25 * 3;
            images_transition.Reset ();
            next = images_transition.MoveNext ();

            timer.Interval = 40;
            timer.Enabled = true;
            QueueDraw ();
        }
Пример #3
0
 void ClearTransition()
 {
     if(transition != null) {
         transition.Source.ReleasePixels();
         transition.Target.ReleasePixels();
         transition = null;
     }
 }