mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
32 lines
826 B
Python
32 lines
826 B
Python
from textual import layout, events
|
|
from textual.app import App, ComposeResult
|
|
from textual.widgets import Button
|
|
|
|
|
|
class ButtonsApp(App[str]):
|
|
def compose(self) -> ComposeResult:
|
|
yield layout.Vertical(
|
|
Button("default", id="foo"),
|
|
Button.success("success", id="bar"),
|
|
Button.warning("warning", id="baz"),
|
|
Button.error("error", id="baz"),
|
|
)
|
|
|
|
def handle_pressed(self, event: Button.Pressed) -> None:
|
|
self.app.bell()
|
|
|
|
async def on_key(self, event: events.Key) -> None:
|
|
await self.dispatch_key(event)
|
|
|
|
def key_d(self):
|
|
self.dark = not self.dark
|
|
|
|
|
|
app = ButtonsApp(
|
|
log_path="textual.log", css_path="buttons.css", watch_css=True, log_verbosity=2
|
|
)
|
|
|
|
if __name__ == "__main__":
|
|
result = app.run()
|
|
print(repr(result))
|