Skip to content

Commit

Permalink
Cleanup class registration
Browse files Browse the repository at this point in the history
  • Loading branch information
MoritzBrueckner committed Aug 4, 2023
1 parent 5a8c7e5 commit 5116579
Show file tree
Hide file tree
Showing 16 changed files with 251 additions and 347 deletions.
4 changes: 2 additions & 2 deletions blender/arm/logicnode/arm_node_group.py
Expand Up @@ -549,7 +549,7 @@ def draw(self, context):
row.operator('arm.edit_group_tree', icon='FULLSCREEN_ENTER', text='Edit Tree')


REG_CLASSES = (
__REG_CLASSES = (
ArmGroupTree,
ArmEditGroupTree,
ArmCopyGroupTree,
Expand All @@ -562,4 +562,4 @@ def draw(self, context):
ArmAddCallGroupNode,
ARM_PT_LogicGroupPanel
)
register, unregister = bpy.utils.register_classes_factory(REG_CLASSES)
register, unregister = bpy.utils.register_classes_factory(__REG_CLASSES)
4 changes: 2 additions & 2 deletions blender/arm/logicnode/arm_nodes.py
Expand Up @@ -1014,7 +1014,7 @@ def reset_globals():
category_items = OrderedDict()


REG_CLASSES = (
__REG_CLASSES = (
ArmNodeSearch,
ArmNodeAddInputButton,
ArmNodeAddInputValueButton,
Expand All @@ -1026,4 +1026,4 @@ def reset_globals():
ArmNodeRemoveInputOutputButton,
ArmNodeCallFuncButton
)
register, unregister = bpy.utils.register_classes_factory(REG_CLASSES)
register, unregister = bpy.utils.register_classes_factory(__REG_CLASSES)
4 changes: 2 additions & 2 deletions blender/arm/logicnode/arm_sockets.py
Expand Up @@ -633,7 +633,7 @@ def draw_color(self, context):
ArmAnySocketInterface = _make_socket_interface('ArmAnySocketInterface', 'ArmAnySocket')


REG_CLASSES = (
__REG_CLASSES = (
ArmActionSocketInterface,
ArmAnimSocketInterface,
ArmRotationSocketInterface,
Expand Down Expand Up @@ -662,4 +662,4 @@ def draw_color(self, context):
ArmVectorSocket,
ArmAnySocket,
)
register, unregister = bpy.utils.register_classes_factory(REG_CLASSES)
register, unregister = bpy.utils.register_classes_factory(__REG_CLASSES)
4 changes: 2 additions & 2 deletions blender/arm/logicnode/miscellaneous/LN_group_input.py
Expand Up @@ -189,7 +189,7 @@ def draw_buttons_ext(self, context, layout):
layout.enabled = False
node = context.active_node
split = layout.row()
split.template_list('ARM_UL_interface_sockets', 'OUT', node, 'outputs', node, 'active_output')
split.template_list('ARM_UL_InterfaceSockets', 'OUT', node, 'outputs', node, 'active_output')
ops_col = split.column()
add_remove_col = ops_col.column(align=True)
props = add_remove_col.operator('arm.node_call_func', icon='ADD', text="")
Expand All @@ -214,4 +214,4 @@ def get_replacement_node(self, node_tree: bpy.types.NodeTree):
if self.arm_version not in (0, 1, 2):
raise LookupError()

return node_tree.nodes.new('LNGroupInputsNode')
return node_tree.nodes.new('LNGroupInputsNode')
4 changes: 2 additions & 2 deletions blender/arm/logicnode/miscellaneous/LN_group_output.py
Expand Up @@ -189,7 +189,7 @@ def draw_buttons_ext(self, context, layout):
layout.enabled = False
node = context.active_node
split = layout.row()
split.template_list('ARM_UL_interface_sockets', 'IN', node, 'inputs', node, 'active_input')
split.template_list('ARM_UL_InterfaceSockets', 'IN', node, 'inputs', node, 'active_input')
ops_col = split.column()
add_remove_col = ops_col.column(align=True)
props = add_remove_col.operator('arm.node_call_func', icon='ADD', text="")
Expand All @@ -214,4 +214,4 @@ def get_replacement_node(self, node_tree: bpy.types.NodeTree):
if self.arm_version not in (0, 1, 2):
raise LookupError()

return node_tree.nodes.new('LNGroupOutputsNode')
return node_tree.nodes.new('LNGroupOutputsNode')
8 changes: 4 additions & 4 deletions blender/arm/logicnode/tree_variables.py
Expand Up @@ -525,7 +525,7 @@ def node_compat_sdk2209():
arm.logicnode.arm_nodes.ArmLogicVariableNodeMixin.synchronize(tree, item.name)


REG_CLASSES = (
__REG_CLASSES = (
ARM_PT_Variables,
ARM_OT_TreeVariableListMoveItem,
ARM_OT_TreeVariableMakeLocalNode,
Expand All @@ -536,11 +536,11 @@ def node_compat_sdk2209():
ARM_UL_TreeVarList,
ARM_PG_TreeVarListItem,
)
register_classes, unregister_classes = bpy.utils.register_classes_factory(REG_CLASSES)
__reg_classes, __unreg_classes = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
register_classes()
__reg_classes()

bpy.types.Node.arm_logic_id = StringProperty(
name='ID',
Expand All @@ -554,4 +554,4 @@ def register():


def unregister():
unregister_classes()
__unreg_classes()
46 changes: 21 additions & 25 deletions blender/arm/nodes_logic.py
Expand Up @@ -311,7 +311,7 @@ def execute(self, context):
def poll(cls, context):
return context.space_data is not None and context.space_data.type == 'NODE_EDITOR'

class ARM_UL_interface_sockets(bpy.types.UIList):
class ARM_UL_InterfaceSockets(bpy.types.UIList):
"""UI List of input and output sockets"""
def draw_item(self, context, layout, data, item, icon, active_data, active_propname, index):
socket = item
Expand Down Expand Up @@ -356,26 +356,32 @@ def unregister_draw(cls):
bpy.types.SpaceNodeEditor.draw_handler_remove(cls.draw_handler, 'WINDOW')
cls.draw_handler = None


__REG_CLASSES = (
ArmLogicTree,
ArmOpenNodeHaxeSource,
ArmOpenNodePythonSource,
ArmOpenNodeWikiEntry,
ARM_OT_ReplaceNodesOperator,
ARM_MT_NodeAddOverride,
ARM_OT_AddNodeOverride,
ARM_UL_InterfaceSockets,
ARM_PT_LogicNodePanel,
ARM_PT_NodeDevelopment
)
__reg_classes, __unreg_classes = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
arm.logicnode.arm_nodes.register()
arm.logicnode.arm_sockets.register()
arm.logicnode.arm_node_group.register()
arm.logicnode.tree_variables.register()

bpy.utils.register_class(ArmLogicTree)
bpy.utils.register_class(ArmOpenNodeHaxeSource)
bpy.utils.register_class(ArmOpenNodePythonSource)
bpy.utils.register_class(ArmOpenNodeWikiEntry)
bpy.utils.register_class(ARM_OT_ReplaceNodesOperator)
ARM_MT_NodeAddOverride.overridden_menu = bpy.types.NODE_MT_add
ARM_MT_NodeAddOverride.overridden_draw = bpy.types.NODE_MT_add.draw
bpy.utils.register_class(ARM_MT_NodeAddOverride)
bpy.utils.register_class(ARM_OT_AddNodeOverride)
bpy.utils.register_class(ARM_UL_interface_sockets)

# Register panels in correct order
bpy.utils.register_class(ARM_PT_LogicNodePanel)
arm.logicnode.tree_variables.register()
bpy.utils.register_class(ARM_PT_NodeDevelopment)
__reg_classes()

arm.logicnode.init_categories()
DrawNodeBreadCrumbs.register_draw()
Expand All @@ -388,20 +394,10 @@ def unregister():
# Ensure that globals are reset if the addon is enabled again in the same Blender session
arm_nodes.reset_globals()

bpy.utils.unregister_class(ARM_PT_NodeDevelopment)
arm.logicnode.tree_variables.unregister()
bpy.utils.unregister_class(ARM_PT_LogicNodePanel)

bpy.utils.unregister_class(ARM_OT_ReplaceNodesOperator)
bpy.utils.unregister_class(ArmLogicTree)
bpy.utils.unregister_class(ArmOpenNodeHaxeSource)
bpy.utils.unregister_class(ArmOpenNodePythonSource)
bpy.utils.unregister_class(ArmOpenNodeWikiEntry)
bpy.utils.unregister_class(ARM_OT_AddNodeOverride)
bpy.utils.unregister_class(ARM_MT_NodeAddOverride)
__unreg_classes()
bpy.utils.register_class(ARM_MT_NodeAddOverride.overridden_menu)
bpy.utils.unregister_class(ARM_UL_interface_sockets)

arm.logicnode.tree_variables.unregister()
arm.logicnode.arm_node_group.unregister()
arm.logicnode.arm_sockets.unregister()
arm.logicnode.arm_nodes.unregister()
79 changes: 42 additions & 37 deletions blender/arm/props_bake.py
Expand Up @@ -350,52 +350,57 @@ def execute(self, context):
bpy.data.materials.remove(mat, do_unlink=True)
return{'FINISHED'}


__REG_CLASSES = (
ArmBakeListItem,
ARM_UL_BakeList,
ArmBakeListNewItem,
ArmBakeListDeleteItem,
ArmBakeListMoveItem,
ArmBakeButton,
ArmBakeApplyButton,
ArmBakeSpecialsMenu,
ArmBakeAddAllButton,
ArmBakeAddSelectedButton,
ArmBakeClearAllButton,
ArmBakeRemoveBakedMaterialsButton
)
__reg_classes, __unreg_classes = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
bpy.utils.register_class(ArmBakeListItem)
bpy.utils.register_class(ARM_UL_BakeList)
bpy.utils.register_class(ArmBakeListNewItem)
bpy.utils.register_class(ArmBakeListDeleteItem)
bpy.utils.register_class(ArmBakeListMoveItem)
bpy.utils.register_class(ArmBakeButton)
bpy.utils.register_class(ArmBakeApplyButton)
bpy.utils.register_class(ArmBakeSpecialsMenu)
bpy.utils.register_class(ArmBakeAddAllButton)
bpy.utils.register_class(ArmBakeAddSelectedButton)
bpy.utils.register_class(ArmBakeClearAllButton)
bpy.utils.register_class(ArmBakeRemoveBakedMaterialsButton)
bpy.types.Scene.arm_bakelist_scale = FloatProperty(name="Resolution", description="Resolution scale", default=100.0, min=1, max=1000, soft_min=1, soft_max=100.0, subtype='PERCENTAGE')
__reg_classes()

bpy.types.Scene.arm_bakelist_scale = FloatProperty(
name="Resolution", description="Resolution scale", subtype='PERCENTAGE',
default=100.0, min=1, max=1000, soft_min=1, soft_max=100.0
)
bpy.types.Scene.arm_bakelist = CollectionProperty(type=ArmBakeListItem)
bpy.types.Scene.arm_bakelist_index = IntProperty(name="Index for my_list", default=0)
bpy.types.Scene.arm_bakelist_unwrap = EnumProperty(
items = [('Lightmap Pack', 'Lightmap Pack', 'Lightmap Pack'),
('Smart UV Project', 'Smart UV Project', 'Smart UV Project')],
name = "UV Unwrap", default='Smart UV Project')


#Register lightmapper
name="UV Unwrap", default='Smart UV Project',
items=[
('Lightmap Pack', 'Lightmap Pack', 'Lightmap Pack'),
('Smart UV Project', 'Smart UV Project', 'Smart UV Project')
]
)

# Register lightmapper
bpy.types.Scene.arm_bakemode = EnumProperty(
items = [('Static Map', 'Static Map', 'Static Map'),
('Lightmap', 'Lightmap', 'Lightmap')],
name = "Bake mode", default='Static Map')
name="Bake mode", default='Static Map',
items=[
('Static Map', 'Static Map', 'Static Map'),
('Lightmap', 'Lightmap', 'Lightmap')
]
)

operators.register()
properties.register()


def unregister():
bpy.utils.unregister_class(ArmBakeListItem)
bpy.utils.unregister_class(ARM_UL_BakeList)
bpy.utils.unregister_class(ArmBakeListNewItem)
bpy.utils.unregister_class(ArmBakeListDeleteItem)
bpy.utils.unregister_class(ArmBakeListMoveItem)
bpy.utils.unregister_class(ArmBakeButton)
bpy.utils.unregister_class(ArmBakeApplyButton)
bpy.utils.unregister_class(ArmBakeSpecialsMenu)
bpy.utils.unregister_class(ArmBakeAddAllButton)
bpy.utils.unregister_class(ArmBakeAddSelectedButton)
bpy.utils.unregister_class(ArmBakeClearAllButton)
bpy.utils.unregister_class(ArmBakeRemoveBakedMaterialsButton)

#Unregister lightmapper
__unreg_classes()

# Unregister lightmapper
operators.unregister()
properties.unregister()
properties.unregister()
8 changes: 4 additions & 4 deletions blender/arm/props_exporter.py
Expand Up @@ -451,7 +451,7 @@ def execute(self, context):
return{'FINISHED'}


REG_CLASSES = (
__REG_CLASSES = (
ArmExporterListItem,
ArmExporterAndroidPermissionListItem,
ArmExporterAndroidAbiListItem,
Expand All @@ -470,11 +470,11 @@ def execute(self, context):
ArmoryExporterOpenFolderButton,
ARM_OT_ExporterOpenVS
)
_reg_classes, _unreg_classes = bpy.utils.register_classes_factory(REG_CLASSES)
__reg_classes, __unreg_classes = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
_reg_classes()
__reg_classes()

bpy.types.World.arm_exporterlist = CollectionProperty(type=ArmExporterListItem)
bpy.types.World.arm_exporterlist_index = IntProperty(name="Index for my_list", default=0)
Expand All @@ -485,4 +485,4 @@ def register():


def unregister():
_unreg_classes()
__unreg_classes()
24 changes: 12 additions & 12 deletions blender/arm/props_lod.py
Expand Up @@ -138,20 +138,20 @@ def execute(self, context):
return{'CANCELLED'}
return{'FINISHED'}


__REG_CLASSES = (
ArmLodListItem,
ARM_UL_LodList,
ArmLodListNewItem,
ArmLodListDeleteItem,
ArmLodListMoveItem,
)
__reg_classes, unregister = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
bpy.utils.register_class(ArmLodListItem)
bpy.utils.register_class(ARM_UL_LodList)
bpy.utils.register_class(ArmLodListNewItem)
bpy.utils.register_class(ArmLodListDeleteItem)
bpy.utils.register_class(ArmLodListMoveItem)
__reg_classes()

bpy.types.Mesh.arm_lodlist = CollectionProperty(type=ArmLodListItem)
bpy.types.Mesh.arm_lodlist_index = IntProperty(name="Index for my_list", default=0)
bpy.types.Mesh.arm_lod_material = BoolProperty(name="Material Lod", description="Use materials of lod objects", default=False)

def unregister():
bpy.utils.unregister_class(ArmLodListItem)
bpy.utils.unregister_class(ARM_UL_LodList)
bpy.utils.unregister_class(ArmLodListNewItem)
bpy.utils.unregister_class(ArmLodListDeleteItem)
bpy.utils.unregister_class(ArmLodListMoveItem)
24 changes: 12 additions & 12 deletions blender/arm/props_properties.py
Expand Up @@ -141,18 +141,18 @@ def draw_properties(layout, obj):
op = col.operator("arm_propertylist.move_item", icon='TRIA_DOWN', text="")
op.direction = 'DOWN'


__REG_CLASSES = (
ArmPropertyListItem,
ARM_UL_PropertyList,
ArmPropertyListNewItem,
ArmPropertyListDeleteItem,
ArmPropertyListMoveItem,
)
__reg_classes, unregister = bpy.utils.register_classes_factory(__REG_CLASSES)


def register():
bpy.utils.register_class(ArmPropertyListItem)
bpy.utils.register_class(ARM_UL_PropertyList)
bpy.utils.register_class(ArmPropertyListNewItem)
bpy.utils.register_class(ArmPropertyListDeleteItem)
bpy.utils.register_class(ArmPropertyListMoveItem)
__reg_classes()
bpy.types.Object.arm_propertylist = CollectionProperty(type=ArmPropertyListItem)
bpy.types.Object.arm_propertylist_index = IntProperty(name="Index for arm_propertylist", default=0)

def unregister():
bpy.utils.unregister_class(ArmPropertyListItem)
bpy.utils.unregister_class(ARM_UL_PropertyList)
bpy.utils.unregister_class(ArmPropertyListNewItem)
bpy.utils.unregister_class(ArmPropertyListDeleteItem)
bpy.utils.unregister_class(ArmPropertyListMoveItem)

0 comments on commit 5116579

Please sign in to comment.