Procházet zdrojové kódy

Replace last occurrences of PropertyEditor by EditorInspector

Updates the following plugins:
- ConnectionsDialog
- ScriptEditorDebugger
- ItemListEditorPlugin

Also drop now unnecessary compatibility methods.
Rémi Verschelde před 7 roky
rodič
revize
45b609f46a

+ 1 - 2
editor/connections_dialog.cpp

@@ -341,8 +341,7 @@ ConnectDialog::ConnectDialog() {
 
 	vbc_right->add_margin_child(TTR("Add Extra Call Argument:"), add_bind_hb);
 
-	bind_editor = memnew(PropertyEditor);
-	bind_editor->hide_top_label();
+	bind_editor = memnew(EditorInspector);
 
 	vbc_right->add_margin_child(TTR("Extra Call Arguments:"), bind_editor, true);
 

+ 2 - 2
editor/connections_dialog.h

@@ -35,7 +35,7 @@
 #ifndef CONNECTIONS_DIALOG_H
 #define CONNECTIONS_DIALOG_H
 
-#include "editor/property_editor.h"
+#include "editor/editor_inspector.h"
 #include "editor/scene_tree_editor.h"
 #include "scene/gui/button.h"
 #include "scene/gui/check_button.h"
@@ -62,7 +62,7 @@ class ConnectDialog : public ConfirmationDialog {
 
 	SceneTreeEditor *tree;
 	ConfirmationDialog *error;
-	PropertyEditor *bind_editor;
+	EditorInspector *bind_editor;
 	OptionButton *type_list;
 	CheckButton *deferred;
 	CheckButton *oneshot;

+ 1 - 16
editor/editor_inspector.cpp

@@ -1138,7 +1138,6 @@ void EditorInspectorSection::_gui_input(const Ref<InputEvent> &p_event) {
 		return;
 
 #ifdef TOOLS_ENABLED
-
 	Ref<InputEventMouseButton> mb = p_event;
 	if (mb.is_valid() && mb->is_pressed() && mb->get_button_index() == BUTTON_LEFT) {
 
@@ -1167,7 +1166,6 @@ void EditorInspectorSection::unfold() {
 	_test_unfold();
 
 #ifdef TOOLS_ENABLED
-
 	object->editor_set_section_unfold(section, true);
 	vbox->show();
 	update();
@@ -1180,8 +1178,8 @@ void EditorInspectorSection::fold() {
 
 	if (!vbox_added)
 		return; //kinda pointless
-#ifdef TOOLS_ENABLED
 
+#ifdef TOOLS_ENABLED
 	object->editor_set_section_unfold(section, false);
 	vbox->hide();
 	update();
@@ -1202,7 +1200,6 @@ EditorInspectorSection::EditorInspectorSection() {
 	foldable = false;
 	vbox = memnew(VBoxContainer);
 	vbox_added = false;
-	//add_child(vbox);
 }
 
 EditorInspectorSection::~EditorInspectorSection() {
@@ -1607,12 +1604,6 @@ void EditorInspector::update_tree() {
 			doc_hint = descr;
 		}
 
-#if 0
-		if (p.name == selected_property) {
-
-			item->select(1);
-		}
-#endif
 		for (List<Ref<EditorInspectorPlugin> >::Element *E = valid_plugins.front(); E; E = E->next()) {
 			Ref<EditorInspectorPlugin> ped = E->get();
 			bool exclusive = ped->parse_property(object, p.type, p.name, p.hint, p.hint_string, p.usage);
@@ -1812,12 +1803,6 @@ void EditorInspector::_filter_changed(const String &p_text) {
 	update_tree();
 }
 
-void EditorInspector::set_subsection_selectable(bool p_selectable) {
-}
-
-void EditorInspector::set_property_selectable(bool p_selectable) {
-}
-
 void EditorInspector::set_use_folding(bool p_enable) {
 	use_folding = p_enable;
 	update_tree();

+ 0 - 3
editor/editor_inspector.h

@@ -349,9 +349,6 @@ public:
 	void set_use_filter(bool p_use);
 	void register_text_enter(Node *p_line_edit);
 
-	void set_subsection_selectable(bool p_selectable);
-	void set_property_selectable(bool p_selectable);
-
 	void set_use_folding(bool p_enable);
 	bool is_using_folding();
 

+ 0 - 4
editor/editor_node.cpp

@@ -5646,10 +5646,6 @@ EditorNode::EditorNode() {
 	add_editor_plugin(memnew(SkeletonIKEditorPlugin(this)));
 	add_editor_plugin(memnew(PhysicalBonePlugin(this)));
 
-	// FIXME: Disabled as (according to reduz) users were complaining that it gets in the way
-	// Waiting for PropertyEditor rewrite (planned for 3.1) to be refactored.
-	//add_editor_plugin(memnew(MaterialEditorPlugin(this)));
-
 	for (int i = 0; i < EditorPlugins::get_plugin_count(); i++)
 		add_editor_plugin(EditorPlugins::create(i, this));
 

+ 10 - 12
editor/plugins/item_list_editor_plugin.cpp

@@ -278,18 +278,20 @@ void ItemListEditor::_add_pressed() {
 
 void ItemListEditor::_delete_pressed() {
 
-	TreeItem *ti = tree->get_selected();
-
-	if (!ti)
+	if (selected_idx == -1)
 		return;
 
-	if (ti->get_parent() != tree->get_root())
+	String current_selected = (String)property_editor->get_selected_path();
+
+	if (current_selected == "")
 		return;
 
-	int idx = ti->get_text(0).to_int();
+	// FIXME: Currently relying on selecting a *property* to derive what item to delete
+	// e.g. you select "1/enabled" to delete item 1.
+	// This should be fixed so that you can delete by selecting the item section header,
+	// or a delete button on that header.
 
-	if (selected_idx == -1)
-		return;
+	int idx = current_selected.get_slice("/", 0).to_int();
 
 	item_plugins[selected_idx]->erase(idx);
 }
@@ -382,13 +384,9 @@ ItemListEditor::ItemListEditor() {
 	hbc->add_child(del_button);
 	del_button->connect("pressed", this, "_delete_button");
 
-	property_editor = memnew(PropertyEditor);
-	property_editor->hide_top_label();
-	property_editor->set_subsection_selectable(true);
+	property_editor = memnew(EditorInspector);
 	vbc->add_child(property_editor);
 	property_editor->set_v_size_flags(SIZE_EXPAND_FILL);
-
-	tree = property_editor->get_property_tree();
 }
 
 ItemListEditor::~ItemListEditor() {

+ 2 - 2
editor/plugins/item_list_editor_plugin.h

@@ -32,9 +32,9 @@
 #define ITEM_LIST_EDITOR_PLUGIN_H
 
 #include "canvas_item_editor_plugin.h"
+#include "editor/editor_inspector.h"
 #include "editor/editor_node.h"
 #include "editor/editor_plugin.h"
-
 #include "scene/gui/menu_button.h"
 #include "scene/gui/option_button.h"
 #include "scene/gui/popup_menu.h"
@@ -210,7 +210,7 @@ class ItemListEditor : public HBoxContainer {
 	ToolButton *toolbar_button;
 
 	AcceptDialog *dialog;
-	PropertyEditor *property_editor;
+	EditorInspector *property_editor;
 	Tree *tree;
 	Button *add_button;
 	Button *del_button;

+ 0 - 3
editor/project_settings_editor.cpp

@@ -1750,12 +1750,9 @@ ProjectSettingsEditor::ProjectSettingsEditor(EditorData *p_data) {
 	globals_editor = memnew(SectionedInspector);
 	props_base->add_child(globals_editor);
 	globals_editor->get_inspector()->set_undo_redo(EditorNode::get_singleton()->get_undo_redo());
-	globals_editor->get_inspector()->set_property_selectable(true);
-	//globals_editor->hide_top_label();
 	globals_editor->set_v_size_flags(Control::SIZE_EXPAND_FILL);
 	globals_editor->register_search_box(search_box);
 	globals_editor->get_inspector()->connect("property_selected", this, "_item_selected");
-	//globals_editor->get_inspector()->connect("property_toggled", this, "_item_checked", varray(), CONNECT_DEFERRED);
 	globals_editor->get_inspector()->connect("property_edited", this, "_settings_prop_edited");
 	globals_editor->get_inspector()->connect("restart_requested", this, "_editor_restart_request");
 

+ 1 - 5
editor/script_editor_debugger.cpp

@@ -396,7 +396,6 @@ void ScriptEditorDebugger::_parse_message(const String &p_msg, const Array &p_da
 		dobreak->set_disabled(false);
 		docontinue->set_disabled(true);
 		emit_signal("breaked", false, false, Variant());
-		//tabs->set_current_tab(0);
 		profiler->set_enabled(true);
 		profiler->disable_seeking();
 		inspector->edit(NULL);
@@ -1946,10 +1945,8 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) {
 		stack_dump->connect("cell_selected", this, "_stack_dump_frame_selected");
 		sc->add_child(stack_dump);
 
-		inspector = memnew(PropertyEditor);
+		inspector = memnew(EditorInspector);
 		inspector->set_h_size_flags(SIZE_EXPAND_FILL);
-		inspector->hide_top_label();
-		inspector->get_property_tree()->set_column_title(0, TTR("Variable"));
 		inspector->set_enable_capitalize_paths(false);
 		inspector->set_read_only(true);
 		inspector->connect("object_id_selected", this, "_scene_tree_property_select_object");
@@ -2180,7 +2177,6 @@ ScriptEditorDebugger::ScriptEditorDebugger(EditorNode *p_editor) {
 
 ScriptEditorDebugger::~ScriptEditorDebugger() {
 
-	//inspector->edit(NULL);
 	memdelete(variables);
 
 	ppeer->set_stream_peer(Ref<StreamPeer>());

+ 3 - 3
editor/script_editor_debugger.h

@@ -33,12 +33,12 @@
 
 #include "core/io/packet_peer.h"
 #include "core/io/tcp_server.h"
-#include "property_editor.h"
+#include "editor/editor_inspector.h"
+#include "editor/property_editor.h"
 #include "scene/gui/box_container.h"
 #include "scene/gui/button.h"
 
 class Tree;
-class PropertyEditor;
 class EditorNode;
 class ScriptEditorDebuggerVariables;
 class LineEdit;
@@ -130,7 +130,7 @@ class ScriptEditorDebugger : public Control {
 	LineEdit *vmem_total;
 
 	Tree *stack_dump;
-	PropertyEditor *inspector;
+	EditorInspector *inspector;
 
 	Ref<TCP_Server> server;
 	Ref<StreamPeerTCP> connection;