瀏覽代碼

Merge pull request #82131 from jsjtxietian/fix-skeleton-editor-deleted-in-wrong-container

Fix skeleton 3d editor's toolbar ui deleted from wrong container
Rémi Verschelde 1 年之前
父節點
當前提交
6d8b33f5d4
共有 2 個文件被更改,包括 4 次插入21 次删除
  1. 3 20
      editor/plugins/skeleton_3d_editor_plugin.cpp
  2. 1 1
      editor/plugins/skeleton_3d_editor_plugin.h

+ 3 - 20
editor/plugins/skeleton_3d_editor_plugin.cpp

@@ -712,7 +712,7 @@ void Skeleton3DEditor::create_editors() {
 	add_child(file_dialog);
 
 	// Create Top Menu Bar.
-	HBoxContainer *topmenu_bar = memnew(HBoxContainer);
+	topmenu_bar = memnew(HBoxContainer);
 	ne->add_control_to_menu_panel(topmenu_bar);
 
 	// Create Skeleton Option in Top Menu Bar.
@@ -1095,25 +1095,8 @@ Skeleton3DEditor::~Skeleton3DEditor() {
 
 	Node3DEditor *ne = Node3DEditor::get_singleton();
 
-	if (animation_hb) {
-		ne->remove_control_from_menu_panel(animation_hb);
-		memdelete(animation_hb);
-	}
-
-	if (separator) {
-		ne->remove_control_from_menu_panel(separator);
-		memdelete(separator);
-	}
-
-	if (skeleton_options) {
-		ne->remove_control_from_menu_panel(skeleton_options);
-		memdelete(skeleton_options);
-	}
-
-	if (edit_mode_button) {
-		ne->remove_control_from_menu_panel(edit_mode_button);
-		memdelete(edit_mode_button);
-	}
+	ne->remove_control_from_menu_panel(topmenu_bar);
+	memdelete(topmenu_bar);
 }
 
 bool EditorInspectorPluginSkeleton::can_handle(Object *p_object) {

+ 1 - 1
editor/plugins/skeleton_3d_editor_plugin.h

@@ -120,7 +120,7 @@ class Skeleton3DEditor : public VBoxContainer {
 	BoneTransformEditor *rest_editor = nullptr;
 	BoneTransformEditor *pose_editor = nullptr;
 
-	VSeparator *separator = nullptr;
+	HBoxContainer *topmenu_bar = nullptr;
 	MenuButton *skeleton_options = nullptr;
 	Button *edit_mode_button = nullptr;