mirror of
https://github.com/sstent/AICyclingCoach.git
synced 2025-12-06 08:02:05 +00:00
49 lines
1.4 KiB
Python
49 lines
1.4 KiB
Python
"""
|
|
Stub views for Plans, Rules, and Routes.
|
|
These can be expanded later following the same async loading pattern.
|
|
"""
|
|
from textual.app import ComposeResult
|
|
from textual.widgets import Static
|
|
from tui.views.base_view import BaseView
|
|
|
|
|
|
class PlanView(BaseView):
|
|
"""Training plan management view."""
|
|
|
|
def compose(self) -> ComposeResult:
|
|
"""Create plan view layout."""
|
|
yield Static("Training Plans")
|
|
yield Static("Coming soon - this will show your training plans")
|
|
|
|
def load_data_if_needed(self) -> None:
|
|
"""Load plan data if needed."""
|
|
# Implement similar to WorkoutView when ready
|
|
pass
|
|
|
|
|
|
class RuleView(BaseView):
|
|
"""Training rule management view."""
|
|
|
|
def compose(self) -> ComposeResult:
|
|
"""Create rule view layout."""
|
|
yield Static("Training Rules")
|
|
yield Static("Coming soon - this will show your training rules")
|
|
|
|
def load_data_if_needed(self) -> None:
|
|
"""Load rule data if needed."""
|
|
# Implement similar to WorkoutView when ready
|
|
pass
|
|
|
|
|
|
class RouteView(BaseView):
|
|
"""Route management view."""
|
|
|
|
def compose(self) -> ComposeResult:
|
|
"""Create route view layout."""
|
|
yield Static("Routes")
|
|
yield Static("Coming soon - this will show your routes")
|
|
|
|
def load_data_if_needed(self) -> None:
|
|
"""Load route data if needed."""
|
|
# Implement similar to WorkoutView when ready
|
|
pass |