mirror of
https://github.com/Textualize/textual.git
synced 2025-10-17 02:38:12 +03:00
repaired scroll view
This commit is contained in:
@@ -1,25 +0,0 @@
|
||||
from textual import events
|
||||
from textual.app import App
|
||||
from textual.views import DockView
|
||||
from textual.widgets import Header, Help, Footer, Placeholder, MarkdownViewer
|
||||
|
||||
|
||||
class MyApp(App):
|
||||
async def on_load(self, event: events.Load) -> None:
|
||||
await self.bind("q, ctrl+c", "quit")
|
||||
await self.bind("b", "view.toggle('sidebar')", "Toggle Sidebar")
|
||||
await self.bind("h", "view.help")
|
||||
|
||||
async def on_startup(self, event: events.Startup) -> None:
|
||||
view = await self.push_view(DockView())
|
||||
await view.dock(Header(), edge="top")
|
||||
await view.dock(Footer("q", "b", "h"), edge="bottom")
|
||||
await view.dock(Placeholder(), edge="left")
|
||||
await view.dock(MarkdownViewer("readme.md"))
|
||||
|
||||
async def action_help(self) -> None:
|
||||
await self.push_view(Help())
|
||||
|
||||
|
||||
app = MyApp(title="Simple Textual App")
|
||||
app.run()
|
||||
@@ -2,23 +2,37 @@ from rich.markdown import Markdown
|
||||
|
||||
from textual import events
|
||||
from textual.app import App
|
||||
from textual.widgets.header import Header
|
||||
from textual.widgets.placeholder import Placeholder
|
||||
from textual.widgets.scroll_view import ScrollView
|
||||
|
||||
with open("richreadme.md", "rt") as fh:
|
||||
readme = Markdown(fh.read(), hyperlinks=True, code_theme="fruity")
|
||||
from textual.view import DockView
|
||||
from textual.widgets import Header, Footer, Placeholder, ScrollView
|
||||
|
||||
|
||||
class MyApp(App):
|
||||
"""An example of a very simple Textual App"""
|
||||
|
||||
KEYS = {"q": "quit", "ctrl+c": "quit", "b": "view.toggle('left')"}
|
||||
async def on_load(self, event: events.Load) -> None:
|
||||
await self.bind("q,ctrl+c", "quit")
|
||||
await self.bind("b", "view.toggle('sidebar')")
|
||||
|
||||
async def on_startup(self, event: events.Startup) -> None:
|
||||
await self.view.mount_all(
|
||||
header=Header(self.title), left=Placeholder(), body=ScrollView(readme)
|
||||
)
|
||||
view = await self.push_view(DockView())
|
||||
header = Header(self.title)
|
||||
footer = Footer()
|
||||
sidebar = Placeholder(name="sidebar")
|
||||
|
||||
with open("richreadme.md", "rt") as fh:
|
||||
readme = Markdown(fh.read(), hyperlinks=True)
|
||||
|
||||
body = ScrollView(readme)
|
||||
|
||||
footer.add_key("b", "Toggle sidebar")
|
||||
footer.add_key("q", "Quit")
|
||||
|
||||
await view.dock(header, edge="top")
|
||||
await view.dock(footer, edge="bottom")
|
||||
await view.dock(sidebar, edge="left", size=30)
|
||||
await view.dock(body, edge="right")
|
||||
self.require_layout()
|
||||
|
||||
|
||||
app = MyApp()
|
||||
app = MyApp(title="Simple App")
|
||||
app.run()
|
||||
|
||||
Reference in New Issue
Block a user