-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathaddToolBar.py
63 lines (54 loc) · 1.69 KB
/
addToolBar.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
import unreal
from collections import namedtuple
def make_menu(label_name,command_string):
"""
创建menu菜单目录
:param label_name:
:param command_string:
:return:
"""
# menu_stru = namedtuple("menu_name",["entry","commond_string"])
entry = unreal.ToolMenuEntry(type=unreal.MultiBlockType.TOOL_BAR_BUTTON)
entry.set_label(label_name)
typ = unreal.ToolMenuStringCommandType.PYTHON
entry.set_string_command(typ,'',command_string)
return entry
def add_tool_button(function_str,section_name):
"""
添加工具按钮到工具架上
:param function_str:
:param section_name:
:return:
"""
# print("add tool button")
menus = unreal.ToolMenus.get()
menu = menus.find_menu("LevelEditor.LevelEditorToolBar")
menu_entry = make_menu(section_name,function_str)
menu.add_menu_entry('Settings',menu_entry)
menus.refresh_all_widgets()
def remove_tool_button(section_name):
"""
移除指定的 button
:param section_name:s
:return:
"""
menus = unreal.ToolMenu.get()
menu = menus.find_menu("LevelEditor.LevelEditorToolBar")
pass
#
# # Get the menu class
# menus = unreal.ToolMenus.get()
# menu_name = "LevelEditor.LevelEditorToolBar"
# menu = menus.find_menu(menu_name)
# # Set the button type and label
# entry = unreal.ToolMenuEntry(type=unreal.MultiBlockType.TOOL_BAR_BUTTON)
# entry.set_label("Test Button")
# # Set button command
# typ = unreal.ToolMenuStringCommandType.PYTHON
# entry.set_string_command(typ, "", 'print "Hello World!"')
# # Add and refresh
# section_name = 'Settings'
# menu.add_menu_entry(section_name, entry)
# menus.refresh_all_widgets()