Menu Icons
Using Icons on our Menus
Finding Icons To Use


Adding Icons in our Menu Class

Dynamic Icon
Full Class Code
Last updated
Using Icons on our Menus



Last updated
self.data.icon = unreal.ScriptSlateIcon(
"<Style Set>",
"<Property Name>"
)@unreal.uclass()
class PythonMenuTool(unreal.ToolMenuEntryScript):
name = "icon_menu"
label = "Menu Class w/ Icon"
tool_tip = "tool tip!"
def __init__(self, menu, section=""):
"""Initialize our entry for the given menu_object's section"""
super().__init__()
# Initialize the entry data
self.init_entry(
owner_name="custom_owner",
menu=menu.menu_name,
section=section,
name=self.name,
label=self.label,
tool_tip=self.tool_tip
)
# Set the icon!
self.data.icon = unreal.ScriptSlateIcon(
"EditorStyle",
"WorldBrowser.DetailsButtonBrush"
)
menu.add_menu_entry_object(self) @unreal.ufunction(override=True)
def get_icon(self, context):
"""determine the icon to display"""
is_ctrl_down = unreal.InputLibrary.modifier_keys_state_is_control_down(
unreal.InputLibrary.get_modifier_keys_state()
)
active_icon = unreal.ScriptSlateIcon(
"EditorStyle",
"SourceControl.StatusIcon.On"
)
inactive_icon = unreal.ScriptSlateIcon(
"EditorStyle",
"SourceControl.StatusIcon.Error"
)
return active_icon if is_ctrl_down else inactive_icon@unreal.uclass()
class PythonMenuTool(unreal.ToolMenuEntryScript):
name = "icon_menu"
label = "Menu Class w/ Icon"
tool_tip = "tool tip!"
def __init__(self, menu, section=""):
"""Initialize our entry for the given menu_object's section"""
super().__init__()
# Initialize the entry data
self.init_entry(
owner_name="custom_owner",
menu=menu.menu_name,
section=section,
name=self.name,
label=self.label,
tool_tip=self.tool_tip
)
self.data.icon = unreal.ScriptSlateIcon(
"EditorStyle",
"WorldBrowser.DetailsButtonBrush"
)
menu.add_menu_entry_object(self)
@unreal.ufunction(override=True)
def get_icon(self, context):
"""The Python code to execute when pressed"""
is_ctrl_down = unreal.InputLibrary.modifier_keys_state_is_control_down(
unreal.InputLibrary.get_modifier_keys_state()
)
active_icon = unreal.ScriptSlateIcon(
"EditorStyle",
"SourceControl.StatusIcon.On"
)
inactive_icon = unreal.ScriptSlateIcon(
"EditorStyle",
"SourceControl.StatusIcon.Error"
)
return active_icon if is_ctrl_down else inactive_icon