mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-10 01:41:57 +00:00
Fix cost values for resources not updating properly
This commit is contained in:
@@ -97,6 +97,7 @@ class Resource(bonsai.core.tool.Resource):
|
||||
props.active_resource_id = resource.id()
|
||||
props.resource_attributes.clear()
|
||||
props.editing_resource_type = "ATTRIBUTES"
|
||||
cls.update_cost_values_ui_data()
|
||||
|
||||
@classmethod
|
||||
def get_resource_attributes(cls) -> dict[str, Any]:
|
||||
@@ -109,6 +110,7 @@ class Resource(bonsai.core.tool.Resource):
|
||||
props.active_resource_time_id = resource.Usage.id()
|
||||
props.active_resource_id = resource.id()
|
||||
props.editing_resource_type = "USAGE"
|
||||
cls.update_cost_values_ui_data()
|
||||
|
||||
@classmethod
|
||||
def get_resource_time(cls, resource: ifcopenshell.entity_instance) -> Union[ifcopenshell.entity_instance, None]:
|
||||
@@ -153,6 +155,7 @@ class Resource(bonsai.core.tool.Resource):
|
||||
props = bpy.context.scene.BIMResourceProperties
|
||||
props.active_resource_id = resource.id()
|
||||
props.editing_resource_type = "COSTS"
|
||||
cls.update_cost_values_ui_data()
|
||||
|
||||
@classmethod
|
||||
def disable_editing_resource_cost_value(cls) -> None:
|
||||
@@ -263,6 +266,7 @@ class Resource(bonsai.core.tool.Resource):
|
||||
props.active_resource_id = resource.id()
|
||||
props.editing_resource_type = "QUANTITY"
|
||||
props.active_resource_class = resource.is_a()
|
||||
cls.update_cost_values_ui_data()
|
||||
|
||||
@classmethod
|
||||
def enable_editing_resource_quantity(cls, resource_quantity: ifcopenshell.entity_instance) -> None:
|
||||
@@ -450,3 +454,11 @@ class Resource(bonsai.core.tool.Resource):
|
||||
@classmethod
|
||||
def is_attribute_locked(cls, resource: ifcopenshell.entity_instance, attribute) -> bool:
|
||||
return ifcopenshell.util.constraint.is_attribute_locked(resource, attribute)
|
||||
|
||||
@classmethod
|
||||
def update_cost_values_ui_data(cls) -> None:
|
||||
from bonsai.bim.module.resource.data import ResourceData
|
||||
|
||||
if not ResourceData.is_loaded:
|
||||
return
|
||||
ResourceData.data["cost_values"] = ResourceData.cost_values()
|
||||
|
||||
Reference in New Issue
Block a user