Esempio n. 1
0
        void DoOpenFiles(string[] files)
        {
            var delay = TimeSpan.Zero;

            if (files.Length > 1)
            {
                // multiselect!

                var fof = new FileOrderingForm(files);
                if (fof.ShowDialog(this) != DialogResult.OK)
                {
                    return;
                }
                files = fof.FileOrder.ToArray();
                delay = TimeSpan.FromSeconds(fof.SecondsBetweenFiles);
            }

            var streams = files.Select(f => File.OpenRead(f) as Stream);
            var oldc    = Cursor;

            Cursor = Cursors.WaitCursor;
            using ( Decoder ) {}
            Cursor        = oldc;
            Decoder       = null;
            Decoder       = new TtyRecKeyframeDecoder(Configuration.Main.LogicalConsoleSizeW, Configuration.Main.LogicalConsoleSizeH, streams, delay);
            PlaybackSpeed = +1;
            Seek          = TimeSpan.Zero;
        }
Esempio n. 2
0
        protected override void OnKeyDown(KeyEventArgs e)
        {
            bool resize = (WindowState == FormWindowState.Normal) && (ClientSize == ActiveSize);

            switch (e.KeyData)
            {
            case Keys.Escape: using ( Decoder ) {} Decoder = null; break;

            case Keys.Control | Keys.C: Reconfigure(); break;

            case Keys.Control | Keys.O: OpenFile(); break;

            case Keys.Alt | Keys.Enter:
                if (FormBorderStyle == FormBorderStyle.None)
                {
                    FormBorderStyle = FormBorderStyle.Sizable;
                    WindowState     = FormWindowState.Normal;
                }
                else
                {
                    FormBorderStyle = FormBorderStyle.None;
                    WindowState     = FormWindowState.Maximized;
                }
                e.SuppressKeyPress = true;                 // also supresses annoying dings
                break;

            case Keys.Z: PlaybackSpeed = -100; break;

            case Keys.X: PlaybackSpeed = -10; break;

            case Keys.C: PlaybackSpeed = -1; break;

            case Keys.V: PlaybackSpeed = 0; break;

            case Keys.B: PlaybackSpeed = +1; break;

            case Keys.N: PlaybackSpeed = +10; break;

            case Keys.M: PlaybackSpeed = +100; break;

            case Keys.A: ++Zoom; if (resize)
                {
                    ClientSize = ActiveSize;
                }
                break;

            case Keys.S: if (Zoom > 1)
                {
                    --Zoom;
                }
                if (resize)
                {
                    ClientSize = ActiveSize;
                }
                break;
            }
            base.OnKeyDown(e);
        }
Esempio n. 3
0
        private async void DownloadTTyRec(object sender, EventArgs e)
        {
            await playerSearch.DownloadFileAsync(sender, e);

            var streams = TtyrecToStream(playerSearch.TtyrecStreamDictionary);

            var delay = TimeSpan.Zero;

            ttyrecDecoder = new TtyRecKeyframeDecoder(80, 24, streams, delay, MaxDelayBetweenPackets);
            ttyrecDecoder.PlaybackSpeed = +1;
            ttyrecDecoder.SeekTime      = TimeSpan.Zero;
        }
Esempio n. 4
0
        void DoOpenFiles(string[] files)
        {
            var delay = TimeSpan.Zero;

            //if (files.Length > 1)
            //{
            //    // multiselect!
            //    var fof = new FileOrderingForm(files);
            //    if (fof.ShowDialog(this) != DialogResult.OK) return;
            //    files = fof.FileOrder.ToArray();
            //    delay = TimeSpan.FromSeconds(fof.SecondsBetweenFiles);
            //}
            var streams = ttyrecToStream(files);
            var oldc    = Cursor;

            Decoder       = new TtyRecKeyframeDecoder(80, 24, streams, delay);
            PlaybackSpeed = +1;
            Seek          = TimeSpan.Zero;
        }
Esempio n. 5
0
        protected override void OnKeyDown(KeyEventArgs e)
        {
            //   bool resize = (WindowState == FormWindowState.Normal) && (ClientSize == ActiveSize);

            switch (e.KeyData)
            {
            case Keys.Escape: using (Decoder) { } Decoder = null; break;

            //case Keys.Control | Keys.C: Reconfigure(); break;
            case Keys.Control | Keys.O: OpenFile(); break;

            case Keys.Alt | Keys.Enter:
                if (FormBorderStyle == FormBorderStyle.None)
                {
                    FormBorderStyle = FormBorderStyle.Sizable;
                    WindowState     = FormWindowState.Normal;
                }
                else
                {
                    FormBorderStyle = FormBorderStyle.None;
                    WindowState     = FormWindowState.Maximized;
                }
                e.SuppressKeyPress = true;     // also supresses annoying dings
                break;

            case Keys.Z: PlaybackSpeed = -100; break;

            case Keys.X: PlaybackSpeed = -10; break;

            case Keys.C: PlaybackSpeed = -1; break;

            case Keys.B: PlaybackSpeed = +1; break;

            case Keys.N: PlaybackSpeed = +10; break;

            case Keys.M: PlaybackSpeed += +100; break;

            case Keys.F: PlaybackSpeed = PlaybackSpeed - 1; break;    //progresive increase/decrease

            case Keys.G: PlaybackSpeed = PlaybackSpeed + 1; break;

            case Keys.D: PlaybackSpeed = PlaybackSpeed - 0.2; break;    //progresive increase/decrease

            case Keys.H: PlaybackSpeed = PlaybackSpeed + 0.2; break;

            case Keys.V:    //Play / Pause
            case Keys.Space:
                if (PlaybackSpeed != 0)
                {
                    PausedSpeed = PlaybackSpeed; PlaybackSpeed = 0;
                }
                else
                {
                    PlaybackSpeed = PausedSpeed;
                }
                break;

                // case Keys.A: ++Zoom; if (resize) ClientSize = ActiveSize; break;
                //  case Keys.S: if (Zoom > 1) --Zoom; if (resize) ClientSize = ActiveSize; break;
            }
            base.OnKeyDown(e);
        }