IToplevelTransitionManager.cs 725 B

12345678910111213141516171819202122
  1. namespace Terminal.Gui.App;
  2. /// <summary>
  3. /// Interface for class that handles bespoke behaviours that occur when application
  4. /// top level changes.
  5. /// </summary>
  6. public interface IToplevelTransitionManager
  7. {
  8. /// <summary>
  9. /// Raises the <see cref="Toplevel.Ready"/> event on tahe current top level
  10. /// if it has not been raised before now.
  11. /// </summary>
  12. /// <param name="app"></param>
  13. void RaiseReadyEventIfNeeded (IApplication? app);
  14. /// <summary>
  15. /// Handles any state change needed when the application top changes e.g.
  16. /// setting redraw flags
  17. /// </summary>
  18. /// <param name="app"></param>
  19. void HandleTopMaybeChanging (IApplication? app);
  20. }