Class Pad
Represents a Curses pad, which is a special type of off-screen window.
Inherited Members
Namespace: Sharpie
Assembly: sharpie.dll
Syntax
[PublicAPI]
public sealed class Pad : Surface, IDisposable, IPad, ISurface, IDrawSurface
Properties
Screen
The parent screen of this pad.
Declaration
public Screen Screen { get; }
Property Value
| Type | Description |
|---|---|
| Screen |
Size
Gets or sets the size of the window.
Declaration
public Size Size { get; set; }
Property Value
| Type | Description |
|---|---|
| Size |
Remarks
This operation is not thread safe.
Exceptions
| Type | Condition |
|---|---|
| ArgumentOutOfRangeException | The |
| 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 occurred. |
SubPads
Gets the sub-pads of this pad.
Declaration
public IEnumerable<ISubPad> SubPads { get; }
Property Value
| Type | Description |
|---|---|
| IEnumerable<ISubPad> |
Remarks
This operation is not thread safe.
Exceptions
| Type | Condition |
|---|---|
| CursesSynchronizationException | Thrown if this operation was expected to run on the main thread/context but wasn't. |
Methods
AssertSynchronized()
Asserts that executing thread is bound to the correct synchronization context.
Declaration
protected override void AssertSynchronized()
Overrides
Exceptions
| Type | Condition |
|---|---|
| CursesSynchronizationException | Thrown if current thread is not bound to the correct context. |
Delete()
Deletes the surface from the curses backend.
Declaration
protected override void Delete()
Overrides
Duplicate()
Duplicates and existing pad, including its attributes.
Declaration
public IPad Duplicate()
Returns
| Type | Description |
|---|---|
| IPad | A new pad object. |
Remarks
This operation is not thread safe.
Exceptions
| Type | Condition |
|---|---|
| ObjectDisposedException | Screen 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 occurred. |
Refresh(Point)
Redraws an area of the screen with the contents of the pad.
Declaration
public void Refresh(Point destLocation)
Parameters
| Type | Name | Description |
|---|---|---|
| Point | destLocation | The point on the screen to place that rectangle. |
Remarks
This operation is not thread safe.
Exceptions
| Type | Condition |
|---|---|
| ObjectDisposedException | The terminal of the given window have been disposed. |
| ArgumentOutOfRangeException | Thrown if |
| CursesSynchronizationException | Thrown if this operation was expected to run on the main thread/context but wasn't. |
| CursesOperationException | A Curses error occurred. |
Refresh(Rectangle, Point)
Redraws an area of the screen with the contents of the pad.
Declaration
public void Refresh(Rectangle srcArea, Point destLocation)
Parameters
| Type | Name | Description |
|---|---|---|
| Rectangle | srcArea | The rectangle of the pad to place onto the screen. |
| Point | destLocation | The point on the screen to place that rectangle. |
Remarks
This operation is not thread safe.
Exceptions
| Type | Condition |
|---|---|
| ObjectDisposedException | The terminal of the given window have been disposed. |
| CursesSynchronizationException | Thrown if this operation was expected to run on the main thread/context but wasn't. |
| CursesOperationException | A Curses error occurred. |
SubPad(Rectangle)
Creates a new sub-pad in the parent pad.
Declaration
public ISubPad SubPad(Rectangle area)
Parameters
| Type | Name | Description |
|---|---|---|
| Rectangle | area | The area of the pad to put the sub-pad in. |
Returns
| Type | Description |
|---|---|
| ISubPad | A new pad object. |
Exceptions
| Type | Condition |
|---|---|
| ObjectDisposedException | Screen is no longer usable. |
| ArgumentOutOfRangeException | The |
| CursesSynchronizationException | Thrown if this operation was expected to run on the main thread/context but wasn't. |
| CursesOperationException | A Curses error occurred. |