Skip to content

Commit 4e9ca59

Browse files
committed
feat: Add PaletteHeader for a nice header ;)
1 parent 51a59fc commit 4e9ca59

File tree

1 file changed

+17
-3
lines changed

1 file changed

+17
-3
lines changed

termtyper/ui/screens/palette.py

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
from textual.app import ComposeResult
33
from textual.binding import Binding
44
from textual.screen import Screen
5+
from textual.widgets import Label
56
from termtyper.ui.widgets import (
67
PaletteList,
78
PaletteInput,
@@ -16,8 +17,17 @@ class PaletteMenu(Vertical):
1617
width: 60%;
1718
height: 50%;
1819
layout: grid;
19-
grid-size: 1 2;
20-
grid-rows: 1 1fr;
20+
grid-size: 1 3;
21+
grid-rows: 1 auto 1fr;
22+
}
23+
"""
24+
25+
26+
class PaletteHeader(Label):
27+
DEFAULT_CSS = """
28+
PaletteHeader {
29+
content-align: center middle;
30+
width: 100%;
2131
}
2232
"""
2333

@@ -37,6 +47,7 @@ class PaletteScreen(Screen):
3747

3848
palette_list: PaletteList
3949
palette_icon: str
50+
palette_header: str
4051

4152
def action_next_option(self):
4253
self.query_one(PaletteList).action_cursor_down()
@@ -46,15 +57,18 @@ def action_prev_option(self):
4657

4758
def compose(self) -> ComposeResult:
4859
with PaletteMenu():
60+
yield PaletteHeader(self.palette_header)
4961
yield PaletteInput()
5062
yield self.palette_list
5163

5264

5365
class LanguagePaletteScreen(PaletteScreen):
5466
palette_list = LanguagePaletteList()
55-
palette_icon = "  "
67+
palette_icon = "  "
68+
palette_header = f"{palette_icon} language"
5669

5770

5871
class ThemePaletteScreen(PaletteScreen):
5972
palette_list = ThemePaletteList()
6073
palette_icon = "  "
74+
palette_header = f"{palette_icon} themes"

0 commit comments

Comments
 (0)