예제 #1
0
        public void ExportFrameSeries(Project openedProject, TimelineEvent play, string snapshotsDir)
        {
            SnapshotsDialog sd;
            uint            interval;
            string          seriesName;
            string          outDir;

            Log.Information("Export frame series");
            sd      = new SnapshotsDialog(mainWindow as Gtk.Window);
            sd.Play = play.Name;

            if (sd.Run() == (int)ResponseType.Ok)
            {
                interval   = sd.Interval;
                seriesName = sd.SeriesName;
                sd.Destroy();
                outDir = System.IO.Path.Combine(snapshotsDir, seriesName);
                var fsc  = new FramesSeriesCapturer(openedProject.Description.FileSet, play, interval, outDir);
                var fcpd = new FramesCaptureProgressDialog(fsc, mainWindow as Gtk.Window);
                fcpd.Run();
                fcpd.Destroy();
            }
            else
            {
                sd.Destroy();
            }
        }
예제 #2
0
        protected virtual void OnSnapshotSeries(Play tNode)
        {
            SnapshotsDialog sd;
            uint            interval;
            string          seriesName;
            string          outDir;

            player.Pause();

            sd = new SnapshotsDialog();
            sd.TransientFor = mainWindow as Gtk.Window;
            sd.Play         = tNode.Name;

            if (sd.Run() == (int)ResponseType.Ok)
            {
                sd.Destroy();
                interval   = sd.Interval;
                seriesName = sd.SeriesName;
                outDir     = System.IO.Path.Combine(Config.SnapshotsDir(), seriesName);
                fsc        = new FramesSeriesCapturer(openedProject.Description.File.FilePath,
                                                      tNode.Start.MSeconds, tNode.Stop.MSeconds,
                                                      interval, outDir);
                fcpd = new FramesCaptureProgressDialog(fsc);
                fcpd.TransientFor = mainWindow as Gtk.Window;
                fcpd.Run();
                fcpd.Destroy();
            }
            else
            {
                sd.Destroy();
            }
        }
예제 #3
0
        public void ExportFrameSeries(Project openedProject, Play play, string snapshotsDir)
        {
            SnapshotsDialog sd;
            uint            interval;
            string          seriesName;
            string          outDir;


            sd = new SnapshotsDialog();
            sd.TransientFor = mainWindow as Gtk.Window;
            sd.Play         = play.Name;

            if (sd.Run() == (int)ResponseType.Ok)
            {
                interval   = sd.Interval;
                seriesName = sd.SeriesName;
                sd.Destroy();
                outDir = System.IO.Path.Combine(snapshotsDir, seriesName);
                var fsc = new FramesSeriesCapturer(openedProject.Description.File.FilePath,
                                                   play.Start.MSeconds, play.Stop.MSeconds,
                                                   interval, outDir);
                var fcpd = new FramesCaptureProgressDialog(fsc);
                fcpd.TransientFor = mainWindow as Gtk.Window;
                fcpd.Run();
                fcpd.Destroy();
            }
            else
            {
                sd.Destroy();
            }
        }
예제 #4
0
 public FramesCaptureProgressDialog(FramesSeriesCapturer capturer)
 {
     this.Build();
     this.Deletable     = false;
     this.capturer      = capturer;
     capturer.Progress += Update;
     capturer.Start();
 }
 public FramesCaptureProgressDialog(FramesSeriesCapturer capturer, Gtk.Window parent)
 {
     TransientFor = parent;
     this.Build ();
     this.Deletable = false;
     this.capturer = capturer;
     capturer.Progress += Update;
     capturer.Start ();
 }
 public FramesCaptureProgressDialog(FramesSeriesCapturer capturer, Gtk.Window parent)
 {
     TransientFor = parent;
     this.Build();
     this.Deletable     = false;
     this.capturer      = capturer;
     capturer.Progress += Update;
     capturer.Start();
 }