2026-02-16
This commit is contained in:
@@ -339,6 +339,25 @@ def get_active_asset_by_type(asset_type="model"):
|
||||
return None
|
||||
|
||||
|
||||
def get_equivalent_datablock(asset_type, name):
|
||||
"""Get the datablock that blocks us from renaming the asset, and rename it to something a bit else."""
|
||||
if asset_type == "MATERIAL":
|
||||
return bpy.data.materials.get(name)
|
||||
elif asset_type == "OBJECT":
|
||||
return bpy.data.objects.get(name)
|
||||
elif asset_type == "SCENE":
|
||||
return bpy.data.scenes.get(name)
|
||||
elif asset_type == "HDR":
|
||||
return bpy.data.images.get(name)
|
||||
elif asset_type == "BRUSH":
|
||||
return bpy.data.brushes.get(name)
|
||||
elif asset_type == "NODEGROUP":
|
||||
return bpy.data.node_groups.get(name)
|
||||
elif asset_type == "ADDON":
|
||||
return bpy.data.addons.get(name)
|
||||
return None
|
||||
|
||||
|
||||
def get_active_asset():
|
||||
scene = bpy.context.scene
|
||||
ui_props = bpy.context.window_manager.blenderkitUI
|
||||
@@ -970,12 +989,17 @@ def get_dimensions(obs):
|
||||
return dim, bbmin, bbmax
|
||||
|
||||
|
||||
def get_headers(api_key: str = "") -> dict[str, str]:
|
||||
def get_simple_headers() -> dict[str, str]:
|
||||
headers = {
|
||||
"accept": "application/json",
|
||||
"Platform-Version": platform.platform(),
|
||||
"addon-version": f"{global_vars.VERSION[0]}.{global_vars.VERSION[1]}.{global_vars.VERSION[2]}.{global_vars.VERSION[3]}",
|
||||
}
|
||||
return headers
|
||||
|
||||
|
||||
def get_headers(api_key: str = "") -> dict[str, str]:
|
||||
headers = get_simple_headers()
|
||||
if api_key != "":
|
||||
headers["Authorization"] = f"Bearer {api_key}"
|
||||
|
||||
@@ -1129,6 +1153,18 @@ def name_update(props, context=None):
|
||||
asset = get_active_asset()
|
||||
if asset.name != fname: # Here we actually rename assets datablocks
|
||||
asset.name = fname # change name of active object to upload Name
|
||||
# we need to set the name back for proper appending later
|
||||
if asset.name != fname and re.search(r"\.\d+$", asset.name) is not None:
|
||||
# - because assets end up with .001, .002, etc. names sometimes.
|
||||
# first, let's get the datablock that blocks us from renaming the asset, and rename it to something a bit else:
|
||||
# we need to ge the equivalent datablock ,
|
||||
# then we can swap those names around.
|
||||
datablock = get_equivalent_datablock(ui_props.asset_type, fname)
|
||||
if datablock is not None:
|
||||
datablock.name = fname + "_temprename"
|
||||
replace_name = asset.name
|
||||
asset.name = fname
|
||||
datablock.name = replace_name
|
||||
|
||||
|
||||
def fmt_dimensions(p):
|
||||
|
||||
Reference in New Issue
Block a user