Files
textual/tests/snapshot_tests/snapshot_apps/screen_switch.py
Will McGugan f450d98e3e snapshot
2023-02-09 11:55:36 +00:00

39 lines
838 B
Python

from textual.app import App, ComposeResult
from textual.screen import Screen
from textual.widgets import Static, Header, Footer
class ScreenA(Screen):
BINDINGS = [("b", "switch_to_b", "Switch to screen B")]
def compose(self) -> ComposeResult:
yield Header()
yield Static("A")
yield Footer()
def action_switch_to_b(self):
self.app.switch_screen(ScreenB())
class ScreenB(Screen):
def compose(self) -> ComposeResult:
yield Header()
yield Static("B")
yield Footer()
class ModalApp(App):
BINDINGS = [("a", "push_a", "Push screen A")]
def compose(self) -> ComposeResult:
yield Header()
yield Footer()
def action_push_a(self) -> None:
self.push_screen(ScreenA())
if __name__ == "__main__":
app = ModalApp()
app.run()