# ToDo:
- move to pyside6
- favourite_label is actually a TwoStateIconLabel
- error_label is actually a PopupTextLabel
- make all widgets to have:
    - min_height
    - min_width
    - min_size
    - max_height
    - max_width
    - max_size
    - policy
    - margins (in abstract frame)
    - padding (in abstract frame)
    - alignment (in abstract frame)
- make popup to be generic (configure different buttons (ok, cancel, no, yes)
- crete generic animation class to create simple animations
