cast/Channel/__init__.py

53 lines
1.4 KiB
Python
Raw Normal View History

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 requests
import wx
import io
2021-12-07 09:51:53 +01:00
from Items import Item
2021-12-22 17:05:53 +01:00
default_logo = "https://upload.wikimedia.org/wikipedia/commons/"
default_logo += "thumb/f/fd/Cartoon_Hand_Playing_Multiple_Online_Videos.svg/"
default_logo += "480px-Cartoon_Hand_Playing_Multiple_Online_Videos.svg.png"
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,
logo_url: str = default_logo) -> None:
2021-12-07 09:51:53 +01:00
self.m_provider_name = provider_name
self.m_feed = feed
self.m_items: Union[list[Item], None] = None
2021-12-22 17:05:53 +01:00
res = requests.get(logo_url)
content = res.content
content_bytes = io.BytesIO(content)
self.m_logo = wx.Image(content_bytes,
type=wx.BITMAP_TYPE_ANY,
index=-1)
def get_logo_as_bitmap(self) -> wx.Bitmap:
"""
[TODO:description]
:rtype wx.Image: [TODO:description]
"""
return wx.Bitmap(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
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