2021-12-07 09:51:53 +01:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
|
|
|
|
from typing import Union
|
|
|
|
|
2021-12-22 17:05:53 +01:00
|
|
|
import wx
|
|
|
|
|
2021-12-07 09:51:53 +01:00
|
|
|
from Items import Item
|
2021-12-22 17:05:53 +01:00
|
|
|
|
2021-12-07 09:51:53 +01:00
|
|
|
|
2021-12-26 15:18:47 +01:00
|
|
|
class Channel:
|
2021-12-22 17:05:53 +01:00
|
|
|
def __init__(self,
|
|
|
|
provider_name: str,
|
|
|
|
feed: str,
|
2022-01-06 13:14:57 +01:00
|
|
|
logo: wx.Bitmap,
|
|
|
|
name: str) -> None:
|
|
|
|
self.m_logo = logo
|
2021-12-07 09:51:53 +01:00
|
|
|
self.m_provider_name = provider_name
|
2022-01-06 13:14:57 +01:00
|
|
|
self.m_name = name
|
2021-12-07 09:51:53 +01:00
|
|
|
self.m_feed = feed
|
2021-12-07 17:58:52 +01:00
|
|
|
self.m_items: Union[list[Item], None] = None
|
2021-12-22 17:05:53 +01:00
|
|
|
|
|
|
|
def get_logo_as_bitmap(self) -> wx.Bitmap:
|
2021-12-28 17:30:36 +01:00
|
|
|
return self.m_logo
|
2021-12-07 09:51:53 +01:00
|
|
|
|
|
|
|
def get_feed(self) -> str:
|
|
|
|
return self.m_feed
|
|
|
|
|
|
|
|
def get_items(self) -> Union[list[Item], None]:
|
|
|
|
return self.m_items
|
|
|
|
|
2022-01-06 13:14:57 +01:00
|
|
|
def get_name(self) -> str:
|
|
|
|
return self.m_name
|
|
|
|
|
2021-12-07 09:51:53 +01:00
|
|
|
def get_provider_name(self) -> str:
|
|
|
|
return self.m_provider_name
|
|
|
|
|
|
|
|
def parse_feed(self) -> Union[list[Item], None]:
|
|
|
|
pass
|
2021-12-19 14:19:27 +01:00
|
|
|
|
|
|
|
def wait(self) -> bool:
|
|
|
|
return False
|
2021-12-28 18:42:11 +01:00
|
|
|
|
|
|
|
def get_latest_item(self) -> Item:
|
2022-01-06 13:14:57 +01:00
|
|
|
return self.m_items[0] # type: ignore
|
2021-12-28 18:42:11 +01:00
|
|
|
|
|
|
|
def set_items(self, items: list[Item]) -> None:
|
|
|
|
self.m_items = items
|
|
|
|
|
|
|
|
def set_logo(self, logo: wx.Bitmap) -> None:
|
|
|
|
self.m_logo = logo
|