Class Toplevel
Toplevel views can be modally executed. They are used for both an application's main view (filling the entire screeN and
for pop-up views such as
Dialog,
MessageBox, and
Wizard.
Inheritance
System.Object
Toplevel
Implements
System.IDisposable
System.ComponentModel.ISupportInitializeNotification
System.ComponentModel.ISupportInitialize
Assembly: Terminal.Gui.dll
Syntax
public class Toplevel : View
Constructors
Toplevel()
Initializes a new instance of the
Toplevel class with
Computed layout,
defaulting to full screen.
Declaration
Toplevel(Rect)
Initializes a new instance of the
Toplevel class with the specified
Absolute layout.
Declaration
public Toplevel(Rect frame)
Parameters
| Type |
Name |
Description |
| Rect |
frame |
A superview-relative rectangle specifying the location and size for the new Toplevel |
Properties
CanFocus
Gets or sets a value indicating whether this
Toplevel can focus.
Declaration
public override bool CanFocus { get; }
Property Value
| Type |
Description |
| System.Boolean |
true if can focus; otherwise, false. |
Overrides
IsMdiChild
Gets or sets if this Toplevel is a Mdi child.
Declaration
public bool IsMdiChild { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
IsMdiContainer
Gets or sets if this Toplevel is a Mdi container.
Declaration
public bool IsMdiContainer { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Gets or sets the menu for this Toplevel.
Declaration
public virtual MenuBar MenuBar { get; set; }
Property Value
Modal
Determines whether the
Toplevel is modal or not.
If set to
false (the default):
- ProcessKey(KeyEvent) events will propagate keys upwards.
- The Toplevel will act as an embedded view (not a modal/pop-up).
If set to
true:
Declaration
public bool Modal { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Running
Declaration
public bool Running { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
StatusBar
Gets or sets the status bar for this Toplevel.
Declaration
public virtual StatusBar StatusBar { get; set; }
Property Value
Methods
Add(View)
Adds a subview (child) to this view.
Declaration
public override void Add(View view)
Parameters
| Type |
Name |
Description |
| View |
view |
|
Overrides
Create()
Convenience factory method that creates a new Toplevel with the current terminal dimensions.
Declaration
public static Toplevel Create()
Returns
| Type |
Description |
| Toplevel |
The created Toplevel. |
GetTopMdiChild(Type, String[])
Gets the current visible Toplevel Mdi child that matches the arguments pattern.
Declaration
public View GetTopMdiChild(Type type = null, string[] exclude = null)
Parameters
| Type |
Name |
Description |
| System.Type |
type |
The type. |
| System.String[] |
exclude |
The strings to exclude. |
Returns
| Type |
Description |
| View |
The matched view. |
MouseEvent(MouseEvent)
Method invoked when a mouse event is generated
Declaration
public override bool MouseEvent(MouseEvent mouseEvent)
Parameters
| Type |
Name |
Description |
| MouseEvent |
mouseEvent |
Contains the details about the mouse event. |
Returns
| Type |
Description |
| System.Boolean |
true, if the event was handled, false otherwise. |
Overrides
MoveNext()
Move to the next Mdi child from the
MdiTop.
Declaration
public virtual void MoveNext()
MovePrevious()
Move to the previous Mdi child from the
MdiTop.
Declaration
public virtual void MovePrevious()
OnAlternateBackwardKeyChanged(Key)
Declaration
public virtual void OnAlternateBackwardKeyChanged(Key oldKey)
Parameters
| Type |
Name |
Description |
| Key |
oldKey |
|
OnAlternateForwardKeyChanged(Key)
Declaration
public virtual void OnAlternateForwardKeyChanged(Key oldKey)
Parameters
| Type |
Name |
Description |
| Key |
oldKey |
|
OnKeyDown(KeyEvent)
Method invoked when a key is pressed.
Declaration
public override bool OnKeyDown(KeyEvent keyEvent)
Parameters
| Type |
Name |
Description |
| KeyEvent |
keyEvent |
Contains the details about the key that produced the event. |
Returns
| Type |
Description |
| System.Boolean |
true if the event was handled |
Overrides
OnKeyUp(KeyEvent)
Method invoked when a key is released.
Declaration
public override bool OnKeyUp(KeyEvent keyEvent)
Parameters
| Type |
Name |
Description |
| KeyEvent |
keyEvent |
Contains the details about the key that produced the event. |
Returns
| Type |
Description |
| System.Boolean |
true if the event was handled |
Overrides
OnLoaded()
Declaration
public virtual void OnLoaded()
OnQuitKeyChanged(Key)
Declaration
public virtual void OnQuitKeyChanged(Key oldKey)
Parameters
| Type |
Name |
Description |
| Key |
oldKey |
|
PositionCursor()
Positions the cursor in the right position based on the currently focused view in the chain.
Declaration
public override void PositionCursor()
Overrides
PositionToplevel(Toplevel)
Virtual method enabling implementation of specific positions for inherited
Toplevel views.
Declaration
public virtual void PositionToplevel(Toplevel top)
Parameters
| Type |
Name |
Description |
| Toplevel |
top |
The toplevel. |
ProcessColdKey(KeyEvent)
This method can be overwritten by views that
want to provide accelerator functionality
(Alt-key for example), but without
interefering with normal ProcessKey behavior.
Declaration
public override bool ProcessColdKey(KeyEvent keyEvent)
Parameters
| Type |
Name |
Description |
| KeyEvent |
keyEvent |
Contains the details about the key that produced the event. |
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
ProcessKey(KeyEvent)
If the view is focused, gives the view a
chance to process the keystroke.
Declaration
public override bool ProcessKey(KeyEvent keyEvent)
Parameters
| Type |
Name |
Description |
| KeyEvent |
keyEvent |
Contains the details about the key that produced the event. |
Returns
| Type |
Description |
| System.Boolean |
|
Overrides
Redraw(Rect)
Redraws this view and its subviews; only redraws the views that have been flagged for a re-display.
Declaration
public override void Redraw(Rect bounds)
Parameters
| Type |
Name |
Description |
| Rect |
bounds |
The bounds (view-relative region) to redraw. |
Overrides
Remove(View)
Declaration
public override void Remove(View view)
Parameters
| Type |
Name |
Description |
| View |
view |
|
Overrides
RemoveAll()
Declaration
public override void RemoveAll()
Overrides
RequestStop()
Stops and closes this
Toplevel. If this Toplevel is the top-most Toplevel,
RequestStop(Toplevel) will be called, causing the application to exit.
Declaration
public virtual void RequestStop()
RequestStop(Toplevel)
Stops and closes the
Toplevel specified by
top. If
top is the top-most Toplevel,
RequestStop(Toplevel) will be called, causing the application to exit.
Declaration
public virtual void RequestStop(Toplevel top)
Parameters
| Type |
Name |
Description |
| Toplevel |
top |
The toplevel to request stop. |
ShowChild(Toplevel)
Shows the Mdi child indicated by
top, setting it as
Current.
Declaration
public virtual bool ShowChild(Toplevel top = null)
Parameters
| Type |
Name |
Description |
| Toplevel |
top |
The Toplevel. |
Returns
| Type |
Description |
| System.Boolean |
true if the toplevel can be shown or false if not. |
WillPresent()
Declaration
public virtual void WillPresent()
Events
Activate
Declaration
public event Action<Toplevel> Activate
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
AllChildClosed
Invoked when the last child of the Toplevel
Application.RunState is closed from
by
Terminal.Gui.Application.End(Terminal.Gui.View).
Declaration
public event Action AllChildClosed
Event Type
| Type |
Description |
| System.Action |
|
AlternateBackwardKeyChanged
Declaration
public event Action<Key> AlternateBackwardKeyChanged
Event Type
| Type |
Description |
| System.Action<Key> |
|
AlternateForwardKeyChanged
Declaration
public event Action<Key> AlternateForwardKeyChanged
Event Type
| Type |
Description |
| System.Action<Key> |
|
ChildClosed
Invoked when a child of the Toplevel
Application.RunState is closed by
Terminal.Gui.Application.End(Terminal.Gui.View).
Declaration
public event Action<Toplevel> ChildClosed
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
ChildLoaded
Declaration
public event Action<Toplevel> ChildLoaded
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
ChildUnloaded
Declaration
public event Action<Toplevel> ChildUnloaded
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
Closed
Invoked when the Toplevel's
Application.RunState is closed by
Terminal.Gui.Application.End(Terminal.Gui.View).
Declaration
public event Action<Toplevel> Closed
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
Closing
Declaration
public event Action<ToplevelClosingEventArgs> Closing
Event Type
Deactivate
Declaration
public event Action<Toplevel> Deactivate
Event Type
| Type |
Description |
| System.Action<Toplevel> |
|
Loaded
Declaration
public event Action Loaded
Event Type
| Type |
Description |
| System.Action |
|
QuitKeyChanged
Invoked when the
QuitKey is changed.
Declaration
public event Action<Key> QuitKeyChanged
Event Type
| Type |
Description |
| System.Action<Key> |
|
Ready
Invoked when the Toplevel
MainLoop has started it's first iteration.
Subscribe to this event to perform tasks when the
Toplevel has been laid out and focus has been set.
changes.
A Ready event handler is a good place to finalize initialization after calling
Run(Func<Exception, Boolean>) on this Toplevel.
Declaration
public event Action Ready
Event Type
| Type |
Description |
| System.Action |
|
Resized
Invoked when the terminal has been resized. The new
Size of the terminal is provided.
Declaration
public event Action<Size> Resized
Event Type
| Type |
Description |
| System.Action<Size> |
|
Unloaded
Declaration
public event Action Unloaded
Event Type
| Type |
Description |
| System.Action |
|
Implements
System.IDisposable
System.ComponentModel.ISupportInitializeNotification
System.ComponentModel.ISupportInitialize