UICatalog.Scenario.html 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543
  1. <!DOCTYPE html>
  2. <!--[if IE]><![endif]-->
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  7. <title>Class Scenario
  8. </title>
  9. <meta name="viewport" content="width=device-width">
  10. <meta name="title" content="Class Scenario
  11. ">
  12. <meta name="generator" content="docfx 2.59.0.0">
  13. <link rel="shortcut icon" href="../../favicon.ico">
  14. <link rel="stylesheet" href="../../styles/docfx.vendor.css">
  15. <link rel="stylesheet" href="../../styles/docfx.css">
  16. <link rel="stylesheet" href="../../styles/main.css">
  17. <meta property="docfx:navrel" content="../../toc.html">
  18. <meta property="docfx:tocrel" content="toc.html">
  19. <meta property="docfx:rel" content="../../">
  20. </head>
  21. <body data-spy="scroll" data-target="#affix" data-offset="120">
  22. <div id="wrapper">
  23. <header>
  24. <nav id="autocollapse" class="navbar navbar-inverse ng-scope" role="navigation">
  25. <div class="container">
  26. <div class="navbar-header">
  27. <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
  28. <span class="sr-only">Toggle navigation</span>
  29. <span class="icon-bar"></span>
  30. <span class="icon-bar"></span>
  31. <span class="icon-bar"></span>
  32. </button>
  33. <a class="navbar-brand" href="../../index.html">
  34. <img id="logo" class="svg" src="../../images/logo48.png" alt="">
  35. </a>
  36. </div>
  37. <div class="collapse navbar-collapse" id="navbar">
  38. <form class="navbar-form navbar-right" role="search" id="search">
  39. <div class="form-group">
  40. <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
  41. </div>
  42. </form>
  43. </div>
  44. </div>
  45. </nav>
  46. <div class="subnav navbar navbar-default">
  47. <div class="container hide-when-search" id="breadcrumb">
  48. <ul class="breadcrumb">
  49. <li></li>
  50. </ul>
  51. </div>
  52. </div>
  53. </header>
  54. <div class="container body-content">
  55. <div id="search-results">
  56. <div class="search-list">Search Results for <span></span></div>
  57. <div class="sr-items">
  58. <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
  59. </div>
  60. <ul id="pagination" data-first="First" data-prev="Previous" data-next="Next" data-last="Last"></ul>
  61. </div>
  62. </div>
  63. <div role="main" class="container body-content hide-when-search">
  64. <div class="sidenav hide-when-search">
  65. <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
  66. <div class="sidetoggle collapse" id="sidetoggle">
  67. <div id="sidetoc"></div>
  68. </div>
  69. </div>
  70. <div class="article row grid-right">
  71. <div class="col-md-10">
  72. <article class="content wrap" id="_content" data-uid="UICatalog.Scenario">
  73. <h1 id="UICatalog_Scenario" data-uid="UICatalog.Scenario" class="text-break">Class Scenario
  74. </h1>
  75. <div class="markdown level0 summary"><p>Base class for each demo/scenario.</p>
  76. <p>
  77. To define a new scenario:
  78. <ol><li>Create a new <code>.cs</code> file in the <cs>Scenarios</cs> directory that derives from <a class="xref" href="UICatalog.Scenario.html">Scenario</a>.</li><li>Annotate the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> derived class with a <a class="xref" href="UICatalog.Scenario.ScenarioMetadata.html">Scenario.ScenarioMetadata</a> attribute specifying the scenario&apos;s name and description.</li><li>Add one or more <a class="xref" href="UICatalog.Scenario.ScenarioCategory.html">Scenario.ScenarioCategory</a> attributes to the class specifying which categories the scenario belongs to. If you don&apos;t specify a category the scenario will show up in &quot;_All&quot;.</li><li>Implement the <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Setup">Setup()</a> override which will be called when a user selects the scenario to run.</li><li>Optionally, implement the <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Init_Terminal_Gui_Toplevel_Terminal_Gui_ColorScheme_">Init(Toplevel, ColorScheme)</a> and/or <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Run">Run()</a> overrides to provide a custom implementation.</li></ol>
  79. </p>
  80. <p>
  81. The UI Catalog program uses reflection to find all scenarios and adds them to the
  82. ListViews. Press ENTER to run the selected scenario. Press CTRL-Q to exit it. /
  83. </p>
  84. </div>
  85. <div class="markdown level0 conceptual"></div>
  86. <div class="inheritance">
  87. <h5>Inheritance</h5>
  88. <div class="level0"><span class="xref">System.Object</span></div>
  89. <div class="level1"><span class="xref">Scenario</span></div>
  90. <div class="level2"><a class="xref" href="UICatalog.Scenarios.AllViewsTester.html">AllViewsTester</a></div>
  91. <div class="level2"><a class="xref" href="UICatalog.Scenarios.AutoSizeAndDirectionText.html">AutoSizeAndDirectionText</a></div>
  92. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BackgroundWorkerCollection.html">BackgroundWorkerCollection</a></div>
  93. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BasicColors.html">BasicColors</a></div>
  94. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Borders.html">Borders</a></div>
  95. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BordersComparisons.html">BordersComparisons</a></div>
  96. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BordersOnFrameView.html">BordersOnFrameView</a></div>
  97. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BordersOnToplevel.html">BordersOnToplevel</a></div>
  98. <div class="level2"><a class="xref" href="UICatalog.Scenarios.BordersOnWindow.html">BordersOnWindow</a></div>
  99. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Buttons.html">Buttons</a></div>
  100. <div class="level2"><a class="xref" href="UICatalog.Scenarios.CharacterMap.html">CharacterMap</a></div>
  101. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ClassExplorer.html">ClassExplorer</a></div>
  102. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Clipping.html">Clipping</a></div>
  103. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ComboBoxIteration.html">ComboBoxIteration</a></div>
  104. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ComputedLayout.html">ComputedLayout</a></div>
  105. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ContextMenus.html">ContextMenus</a></div>
  106. <div class="level2"><a class="xref" href="UICatalog.Scenarios.CsvEditor.html">CsvEditor</a></div>
  107. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Dialogs.html">Dialogs</a></div>
  108. <div class="level2"><a class="xref" href="UICatalog.Scenarios.DynamicMenuBar.html">DynamicMenuBar</a></div>
  109. <div class="level2"><a class="xref" href="UICatalog.Scenarios.DynamicStatusBar.html">DynamicStatusBar</a></div>
  110. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Editor.html">Editor</a></div>
  111. <div class="level2"><a class="xref" href="UICatalog.Scenarios.GraphViewExample.html">GraphViewExample</a></div>
  112. <div class="level2"><a class="xref" href="UICatalog.Scenarios.HexEditor.html">HexEditor</a></div>
  113. <div class="level2"><a class="xref" href="UICatalog.Scenarios.InteractiveTree.html">InteractiveTree</a></div>
  114. <div class="level2"><a class="xref" href="UICatalog.Scenarios.InvertColors.html">InvertColors</a></div>
  115. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Keys.html">Keys</a></div>
  116. <div class="level2"><a class="xref" href="UICatalog.Scenarios.LabelsAsLabels.html">LabelsAsLabels</a></div>
  117. <div class="level2"><a class="xref" href="UICatalog.Scenarios.LineViewExample.html">LineViewExample</a></div>
  118. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ListsAndCombos.html">ListsAndCombos</a></div>
  119. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ListViewWithSelection.html">ListViewWithSelection</a></div>
  120. <div class="level2"><a class="xref" href="UICatalog.Scenarios.MessageBoxes.html">MessageBoxes</a></div>
  121. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Mouse.html">Mouse</a></div>
  122. <div class="level2"><a class="xref" href="UICatalog.Scenarios.MultiColouredTable.html">MultiColouredTable</a></div>
  123. <div class="level2"><a class="xref" href="UICatalog.Scenarios.MyScenario.html">MyScenario</a></div>
  124. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Notepad.html">Notepad</a></div>
  125. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Progress.html">Progress</a></div>
  126. <div class="level2"><a class="xref" href="UICatalog.Scenarios.ProgressBarStyles.html">ProgressBarStyles</a></div>
  127. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Scrolling.html">Scrolling</a></div>
  128. <div class="level2"><a class="xref" href="UICatalog.Scenarios.SendKeys.html">SendKeys</a></div>
  129. <div class="level2"><a class="xref" href="UICatalog.Scenarios.SingleBackgroundWorker.html">SingleBackgroundWorker</a></div>
  130. <div class="level2"><a class="xref" href="UICatalog.Scenarios.SyntaxHighlighting.html">SyntaxHighlighting</a></div>
  131. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TableEditor.html">TableEditor</a></div>
  132. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TabViewExample.html">TabViewExample</a></div>
  133. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Text.html">Text</a></div>
  134. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TextAlignments.html">TextAlignments</a></div>
  135. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TextAlignmentsAndDirections.html">TextAlignmentsAndDirections</a></div>
  136. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TextFormatterDemo.html">TextFormatterDemo</a></div>
  137. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TextViewAutocompletePopup.html">TextViewAutocompletePopup</a></div>
  138. <div class="level2"><a class="xref" href="UICatalog.Scenarios.Threading.html">Threading</a></div>
  139. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TimeAndDate.html">TimeAndDate</a></div>
  140. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TreeUseCases.html">TreeUseCases</a></div>
  141. <div class="level2"><a class="xref" href="UICatalog.Scenarios.TreeViewFileSystem.html">TreeViewFileSystem</a></div>
  142. <div class="level2"><a class="xref" href="UICatalog.Scenarios.UnicodeInMenu.html">UnicodeInMenu</a></div>
  143. <div class="level2"><a class="xref" href="UICatalog.Scenarios.WindowsAndFrameViews.html">WindowsAndFrameViews</a></div>
  144. </div>
  145. <div classs="implements">
  146. <h5>Implements</h5>
  147. <div><span class="xref">System.IDisposable</span></div>
  148. </div>
  149. <div class="inheritedMembers">
  150. <h5>Inherited Members</h5>
  151. <div>
  152. <span class="xref">System.Object.Equals(System.Object)</span>
  153. </div>
  154. <div>
  155. <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
  156. </div>
  157. <div>
  158. <span class="xref">System.Object.GetHashCode()</span>
  159. </div>
  160. <div>
  161. <span class="xref">System.Object.GetType()</span>
  162. </div>
  163. <div>
  164. <span class="xref">System.Object.MemberwiseClone()</span>
  165. </div>
  166. <div>
  167. <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
  168. </div>
  169. </div>
  170. <h6><strong>Namespace</strong>: <a class="xref" href="UICatalog.html">UICatalog</a></h6>
  171. <h6><strong>Assembly</strong>: UICatalog.dll</h6>
  172. <h5 id="UICatalog_Scenario_syntax">Syntax</h5>
  173. <div class="codewrapper">
  174. <pre><code class="lang-csharp hljs">public class Scenario : IDisposable</code></pre>
  175. </div>
  176. <h5 id="UICatalog_Scenario_examples"><strong>Examples</strong></h5>
  177. <p>The example below is provided in the <code>Scenarios</code> directory as a generic sample that can be copied and re-named:</p>
  178. <pre><code>using Terminal.Gui;
  179. namespace UICatalog {
  180. [ScenarioMetadata (Name: &quot;Generic&quot;, Description: &quot;Generic sample - A template for creating new Scenarios&quot;)]
  181. [ScenarioCategory (&quot;Controls&quot;)]
  182. class MyScenario : Scenario {
  183. public override void Setup ()
  184. {
  185. // Put your scenario code here, e.g.
  186. Win.Add (new Button (&quot;Press me!&quot;) {
  187. X = Pos.Center (),
  188. Y = Pos.Center (),
  189. Clicked = () => MessageBox.Query (20, 7, &quot;Hi&quot;, &quot;Neat?&quot;, &quot;Yes&quot;, &quot;No&quot;)
  190. });
  191. }
  192. }
  193. }</code></pre>
  194. <h3 id="properties">Properties
  195. </h3>
  196. <a id="UICatalog_Scenario_Top_" data-uid="UICatalog.Scenario.Top*"></a>
  197. <h4 id="UICatalog_Scenario_Top" data-uid="UICatalog.Scenario.Top">Top</h4>
  198. <div class="markdown level1 summary"><p>The Top level for the <a class="xref" href="UICatalog.Scenario.html">Scenario</a>. This should be set to <a class="xref" href="../Terminal.Gui/Terminal.Gui.Application.html#Terminal_Gui_Application_Top">Top</a> in most cases.</p>
  199. </div>
  200. <div class="markdown level1 conceptual"></div>
  201. <h5 class="decalaration">Declaration</h5>
  202. <div class="codewrapper">
  203. <pre><code class="lang-csharp hljs">public Toplevel Top { get; set; }</code></pre>
  204. </div>
  205. <h5 class="propertyValue">Property Value</h5>
  206. <table class="table table-bordered table-striped table-condensed">
  207. <thead>
  208. <tr>
  209. <th>Type</th>
  210. <th>Description</th>
  211. </tr>
  212. </thead>
  213. <tbody>
  214. <tr>
  215. <td><a class="xref" href="../Terminal.Gui/Terminal.Gui.Toplevel.html">Toplevel</a></td>
  216. <td></td>
  217. </tr>
  218. </tbody>
  219. </table>
  220. <a id="UICatalog_Scenario_Win_" data-uid="UICatalog.Scenario.Win*"></a>
  221. <h4 id="UICatalog_Scenario_Win" data-uid="UICatalog.Scenario.Win">Win</h4>
  222. <div class="markdown level1 summary"><p>The Window for the <a class="xref" href="UICatalog.Scenario.html">Scenario</a>. This should be set within the <a class="xref" href="../Terminal.Gui/Terminal.Gui.Application.html#Terminal_Gui_Application_Top">Top</a> in most cases.</p>
  223. </div>
  224. <div class="markdown level1 conceptual"></div>
  225. <h5 class="decalaration">Declaration</h5>
  226. <div class="codewrapper">
  227. <pre><code class="lang-csharp hljs">public Window Win { get; set; }</code></pre>
  228. </div>
  229. <h5 class="propertyValue">Property Value</h5>
  230. <table class="table table-bordered table-striped table-condensed">
  231. <thead>
  232. <tr>
  233. <th>Type</th>
  234. <th>Description</th>
  235. </tr>
  236. </thead>
  237. <tbody>
  238. <tr>
  239. <td><a class="xref" href="../Terminal.Gui/Terminal.Gui.Window.html">Window</a></td>
  240. <td></td>
  241. </tr>
  242. </tbody>
  243. </table>
  244. <h3 id="methods">Methods
  245. </h3>
  246. <a id="UICatalog_Scenario_Dispose_" data-uid="UICatalog.Scenario.Dispose*"></a>
  247. <h4 id="UICatalog_Scenario_Dispose" data-uid="UICatalog.Scenario.Dispose">Dispose()</h4>
  248. <div class="markdown level1 summary"></div>
  249. <div class="markdown level1 conceptual"></div>
  250. <h5 class="decalaration">Declaration</h5>
  251. <div class="codewrapper">
  252. <pre><code class="lang-csharp hljs">public void Dispose()</code></pre>
  253. </div>
  254. <a id="UICatalog_Scenario_Dispose_" data-uid="UICatalog.Scenario.Dispose*"></a>
  255. <h4 id="UICatalog_Scenario_Dispose_System_Boolean_" data-uid="UICatalog.Scenario.Dispose(System.Boolean)">Dispose(Boolean)</h4>
  256. <div class="markdown level1 summary"></div>
  257. <div class="markdown level1 conceptual"></div>
  258. <h5 class="decalaration">Declaration</h5>
  259. <div class="codewrapper">
  260. <pre><code class="lang-csharp hljs">protected virtual void Dispose(bool disposing)</code></pre>
  261. </div>
  262. <h5 class="parameters">Parameters</h5>
  263. <table class="table table-bordered table-striped table-condensed">
  264. <thead>
  265. <tr>
  266. <th>Type</th>
  267. <th>Name</th>
  268. <th>Description</th>
  269. </tr>
  270. </thead>
  271. <tbody>
  272. <tr>
  273. <td><span class="xref">System.Boolean</span></td>
  274. <td><span class="parametername">disposing</span></td>
  275. <td></td>
  276. </tr>
  277. </tbody>
  278. </table>
  279. <a id="UICatalog_Scenario_GetCategories_" data-uid="UICatalog.Scenario.GetCategories*"></a>
  280. <h4 id="UICatalog_Scenario_GetCategories" data-uid="UICatalog.Scenario.GetCategories">GetCategories()</h4>
  281. <div class="markdown level1 summary"><p>Helper function to get the list of categories a <a class="xref" href="UICatalog.Scenario.html">Scenario</a> belongs to (defined in <a class="xref" href="UICatalog.Scenario.ScenarioCategory.html">Scenario.ScenarioCategory</a>)</p>
  282. </div>
  283. <div class="markdown level1 conceptual"></div>
  284. <h5 class="decalaration">Declaration</h5>
  285. <div class="codewrapper">
  286. <pre><code class="lang-csharp hljs">public List&lt;string&gt; GetCategories()</code></pre>
  287. </div>
  288. <h5 class="returns">Returns</h5>
  289. <table class="table table-bordered table-striped table-condensed">
  290. <thead>
  291. <tr>
  292. <th>Type</th>
  293. <th>Description</th>
  294. </tr>
  295. </thead>
  296. <tbody>
  297. <tr>
  298. <td><span class="xref">System.Collections.Generic.List</span>&lt;<span class="xref">System.String</span>&gt;</td>
  299. <td><p>list of category names</p>
  300. </td>
  301. </tr>
  302. </tbody>
  303. </table>
  304. <a id="UICatalog_Scenario_GetDerivedClasses_" data-uid="UICatalog.Scenario.GetDerivedClasses*"></a>
  305. <h4 id="UICatalog_Scenario_GetDerivedClasses__1" data-uid="UICatalog.Scenario.GetDerivedClasses``1">GetDerivedClasses&lt;T&gt;()</h4>
  306. <div class="markdown level1 summary"><p>Returns an instance of each <a class="xref" href="UICatalog.Scenario.html">Scenario</a> defined in the project.
  307. <a href="https://stackoverflow.com/questions/5411694/get-all-inherited-classes-of-an-abstract-class">https://stackoverflow.com/questions/5411694/get-all-inherited-classes-of-an-abstract-class</a></p>
  308. </div>
  309. <div class="markdown level1 conceptual"></div>
  310. <h5 class="decalaration">Declaration</h5>
  311. <div class="codewrapper">
  312. <pre><code class="lang-csharp hljs">public static List&lt;Type&gt; GetDerivedClasses&lt;T&gt;()</code></pre>
  313. </div>
  314. <h5 class="returns">Returns</h5>
  315. <table class="table table-bordered table-striped table-condensed">
  316. <thead>
  317. <tr>
  318. <th>Type</th>
  319. <th>Description</th>
  320. </tr>
  321. </thead>
  322. <tbody>
  323. <tr>
  324. <td><span class="xref">System.Collections.Generic.List</span>&lt;<span class="xref">System.Type</span>&gt;</td>
  325. <td></td>
  326. </tr>
  327. </tbody>
  328. </table>
  329. <h5 class="typeParameters">Type Parameters</h5>
  330. <table class="table table-bordered table-striped table-condensed">
  331. <thead>
  332. <tr>
  333. <th>Name</th>
  334. <th>Description</th>
  335. </tr>
  336. </thead>
  337. <tbody>
  338. <tr>
  339. <td><span class="parametername">T</span></td>
  340. <td></td>
  341. </tr>
  342. </tbody>
  343. </table>
  344. <a id="UICatalog_Scenario_GetDescription_" data-uid="UICatalog.Scenario.GetDescription*"></a>
  345. <h4 id="UICatalog_Scenario_GetDescription" data-uid="UICatalog.Scenario.GetDescription">GetDescription()</h4>
  346. <div class="markdown level1 summary"><p>Helper to get the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> Description (defined in <a class="xref" href="UICatalog.Scenario.ScenarioMetadata.html">Scenario.ScenarioMetadata</a>)</p>
  347. </div>
  348. <div class="markdown level1 conceptual"></div>
  349. <h5 class="decalaration">Declaration</h5>
  350. <div class="codewrapper">
  351. <pre><code class="lang-csharp hljs">public string GetDescription()</code></pre>
  352. </div>
  353. <h5 class="returns">Returns</h5>
  354. <table class="table table-bordered table-striped table-condensed">
  355. <thead>
  356. <tr>
  357. <th>Type</th>
  358. <th>Description</th>
  359. </tr>
  360. </thead>
  361. <tbody>
  362. <tr>
  363. <td><span class="xref">System.String</span></td>
  364. <td></td>
  365. </tr>
  366. </tbody>
  367. </table>
  368. <a id="UICatalog_Scenario_GetName_" data-uid="UICatalog.Scenario.GetName*"></a>
  369. <h4 id="UICatalog_Scenario_GetName" data-uid="UICatalog.Scenario.GetName">GetName()</h4>
  370. <div class="markdown level1 summary"><p>Helper to get the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> Name (defined in <a class="xref" href="UICatalog.Scenario.ScenarioMetadata.html">Scenario.ScenarioMetadata</a>)</p>
  371. </div>
  372. <div class="markdown level1 conceptual"></div>
  373. <h5 class="decalaration">Declaration</h5>
  374. <div class="codewrapper">
  375. <pre><code class="lang-csharp hljs">public string GetName()</code></pre>
  376. </div>
  377. <h5 class="returns">Returns</h5>
  378. <table class="table table-bordered table-striped table-condensed">
  379. <thead>
  380. <tr>
  381. <th>Type</th>
  382. <th>Description</th>
  383. </tr>
  384. </thead>
  385. <tbody>
  386. <tr>
  387. <td><span class="xref">System.String</span></td>
  388. <td></td>
  389. </tr>
  390. </tbody>
  391. </table>
  392. <a id="UICatalog_Scenario_Init_" data-uid="UICatalog.Scenario.Init*"></a>
  393. <h4 id="UICatalog_Scenario_Init_Terminal_Gui_Toplevel_Terminal_Gui_ColorScheme_" data-uid="UICatalog.Scenario.Init(Terminal.Gui.Toplevel,Terminal.Gui.ColorScheme)">Init(Toplevel, ColorScheme)</h4>
  394. <div class="markdown level1 summary"><p>Helper that provides the default <a class="xref" href="../Terminal.Gui/Terminal.Gui.Window.html">Window</a> implementation with a frame and
  395. label showing the name of the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> and logic to exit back to
  396. the Scenario picker UI.
  397. Override <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Init_Terminal_Gui_Toplevel_Terminal_Gui_ColorScheme_">Init(Toplevel, ColorScheme)</a> to provide any <a class="xref" href="../Terminal.Gui/Terminal.Gui.Toplevel.html">Toplevel</a> behavior needed.</p>
  398. </div>
  399. <div class="markdown level1 conceptual"></div>
  400. <h5 class="decalaration">Declaration</h5>
  401. <div class="codewrapper">
  402. <pre><code class="lang-csharp hljs">public virtual void Init(Toplevel top, ColorScheme colorScheme)</code></pre>
  403. </div>
  404. <h5 class="parameters">Parameters</h5>
  405. <table class="table table-bordered table-striped table-condensed">
  406. <thead>
  407. <tr>
  408. <th>Type</th>
  409. <th>Name</th>
  410. <th>Description</th>
  411. </tr>
  412. </thead>
  413. <tbody>
  414. <tr>
  415. <td><a class="xref" href="../Terminal.Gui/Terminal.Gui.Toplevel.html">Toplevel</a></td>
  416. <td><span class="parametername">top</span></td>
  417. <td><p>The Toplevel created by the UI Catalog host.</p>
  418. </td>
  419. </tr>
  420. <tr>
  421. <td><a class="xref" href="../Terminal.Gui/Terminal.Gui.ColorScheme.html">ColorScheme</a></td>
  422. <td><span class="parametername">colorScheme</span></td>
  423. <td><p>The colorscheme to use.</p>
  424. </td>
  425. </tr>
  426. </tbody>
  427. </table>
  428. <h5 id="UICatalog_Scenario_Init_Terminal_Gui_Toplevel_Terminal_Gui_ColorScheme__remarks">Remarks</h5>
  429. <div class="markdown level1 remarks"><p>
  430. The base implementation calls <a class="xref" href="../Terminal.Gui/Terminal.Gui.Application.html#Terminal_Gui_Application_Init_Terminal_Gui_ConsoleDriver_Terminal_Gui_IMainLoopDriver_">Init(ConsoleDriver, IMainLoopDriver)</a>, sets <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Top">Top</a> to the passed in <a class="xref" href="../Terminal.Gui/Terminal.Gui.Toplevel.html">Toplevel</a>, creates a <a class="xref" href="../Terminal.Gui/Terminal.Gui.Window.html">Window</a> for <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Win">Win</a> and adds it to <a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Top">Top</a>.
  431. </p>
  432. <p>
  433. Overrides that do not call the base.<a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Run">Run()</a>, must call <a class="xref" href="../Terminal.Gui/Terminal.Gui.Application.html#Terminal_Gui_Application_Init_Terminal_Gui_ConsoleDriver_Terminal_Gui_IMainLoopDriver_">Init(ConsoleDriver, IMainLoopDriver)</a> before creating any views or calling other Terminal.Gui APIs.
  434. </p>
  435. </div>
  436. <a id="UICatalog_Scenario_RequestStop_" data-uid="UICatalog.Scenario.RequestStop*"></a>
  437. <h4 id="UICatalog_Scenario_RequestStop" data-uid="UICatalog.Scenario.RequestStop">RequestStop()</h4>
  438. <div class="markdown level1 summary"><p>Stops the scenario. Override to change shutdown behavior for the <a class="xref" href="UICatalog.Scenario.html">Scenario</a>.</p>
  439. </div>
  440. <div class="markdown level1 conceptual"></div>
  441. <h5 class="decalaration">Declaration</h5>
  442. <div class="codewrapper">
  443. <pre><code class="lang-csharp hljs">public virtual void RequestStop()</code></pre>
  444. </div>
  445. <a id="UICatalog_Scenario_Run_" data-uid="UICatalog.Scenario.Run*"></a>
  446. <h4 id="UICatalog_Scenario_Run" data-uid="UICatalog.Scenario.Run">Run()</h4>
  447. <div class="markdown level1 summary"><p>Runs the <a class="xref" href="UICatalog.Scenario.html">Scenario</a>. Override to start the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> using a <a class="xref" href="../Terminal.Gui/Terminal.Gui.Toplevel.html">Toplevel</a> different than <code>Top</code>.</p>
  448. </div>
  449. <div class="markdown level1 conceptual"></div>
  450. <h5 class="decalaration">Declaration</h5>
  451. <div class="codewrapper">
  452. <pre><code class="lang-csharp hljs">public virtual void Run()</code></pre>
  453. </div>
  454. <h5 id="UICatalog_Scenario_Run_remarks">Remarks</h5>
  455. <div class="markdown level1 remarks"><p>Overrides that do not call the base.<a class="xref" href="UICatalog.Scenario.html#UICatalog_Scenario_Run">Run()</a>, must call <a class="xref" href="../Terminal.Gui/Terminal.Gui.Application.html#Terminal_Gui_Application_Shutdown">Shutdown()</a> before returning.</p>
  456. </div>
  457. <a id="UICatalog_Scenario_Setup_" data-uid="UICatalog.Scenario.Setup*"></a>
  458. <h4 id="UICatalog_Scenario_Setup" data-uid="UICatalog.Scenario.Setup">Setup()</h4>
  459. <div class="markdown level1 summary"><p>Override this to implement the <a class="xref" href="UICatalog.Scenario.html">Scenario</a> setup logic (create controls, etc...). </p>
  460. </div>
  461. <div class="markdown level1 conceptual"></div>
  462. <h5 class="decalaration">Declaration</h5>
  463. <div class="codewrapper">
  464. <pre><code class="lang-csharp hljs">public virtual void Setup()</code></pre>
  465. </div>
  466. <h5 id="UICatalog_Scenario_Setup_remarks">Remarks</h5>
  467. <div class="markdown level1 remarks"><p>This is typically the best place to put scenario logic code.</p>
  468. </div>
  469. <a id="UICatalog_Scenario_ToString_" data-uid="UICatalog.Scenario.ToString*"></a>
  470. <h4 id="UICatalog_Scenario_ToString" data-uid="UICatalog.Scenario.ToString">ToString()</h4>
  471. <div class="markdown level1 summary"></div>
  472. <div class="markdown level1 conceptual"></div>
  473. <h5 class="decalaration">Declaration</h5>
  474. <div class="codewrapper">
  475. <pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
  476. </div>
  477. <h5 class="returns">Returns</h5>
  478. <table class="table table-bordered table-striped table-condensed">
  479. <thead>
  480. <tr>
  481. <th>Type</th>
  482. <th>Description</th>
  483. </tr>
  484. </thead>
  485. <tbody>
  486. <tr>
  487. <td><span class="xref">System.String</span></td>
  488. <td></td>
  489. </tr>
  490. </tbody>
  491. </table>
  492. <h5 class="overrides">Overrides</h5>
  493. <div><span class="xref">System.Object.ToString()</span></div>
  494. <h3 id="implements">Implements</h3>
  495. <div>
  496. <span class="xref">System.IDisposable</span>
  497. </div>
  498. </article>
  499. </div>
  500. <div class="hidden-sm col-md-2" role="complementary">
  501. <div class="sideaffix">
  502. <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
  503. <h5>In This Article</h5>
  504. <div></div>
  505. </nav>
  506. </div>
  507. </div>
  508. </div>
  509. </div>
  510. <footer>
  511. <div class="grad-bottom"></div>
  512. <div class="footer">
  513. <div class="container">
  514. <span class="pull-right">
  515. <a href="#top">Back to top</a>
  516. </span>
  517. <span>Generated by <strong>DocFX</strong></span>
  518. </div>
  519. </div>
  520. </footer>
  521. </div>
  522. <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
  523. <script type="text/javascript" src="../../styles/docfx.js"></script>
  524. <script type="text/javascript" src="../../styles/main.js"></script>
  525. </body>
  526. </html>