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