mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-24 21:04:40 +01:00
change change view button
This commit is contained in:
parent
bc6bd4be29
commit
c800e35f3f
2 changed files with 25 additions and 4 deletions
|
|
@ -178,6 +178,7 @@ class OverviewWidget(QtWidgets.QFrame):
|
|||
|
||||
self._create_btn = create_btn
|
||||
self._delete_btn = delete_btn
|
||||
self._change_view_btn = change_view_btn
|
||||
|
||||
self._product_attributes_widget = product_attributes_widget
|
||||
self._create_widget = create_widget
|
||||
|
|
@ -415,6 +416,7 @@ class OverviewWidget(QtWidgets.QFrame):
|
|||
|
||||
old_view = self._get_current_view()
|
||||
new_view = self._get_view_by_idx(new_idx)
|
||||
is_list_view = isinstance(new_view, InstanceListView)
|
||||
|
||||
if not new_view.refreshed:
|
||||
new_view.refresh()
|
||||
|
|
@ -429,6 +431,9 @@ class OverviewWidget(QtWidgets.QFrame):
|
|||
instance_ids, context_selected, convertor_identifiers
|
||||
)
|
||||
|
||||
self._change_view_btn.set_view_type(
|
||||
"card" if is_list_view else "list"
|
||||
)
|
||||
self._product_views_layout.setCurrentIndex(new_idx)
|
||||
|
||||
self._on_product_change()
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ from ayon_core.tools.flickcharm import FlickCharm
|
|||
from ayon_core.tools.utils import (
|
||||
IconButton,
|
||||
PixmapLabel,
|
||||
get_qt_icon,
|
||||
)
|
||||
from ayon_core.tools.publisher.constants import ResetKeySequence
|
||||
|
||||
|
|
@ -287,12 +288,27 @@ class RemoveInstanceBtn(PublishIconBtn):
|
|||
self.setToolTip("Remove selected instances")
|
||||
|
||||
|
||||
class ChangeViewBtn(PublishIconBtn):
|
||||
class ChangeViewBtn(IconButton):
|
||||
"""Create toggle view button."""
|
||||
def __init__(self, parent=None):
|
||||
icon_path = get_icon_path("change_view")
|
||||
super().__init__(icon_path, parent)
|
||||
self.setToolTip("Swap between views")
|
||||
super().__init__(parent)
|
||||
self.set_view_type("list")
|
||||
|
||||
def set_view_type(self, view_type):
|
||||
if view_type == "list":
|
||||
# icon_name = "data_table"
|
||||
icon_name = "view_agenda"
|
||||
tooltip = "Change to list view"
|
||||
else:
|
||||
icon_name = "dehaze"
|
||||
tooltip = "Change to card view"
|
||||
|
||||
icon = get_qt_icon({
|
||||
"type": "material-symbols",
|
||||
"name": icon_name,
|
||||
})
|
||||
self.setIcon(icon)
|
||||
self.setToolTip(tooltip)
|
||||
|
||||
|
||||
class AbstractInstanceView(QtWidgets.QWidget):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue