Compare commits

..

No commits in common. "main" and "v1.0.0" have entirely different histories.
main ... v1.0.0

2 changed files with 13 additions and 5 deletions

View File

@ -1,6 +1,6 @@
[project]
name = "lottery-tui"
version = "1.0.1"
version = "1.0.0"
description = "A terminal user interface for lottery games."
authors = [{ name = "onyx-and-iris", email = "code@onyxandiris.online" }]
dependencies = ["textual>=8.0.0", "loguru>=0.7.3"]

View File

@ -1,5 +1,6 @@
from typing import NoReturn
from rich.text import Text
from textual.app import App, ComposeResult
from textual.containers import Container
from textual.events import Key
@ -26,8 +27,6 @@ class LotteryTUI(App):
('Set For Life', 'setforlife'),
('Thunderball', 'thunderball'),
],
value='lotto',
allow_blank=False,
id='lottery-select',
),
Button('Draw', id='draw-button'),
@ -47,13 +46,22 @@ class LotteryTUI(App):
def _draw_button_handler(self) -> None:
"""Handle the draw button press."""
if self._read_lottery_selection() is None:
self._update_result_label(
Text('Please select a lottery before drawing.', style='bold #ff8c42')
)
return
lottery_obj = request_lottery_obj(self._read_lottery_selection())
result = lottery_obj.draw()
self._update_result_label(str(result))
def _read_lottery_selection(self) -> SelectType:
def _read_lottery_selection(self) -> SelectType | None:
"""Read the selected lottery from the dropdown."""
return self.query_one('#lottery-select').value
select_widget = self.query_one('#lottery-select')
if select_widget.is_blank():
return None
return select_widget.value
def _update_result_label(self, message: str) -> None:
"""Update the result label with a new message."""