TopLevelNoWindowBug.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. using Terminal.Gui;
  2. namespace UICatalog {
  3. [ScenarioMetadata (Name: "TopLevelNoWindowBug", Description: "Illustrates that not having a Window causes MenuBar to misbehave. #437")]
  4. [ScenarioCategory ("Bug Repro")]
  5. class TopLevelNoWindowBug : Scenario {
  6. public override void Run ()
  7. {
  8. Top = new Toplevel (new Rect (0, 0, Application.Driver.Cols, Application.Driver.Rows));
  9. var menu = new MenuBar (new MenuBarItem [] {
  10. new MenuBarItem ("_Файл", new MenuItem [] {
  11. new MenuItem ("_Создать", "Creates new file", null),
  12. new MenuItem ("_Открыть", "", null),
  13. new MenuItem ("Со_хранить", "", null),
  14. new MenuItem ("_Выход", "", () => Application.RequestStop())
  15. }),
  16. new MenuBarItem ("_Edit", new MenuItem [] {
  17. new MenuItem ("_Copy", "", null),
  18. new MenuItem ("C_ut", "", null),
  19. new MenuItem ("_Paste", "", null)
  20. })
  21. });
  22. Top.Add (menu);
  23. // BUGBUG: #437 This being commented out causes menu to mis-behave
  24. //var win = new Window ($"Scenario: {GetName ()}") {
  25. // X = 0,
  26. // Y = 1,
  27. // Width = Dim.Fill (),
  28. // Height = Dim.Fill ()
  29. //};
  30. //ntop.Add (win);
  31. base.Run ();
  32. }
  33. }
  34. }