Skip to content

Commit d64f7ef

Browse files
committed
refactor: remove superfluos methods
1 parent a6ae806 commit d64f7ef

File tree

2 files changed

+27
-39
lines changed

2 files changed

+27
-39
lines changed

src/tagstudio/qt/helpers/qbutton_wrapper.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ class QPushButtonWrapper(QPushButton):
1313
the warning that is triggered by disconnecting a signal that is not currently connected.
1414
"""
1515

16-
# TODO: this is rarely set and used even more rarely -> remove once completely unneeded
1716
is_connected: bool
1817

1918
def __init__(self, *args, **kwargs):

src/tagstudio/qt/view/widgets/preview/preview_thumb_view.py

Lines changed: 27 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,11 @@
1010
import structlog
1111
from PIL import Image, UnidentifiedImageError
1212
from PySide6.QtCore import QBuffer, QByteArray, QSize, Qt
13-
from PySide6.QtGui import QAction, QMovie, QResizeEvent
14-
from PySide6.QtWidgets import QHBoxLayout, QLabel, QStackedLayout, QWidget
13+
from PySide6.QtGui import QAction, QMovie, QPixmap, QResizeEvent
14+
from PySide6.QtWidgets import QHBoxLayout, QLabel, QPushButton, QStackedLayout, QWidget
1515

1616
from tagstudio.core.library.alchemy.library import Library
1717
from tagstudio.core.media_types import MediaType
18-
from tagstudio.qt.helpers.qbutton_wrapper import QPushButtonWrapper
1918
from tagstudio.qt.helpers.rounded_pixmap_style import RoundedPixmapStyle
2019
from tagstudio.qt.platform_strings import open_file_str, trash_term
2120
from tagstudio.qt.translations import Translations
@@ -56,7 +55,7 @@ def __init__(self, library: Library, driver: "QtDriver") -> None:
5655
)
5756
self.__delete_action.triggered.connect(self._delete_action_callback)
5857

59-
self.__button_wrapper = QPushButtonWrapper()
58+
self.__button_wrapper = QPushButton()
6059
self.__button_wrapper.setMinimumSize(*self.__img_button_size)
6160
self.__button_wrapper.setFlat(True)
6261
self.__button_wrapper.setContextMenuPolicy(Qt.ContextMenuPolicy.ActionsContextMenu)
@@ -88,32 +87,18 @@ def __init__(self, library: Library, driver: "QtDriver") -> None:
8887
self.__media_player.addAction(self.__delete_action)
8988

9089
# Need to watch for this to resize the player appropriately.
91-
self.__media_player.player.hasVideoChanged.connect(self.__has_video_changed)
90+
self.__media_player.player.hasVideoChanged.connect(
91+
self.__media_player_video_changed_callback
92+
)
9293

9394
self.__mp_max_size = QSize(*self.__img_button_size)
9495

9596
self.__media_player_page = QWidget()
9697
self.__stacked_page_setup(self.__media_player_page, self.__media_player)
9798

9899
self.__thumb_renderer = ThumbRenderer(self.lib)
99-
self.__thumb_renderer.updated.connect(
100-
lambda ts, i, s: (
101-
self.__button_wrapper.setIcon(i),
102-
self.__set_mp_max_size(i.size()),
103-
)
104-
)
105-
self.__thumb_renderer.updated_ratio.connect(
106-
lambda ratio: (
107-
self.__set_image_ratio(ratio),
108-
self.__update_image_size(
109-
(
110-
self.size().width(),
111-
self.size().height(),
112-
),
113-
ratio,
114-
),
115-
)
116-
)
100+
self.__thumb_renderer.updated.connect(self.__thumb_renderer_updated_callback)
101+
self.__thumb_renderer.updated_ratio.connect(self.__thumb_renderer_updated_ratio_callback)
117102

118103
self.__image_layout.addWidget(self.preview_img_page)
119104
self.__image_layout.addWidget(self.__preview_gif_page)
@@ -135,26 +120,32 @@ def _delete_action_callback(self):
135120
def _button_wrapper_callback(self):
136121
raise NotImplementedError
137122

138-
def __set_mp_max_size(self, size: QSize) -> None:
139-
self.__mp_max_size = size
140-
141-
def __has_video_changed(self, video: bool) -> None:
123+
def __media_player_video_changed_callback(self, video: bool) -> None:
142124
self.__update_image_size((self.size().width(), self.size().height()))
143125

126+
def __thumb_renderer_updated_callback(
127+
self, _timestamp: float, img: QPixmap, _size: QSize, _path: Path
128+
) -> None:
129+
self.__button_wrapper.setIcon(img)
130+
self.__mp_max_size = img.size()
131+
132+
def __thumb_renderer_updated_ratio_callback(self, ratio: float) -> None:
133+
self.__image_ratio = ratio
134+
self.__update_image_size(
135+
(
136+
self.size().width(),
137+
self.size().height(),
138+
)
139+
)
140+
144141
def __stacked_page_setup(self, page: QWidget, widget: QWidget) -> None:
145142
layout = QHBoxLayout(page)
146143
layout.addWidget(widget)
147144
layout.setAlignment(widget, Qt.AlignmentFlag.AlignCenter)
148145
layout.setContentsMargins(0, 0, 0, 0)
149146
page.setLayout(layout)
150147

151-
def __set_image_ratio(self, ratio: float) -> None:
152-
self.__image_ratio = ratio
153-
154-
def __update_image_size(self, size: tuple[int, int], ratio: float | None = None) -> None:
155-
if ratio:
156-
self.__set_image_ratio(ratio)
157-
148+
def __update_image_size(self, size: tuple[int, int]) -> None:
158149
adj_width: float = size[0]
159150
adj_height: float = size[1]
160151
# Landscape
@@ -253,9 +244,7 @@ def _display_video(self, filepath: Path) -> dict[str, int]:
253244
try:
254245
success, size = self.__get_video_res(str(filepath))
255246
if success:
256-
self.__update_image_size(
257-
(size.width(), size.height()), size.width() / size.height()
258-
)
247+
self.__image_ratio = size.width() / size.height()
259248
self.resizeEvent(
260249
QResizeEvent(
261250
QSize(size.width(), size.height()),
@@ -296,7 +285,7 @@ def _display_animated_image(self, filepath: Path) -> dict[str, int] | None:
296285
stats["width"] = image.width
297286
stats["height"] = image.height
298287

299-
self.__update_image_size((image.width, image.height), image.width / image.height)
288+
self.__image_ratio = image.width / image.height
300289
if ext == ".apng":
301290
image_bytes_io = io.BytesIO()
302291
image.save(

0 commit comments

Comments
 (0)