mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2026-01-01 16:59:35 +01:00
40 lines
1.4 KiB
C#
40 lines
1.4 KiB
C#
using System.Data;
|
|
using Terminal.Gui;
|
|
|
|
namespace UICatalog.Scenarios {
|
|
[ScenarioMetadata (Name: "Generic", Description: "Generic sample - A template for creating new Scenarios")]
|
|
[ScenarioCategory ("Controls")]
|
|
public class MyScenario : Scenario {
|
|
public override void Init ()
|
|
{
|
|
// The base `Scenario.Init` implementation:
|
|
// - Calls `Application.Init ()`
|
|
// - Adds a full-screen Window to Application.Top with a title
|
|
// that reads "Press <hotkey> to Quit". Access this Window with `this.Win`.
|
|
// - Sets the Theme & the ColorScheme property of `this.Win` to `colorScheme`.
|
|
// To override this, implement an override of `Init`.
|
|
base.Init ();
|
|
// A common, alternate, implementation where `this.Win` is not used:
|
|
//Application.Init ();
|
|
//ConfigurationManager.Themes.Theme = Theme;
|
|
//ConfigurationManager.Apply ();
|
|
//Application.Top.ColorScheme = Colors.ColorSchemes [TopLevelColorScheme];
|
|
}
|
|
|
|
public override void Setup ()
|
|
{
|
|
// Put scenario code here (in a real app, this would be the code
|
|
// that would setup the app before `Application.Run` is called`).
|
|
// With a Scenario, after UI Catalog calls `Scenario.Setup` it calls
|
|
// `Scenario.Run` which calls `Application.Run`.
|
|
// Example:
|
|
var button = new Button ("Press me!") {
|
|
AutoSize = false,
|
|
X = Pos.Center (),
|
|
Y = Pos.Center (),
|
|
};
|
|
button.Clicked += () => MessageBox.Query (20, 7, "Hi", "Neat?", "Yes", "No");
|
|
Win.Add (button);
|
|
}
|
|
}
|
|
} |