mirror of
https://github.com/TagStudioDev/TagStudio.git
synced 2026-07-22 05:23:59 +02:00
refactor: remove view parameters
This commit is contained in:
@@ -18,7 +18,6 @@ from tagstudio.qt.controllers.suggest_box import SuggestBox
|
||||
from tagstudio.qt.controllers.underlined_widget import UnderlinedWidget
|
||||
from tagstudio.qt.translations import Translations
|
||||
from tagstudio.qt.views.panel_modal import PanelModal, PanelWidget
|
||||
from tagstudio.qt.views.suggest_box_view import SuggestBoxView
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from tagstudio.qt.ts_qt import QtDriver
|
||||
@@ -27,8 +26,8 @@ logger = structlog.get_logger(__name__)
|
||||
|
||||
|
||||
class FieldSuggestBox(SuggestBox[BaseFieldTemplate]):
|
||||
def __init__(self, driver: "QtDriver", view: SuggestBoxView | None = None):
|
||||
super().__init__(driver, view=view or SuggestBoxView())
|
||||
def __init__(self, driver: "QtDriver", placeholder_text: str = ""):
|
||||
super().__init__(driver, placeholder_text)
|
||||
self._lib = self._driver.lib
|
||||
|
||||
# Context Menu Actions
|
||||
|
||||
@@ -46,7 +46,7 @@ class SuggestBox[T](QWidget):
|
||||
item_chosen = Signal(object)
|
||||
done = Signal()
|
||||
|
||||
def __init__(self, driver: "QtDriver", view: SuggestBoxView) -> None:
|
||||
def __init__(self, driver: "QtDriver", placeholder_text: str = "") -> None:
|
||||
super().__init__()
|
||||
self._driver = driver
|
||||
self._limit = 5
|
||||
@@ -55,10 +55,13 @@ class SuggestBox[T](QWidget):
|
||||
self.added: list[int] = []
|
||||
self.excluded: list[int] = []
|
||||
|
||||
self.setLayout(view)
|
||||
self.setLayout(SuggestBoxView(placeholder_text))
|
||||
self._connect_callbacks()
|
||||
|
||||
def hide_and_reset(self):
|
||||
def set_placeholder_text(self, text: str) -> None:
|
||||
self.layout().search_field.setPlaceholderText(text)
|
||||
|
||||
def hide_and_reset(self) -> None:
|
||||
self.hide()
|
||||
self.layout().search_field.setDisabled(True)
|
||||
self._on_shift_held(held=False)
|
||||
@@ -77,7 +80,7 @@ class SuggestBox[T](QWidget):
|
||||
|
||||
self.layout().search_field.shift_holding.connect(lambda held: self._on_shift_held(held))
|
||||
|
||||
def _on_shift_held(self, held: bool):
|
||||
def _on_shift_held(self, held: bool) -> None:
|
||||
if held:
|
||||
self._is_shift_held = True
|
||||
opacity_effect = QGraphicsOpacityEffect(self)
|
||||
@@ -192,7 +195,7 @@ class SuggestBox[T](QWidget):
|
||||
def _set_item_widget(self, item: T | None, index: int) -> None: # pyright: ignore[reportUnusedParameter]
|
||||
raise NotImplementedError()
|
||||
|
||||
def _editing_finished_callback(self):
|
||||
def _editing_finished_callback(self) -> None:
|
||||
if self.layout().search_field.text() == "":
|
||||
self.done.emit()
|
||||
self.hide_and_reset()
|
||||
|
||||
@@ -19,7 +19,6 @@ from tagstudio.qt.mixed.build_tag import BuildTagPanel
|
||||
from tagstudio.qt.mixed.tag_widget import TagWidget
|
||||
from tagstudio.qt.translations import Translations
|
||||
from tagstudio.qt.views.panel_modal import PanelModal, PanelWidget
|
||||
from tagstudio.qt.views.suggest_box_view import SuggestBoxView
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from tagstudio.qt.ts_qt import QtDriver
|
||||
@@ -28,8 +27,8 @@ logger = structlog.get_logger(__name__)
|
||||
|
||||
|
||||
class TagSuggestBox(SuggestBox[Tag]):
|
||||
def __init__(self, driver: "QtDriver", view: SuggestBoxView | None = None):
|
||||
super().__init__(driver, view=view or SuggestBoxView())
|
||||
def __init__(self, driver: "QtDriver", placeholder_text: str = "") -> None:
|
||||
super().__init__(driver, placeholder_text)
|
||||
self._driver = driver
|
||||
self._lib = self._driver.lib
|
||||
|
||||
|
||||
@@ -12,8 +12,7 @@ from tagstudio.qt.views.underlined_widget_view import UnderlinedWidgetView
|
||||
class UnderlinedWidget(QWidget):
|
||||
def __init__(self, widget: QWidget) -> None:
|
||||
super().__init__()
|
||||
view = UnderlinedWidgetView(widget)
|
||||
self.setLayout(view)
|
||||
self.setLayout(UnderlinedWidgetView(widget))
|
||||
|
||||
def toggle_underline(self, is_hidden: bool) -> None:
|
||||
self.layout().underline.setHidden(is_hidden)
|
||||
|
||||
@@ -20,7 +20,6 @@ from tagstudio.qt.mixed.file_attributes import FileAttributes
|
||||
from tagstudio.qt.resource_manager import ResourceManager
|
||||
from tagstudio.qt.translations import Translations
|
||||
from tagstudio.qt.views.stylesheets.stylesheets import button_style, preview_warning_style
|
||||
from tagstudio.qt.views.suggest_box_view import SuggestBoxView
|
||||
|
||||
if typing.TYPE_CHECKING:
|
||||
from tagstudio.qt.ts_qt import QtDriver
|
||||
@@ -39,12 +38,8 @@ class PreviewPanelView(QVBoxLayout):
|
||||
return " ".join([Translations[key], Translations["home.search.how_to_exit"]])
|
||||
|
||||
# Search/Create Boxes
|
||||
self.field_search_box = FieldSuggestBox(
|
||||
driver, view=SuggestBoxView(placeholder_text=ph_text("home.search_or_create_fields"))
|
||||
)
|
||||
self.tag_search_box = TagSuggestBox(
|
||||
driver, view=SuggestBoxView(placeholder_text=ph_text("home.search_or_create_tags"))
|
||||
)
|
||||
self.field_search_box = FieldSuggestBox(driver, ph_text("home.search_or_create_fields"))
|
||||
self.tag_search_box = TagSuggestBox(driver, ph_text("home.search_or_create_tags"))
|
||||
|
||||
self.preview_thumb = PreviewThumb(driver.lib, driver)
|
||||
self.file_attrs = FileAttributes(driver.lib, driver)
|
||||
|
||||
Reference in New Issue
Block a user