Sharpie
Search Results for

    Show / Hide Table of Contents
    • Sharpie
      • Canvas
      • Canvas.CheckGlyphStyle
      • Canvas.FillStyle
      • Canvas.GlyphSize
      • Canvas.GradientGlyphStyle
      • Canvas.LineStyle
      • Canvas.Orientation
      • Canvas.ShadeGlyphStyle
      • Canvas.TriangleGlyphStyle
      • CaretMode
      • ClearStrategy
      • ColorManager
      • ColorMixture
      • ColorMode
      • ControlCharacter
      • CursesException
      • CursesInitializationException
      • CursesOperationException
      • CursesSynchronizationException
      • DelegateEvent
      • Event
      • EventPump
      • EventType
      • Key
      • KeyEvent
      • KeySequenceResolver
      • ModifierKey
      • MouseActionEvent
      • MouseButton
      • MouseButtonState
      • MouseMoveEvent
      • Pad
      • ReplaceStrategy
      • ResolveEscapeSequenceFunc
      • Screen
      • SoftLabelKeyAlignment
      • SoftLabelKeyManager
      • SoftLabelKeyMode
      • StandardColor
      • StartEvent
      • StopEvent
      • Style
      • StyledText
      • SubPad
      • SubWindow
      • Surface
      • Terminal
      • TerminalOptions
      • TerminalResizeEvent
      • TerminalSurface
      • VideoAttribute
      • Window
    • Sharpie.Abstractions
      • IAsciiFont
      • IColorManager
      • ICursesBackend
      • ICursesBackend.ripoffline_callback
      • IDrawSurface
      • IDrawable
      • IEventPump
      • IInterval
      • IPad
      • IScreen
      • ISoftLabelKeyManager
      • ISubPad
      • ISubWindow
      • ISurface
      • ITerminal
      • ITerminalSurface
      • IWindow
    • Sharpie.Backend
      • ComplexChar
      • CursesBackend
      • CursesBackendFlavor
      • CursesBackendType
      • CursesCharEvent
      • CursesEvent
      • CursesKeyEvent
      • CursesMouseEvent
      • CursesMouseState
      • CursesResizeEvent
      • NCursesKeyCode
      • PdCursesKeyCode
    • Sharpie.Font
      • AsciiFont
      • AsciiFontLayout
      • DosCp866AsciiFont
      • FigletFont

    Class TerminalSurface

    Represents a screen-bound surface and contains all its functionality.

    Inheritance
    object
    Surface
    TerminalSurface
    Screen
    Window
    Implements
    IDisposable
    ITerminalSurface
    ISurface
    IDrawSurface
    Inherited Members
    Surface.Curses
    Surface.Origin
    Surface.Area
    Surface.Dispose()
    Surface.Handle
    Surface.ManagedCaret
    Surface.Scrollable
    Surface.Disposed
    Surface.Style
    Surface.ColorMixture
    Surface.Background
    Surface.Size
    Surface.CaretLocation
    Surface.Dirty
    Surface.LineDirty(int)
    Surface.EnableAttributes(VideoAttribute)
    Surface.DisableAttributes(VideoAttribute)
    Surface.ScrollUp(int)
    Surface.ScrollDown(int)
    Surface.InsertEmptyLines(int)
    Surface.DeleteLines(int)
    Surface.ChangeTextStyle(int, Style)
    Surface.WriteText(StyledText, bool)
    Surface.WriteText(string, Style, bool)
    Surface.WriteText(string, bool)
    Surface.NextLine()
    Surface.DrawText(IAsciiFont, string, Style, bool, bool)
    Surface.DrawText(IAsciiFont, string, bool, bool)
    Surface.DrawVerticalLine(int, Rune, Style)
    Surface.DrawVerticalLine(int)
    Surface.DrawHorizontalLine(int, Rune, Style)
    Surface.DrawHorizontalLine(int)
    Surface.DrawBorder(Rune, Rune, Rune, Rune, Rune, Rune, Rune, Rune, Style)
    Surface.DrawBorder()
    Surface.RemoveText(int)
    Surface.GetText(int)
    Surface.Clear(ClearStrategy)
    Surface.Replace(ISurface, ReplaceStrategy)
    Surface.Replace(ISurface, Rectangle, Point, ReplaceStrategy)
    Surface.MarkDirty(int, int)
    Surface.MarkDirty()
    Surface.IsPointWithin(Point)
    Surface.IsRectangleWithin(Rectangle)
    Surface.Draw(Point, Rectangle, IDrawable)
    Surface.Draw(Point, IDrawable)
    Surface.Destroy()
    Surface.AssertAlive()
    Surface.Delete()
    Surface.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: Sharpie
    Assembly: sharpie.dll
    Syntax
    [PublicAPI]
    public class TerminalSurface : Surface, IDisposable, ITerminalSurface, ISurface, IDrawSurface

    Properties

    ImmediateRefresh

    Set or get the immediate refresh capability of the surface.

    Declaration
    public bool ImmediateRefresh { get; set; }
    Property Value
    Type Description
    bool
    Remarks

    Immediate refresh will make the surface redraw affected areas on each change. This might be very slow for most use cases so the default is false.

    Exceptions
    Type Condition
    ObjectDisposedException

    Surface is no longer usable.

    CursesSynchronizationException

    Thrown if this operation was expected to run on the main thread/context but wasn't.

    Terminal

    The terminal this surface belongs to.

    Declaration
    public Terminal Terminal { get; }
    Property Value
    Type Description
    Terminal

    Methods

    AssertSynchronized()

    Asserts that executing thread is bound to the correct synchronization context.

    Declaration
    protected override void AssertSynchronized()
    Overrides
    Surface.AssertSynchronized()
    Exceptions
    Type Condition
    CursesSynchronizationException

    Thrown if current thread is not bound to the correct context.

    Refresh()

    Redraws all the dirty lines of the surface to the terminal. If AtomicRefresh() is active, all refreshes are batched together until the lock is released.

    Declaration
    public virtual void Refresh()
    Remarks

    This operation is not thread safe.

    Exceptions
    Type Condition
    ObjectDisposedException

    Surface is no longer usable.

    CursesSynchronizationException

    Thrown if this operation was expected to run on the main thread/context but wasn't.

    CursesOperationException

    A Curses error occured.

    Refresh(int, int)

    Redraws the given lines of the window to the terminal.

    Declaration
    public virtual void Refresh(int y, int count)
    Parameters
    Type Name Description
    int y

    The starting line to refresh.

    int count

    The number of lines to refresh.

    Remarks

    This operation is not thread safe.

    Exceptions
    Type Condition
    ArgumentOutOfRangeException

    Thrown if y or count are negative.

    InvalidOperationException

    Thrown if an atomic refresh is in progress.

    ObjectDisposedException

    Window is no longer usable.

    CursesSynchronizationException

    Thrown if this operation was expected to run on the main thread/context but wasn't.

    CursesOperationException

    A Curses error occured.

    Implements

    IDisposable
    ITerminalSurface
    ISurface
    IDrawSurface
    In this article
    Back to top Generated by DocFX