Improve node side panel (more operators, icons)
This commit is contained in:
parent
fa6d1903c7
commit
76b2380ec4
|
@ -7,6 +7,7 @@ from bpy.props import BoolProperty, StringProperty
|
|||
import arm.logicnode.arm_nodes as arm_nodes
|
||||
import arm.logicnode.replacement
|
||||
import arm.logicnode
|
||||
import arm.props_traits
|
||||
import arm.utils
|
||||
|
||||
registered_nodes = []
|
||||
|
@ -164,15 +165,21 @@ class ARM_PT_LogicNodePanel(bpy.types.Panel):
|
|||
layout = self.layout
|
||||
layout.use_property_split = True
|
||||
layout.use_property_decorate = False
|
||||
if context.active_node != None and context.active_node.bl_idname.startswith('LN'):
|
||||
if context.active_node is not None and context.active_node.bl_idname.startswith('LN'):
|
||||
layout.prop(context.active_node, 'arm_logic_id')
|
||||
layout.prop(context.active_node, 'arm_watch')
|
||||
layout.operator('arm.open_node_source')
|
||||
|
||||
class ArmOpenNodeSource(bpy.types.Operator):
|
||||
layout.separator()
|
||||
layout.operator('arm.open_node_documentation')
|
||||
column = layout.column(align=True)
|
||||
column.operator('arm.open_node_python_source', icon='FILE_SCRIPT')
|
||||
column.operator('arm.open_node_haxe_source', icon_value=arm.props_traits.icons_dict['haxe'].icon_id)
|
||||
|
||||
|
||||
class ArmOpenNodeHaxeSource(bpy.types.Operator):
|
||||
"""Expose Haxe source"""
|
||||
bl_idname = 'arm.open_node_source'
|
||||
bl_label = 'Open Node Source'
|
||||
bl_idname = 'arm.open_node_haxe_source'
|
||||
bl_label = 'Open Node Haxe Source'
|
||||
|
||||
def execute(self, context):
|
||||
if context.selected_nodes is not None:
|
||||
|
@ -358,7 +365,7 @@ def register():
|
|||
|
||||
bpy.utils.register_class(ArmLogicTree)
|
||||
bpy.utils.register_class(ARM_PT_LogicNodePanel)
|
||||
bpy.utils.register_class(ArmOpenNodeSource)
|
||||
bpy.utils.register_class(ArmOpenNodeHaxeSource)
|
||||
bpy.utils.register_class(ArmOpenNodePythonSource)
|
||||
bpy.utils.register_class(ArmOpenNodeWikiEntry)
|
||||
bpy.utils.register_class(ReplaceNodesOperator)
|
||||
|
@ -383,7 +390,7 @@ def unregister():
|
|||
bpy.utils.unregister_class(ReplaceNodesOperator)
|
||||
bpy.utils.unregister_class(ArmLogicTree)
|
||||
bpy.utils.unregister_class(ARM_PT_LogicNodePanel)
|
||||
bpy.utils.unregister_class(ArmOpenNodeSource)
|
||||
bpy.utils.unregister_class(ArmOpenNodeHaxeSource)
|
||||
bpy.utils.unregister_class(ArmOpenNodePythonSource)
|
||||
bpy.utils.unregister_class(ArmOpenNodeWikiEntry)
|
||||
bpy.utils.unregister_class(ARM_PT_Variables)
|
||||
|
|
|
@ -13,6 +13,8 @@ import arm.proxy as proxy
|
|||
import arm.utils
|
||||
import arm.write_data as write_data
|
||||
|
||||
icons_dict: bpy.utils.previews.ImagePreviewCollection
|
||||
|
||||
|
||||
def trigger_recompile(self, context):
|
||||
wrd = bpy.data.worlds['Arm']
|
||||
|
|
|
@ -2525,7 +2525,7 @@ def draw_custom_node_menu(self, context):
|
|||
layout = self.layout
|
||||
layout.separator()
|
||||
layout.operator("arm.open_node_documentation", text="Show documentation for this node")
|
||||
layout.operator("arm.open_node_source", text="Open .hx source in the browser")
|
||||
layout.operator("arm.open_node_haxe_source", text="Open .hx source in the browser")
|
||||
layout.operator("arm.open_node_python_source", text="Open .py source in the browser")
|
||||
|
||||
elif context.space_data.tree_type == 'ShaderNodeTree':
|
||||
|
|
Loading…
Reference in a new issue