move asset icon functions to assets widget

This commit is contained in:
Jakub Trllo 2024-02-13 15:03:42 +01:00
parent c24acc49f3
commit 5a185f4a2a
4 changed files with 59 additions and 66 deletions

View file

@ -5,13 +5,13 @@ from qtpy import QtWidgets, QtCore, QtGui
from ayon_core.tools.utils import (
PlaceholderLineEdit,
RecursiveSortFilterProxyModel,
get_asset_icon,
)
from ayon_core.tools.utils.assets_widget import (
SingleSelectAssetsWidget,
ASSET_ID_ROLE,
ASSET_NAME_ROLE,
ASSET_PATH_ROLE,
get_asset_icon,
)

View file

@ -37,10 +37,6 @@ from .lib import (
get_qt_app,
get_ayon_qt_app,
get_openpype_qt_app,
get_asset_icon,
get_asset_icon_by_name,
get_asset_icon_name_from_doc,
get_asset_icon_color_from_doc,
)
from .models import (
@ -100,10 +96,6 @@ __all__ = (
"get_qt_app",
"get_ayon_qt_app",
"get_openpype_qt_app",
"get_asset_icon",
"get_asset_icon_by_name",
"get_asset_icon_name_from_doc",
"get_asset_icon_color_from_doc",
"RecursiveSortFilterProxyModel",

View file

@ -10,6 +10,7 @@ from ayon_core.client import (
)
from ayon_core.style import (
get_default_tools_icon_color,
get_default_entity_icon_color,
)
from ayon_core.tools.flickcharm import FlickCharm
@ -21,7 +22,7 @@ from .widgets import PlaceholderLineEdit
from .models import RecursiveSortFilterProxyModel
from .lib import (
DynamicQThread,
get_asset_icon
get_qta_icon_by_name_and_color
)
ASSET_ID_ROLE = QtCore.Qt.UserRole + 1
@ -31,6 +32,62 @@ ASSET_UNDERLINE_COLORS_ROLE = QtCore.Qt.UserRole + 4
ASSET_PATH_ROLE = QtCore.Qt.UserRole + 5
def get_default_asset_icon_name(has_children):
if has_children:
return "fa.folder"
return "fa.folder-o"
def get_asset_icon_color_from_doc(asset_doc):
if asset_doc:
return asset_doc["data"].get("color")
return None
def get_asset_icon_name_from_doc(asset_doc):
if asset_doc:
return asset_doc["data"].get("icon")
return None
def get_asset_icon_color(asset_doc):
icon_color = get_asset_icon_color_from_doc(asset_doc)
if icon_color:
return icon_color
return get_default_entity_icon_color()
def get_asset_icon_by_name(icon_name, icon_color, has_children=False):
if not icon_name:
icon_name = get_default_asset_icon_name(has_children)
if icon_color:
icon_color = QtGui.QColor(icon_color)
else:
icon_color = get_default_entity_icon_color()
icon = get_qta_icon_by_name_and_color(icon_name, icon_color)
if icon is not None:
return icon
return get_qta_icon_by_name_and_color(
get_default_asset_icon_name(has_children),
icon_color
)
def get_asset_icon_name(asset_doc, has_children=True):
icon_name = get_asset_icon_name_from_doc(asset_doc)
if icon_name:
return icon_name
return get_default_asset_icon_name(has_children)
def get_asset_icon(asset_doc, has_children=False):
icon_name = get_asset_icon_name(asset_doc, has_children)
icon_color = get_asset_icon_color(asset_doc)
return get_qta_icon_by_name_and_color(icon_name, icon_color)
class _AssetsView(TreeViewSpinner, DeselectableTreeView):
"""Asset items view.

View file

@ -234,62 +234,6 @@ def get_qta_icon_by_name_and_color(icon_name, icon_color):
return icon
def get_asset_icon_name(asset_doc, has_children=True):
icon_name = get_asset_icon_name_from_doc(asset_doc)
if icon_name:
return icon_name
return get_default_asset_icon_name(has_children)
def get_asset_icon_color(asset_doc):
icon_color = get_asset_icon_color_from_doc(asset_doc)
if icon_color:
return icon_color
return get_default_entity_icon_color()
def get_default_asset_icon_name(has_children):
if has_children:
return "fa.folder"
return "fa.folder-o"
def get_asset_icon_name_from_doc(asset_doc):
if asset_doc:
return asset_doc["data"].get("icon")
return None
def get_asset_icon_color_from_doc(asset_doc):
if asset_doc:
return asset_doc["data"].get("color")
return None
def get_asset_icon_by_name(icon_name, icon_color, has_children=False):
if not icon_name:
icon_name = get_default_asset_icon_name(has_children)
if icon_color:
icon_color = QtGui.QColor(icon_color)
else:
icon_color = get_default_entity_icon_color()
icon = get_qta_icon_by_name_and_color(icon_name, icon_color)
if icon is not None:
return icon
return get_qta_icon_by_name_and_color(
get_default_asset_icon_name(has_children),
icon_color
)
def get_asset_icon(asset_doc, has_children=False):
icon_name = get_asset_icon_name(asset_doc, has_children)
icon_color = get_asset_icon_color(asset_doc)
return get_qta_icon_by_name_and_color(icon_name, icon_color)
def get_default_task_icon(color=None):
if color is None:
color = get_default_entity_icon_color()