Example #1
0
        internal static SafeFileHandle GetBufferInfo(out ConsoleControl.CONSOLE_SCREEN_BUFFER_INFO bufferInfo)
        {
            SafeFileHandle activeScreenBufferHandle = ConsoleControl.GetActiveScreenBufferHandle();

            bufferInfo = ConsoleControl.GetConsoleScreenBufferInfo(activeScreenBufferHandle);
            return(activeScreenBufferHandle);
        }
Example #2
0
        public override void ScrollBufferContents(Rectangle source, Coordinates destination, Rectangle clip, BufferCell fill)
        {
            ConsoleControl.SMALL_RECT left;
            left.Left   = (short)source.Left;
            left.Right  = (short)source.Right;
            left.Top    = (short)source.Top;
            left.Bottom = (short)source.Bottom;
            ConsoleControl.SMALL_RECT right;
            right.Left   = (short)clip.Left;
            right.Right  = (short)clip.Right;
            right.Top    = (short)clip.Top;
            right.Bottom = (short)clip.Bottom;
            ConsoleControl.COORD x;
            x.X = (short)destination.X;
            x.Y = (short)destination.Y;
            ConsoleControl.CHAR_INFO character;
            character.UnicodeChar = fill.Character;
            character.Attributes  = ConsoleControl.ColorToWORD(fill.ForegroundColor, fill.BackgroundColor);
            SafeFileHandle activeScreenBufferHandle = ConsoleControl.GetActiveScreenBufferHandle();

            ConsoleControl.ScrollConsoleScreenBuffer(activeScreenBufferHandle, left, right, x, character);
        }