diff options
Diffstat (limited to 'editor/project_settings_editor.h')
-rw-r--r-- | editor/project_settings_editor.h | 167 |
1 files changed, 42 insertions, 125 deletions
diff --git a/editor/project_settings_editor.h b/editor/project_settings_editor.h index 445ef58351..a43adecc4e 100644 --- a/editor/project_settings_editor.h +++ b/editor/project_settings_editor.h @@ -5,8 +5,8 @@ /* GODOT ENGINE */ /* https://godotengine.org */ /*************************************************************************/ -/* Copyright (c) 2007-2020 Juan Linietsky, Ariel Manzur. */ -/* Copyright (c) 2014-2020 Godot Engine contributors (cf. AUTHORS.md). */ +/* Copyright (c) 2007-2021 Juan Linietsky, Ariel Manzur. */ +/* Copyright (c) 2014-2021 Godot Engine contributors (cf. AUTHORS.md). */ /* */ /* Permission is hereby granted, free of charge, to any person obtaining */ /* a copy of this software and associated documentation files (the */ @@ -31,13 +31,14 @@ #ifndef PROJECT_SETTINGS_EDITOR_H #define PROJECT_SETTINGS_EDITOR_H -#include "core/undo_redo.h" -#include "editor/editor_autoload_settings.h" +#include "core/object/undo_redo.h" #include "editor/editor_data.h" #include "editor/editor_plugin_settings.h" #include "editor/editor_sectioned_inspector.h" +#include "editor/input_map_editor.h" +#include "editor/localization_editor.h" #include "editor/shader_globals_editor.h" -#include "scene/gui/dialogs.h" +#include "editor_autoload_settings.h" #include "scene/gui/tab_container.h" class ProjectSettingsEditor : public AcceptDialog { @@ -51,154 +52,70 @@ class ProjectSettingsEditor : public AcceptDialog { INPUT_MOUSE_BUTTON }; - enum LocaleFilter { - SHOW_ALL_LOCALES, - SHOW_ONLY_SELECTED_LOCALES, - }; - - TabContainer *tab_container; - + static ProjectSettingsEditor *singleton; + ProjectSettings *ps; Timer *timer; - InputType add_type; - String add_at; - int edit_idx; - EditorData *data; - UndoRedo *undo_redo; - SectionedInspector *globals_editor; + TabContainer *tab_container; + SectionedInspector *inspector; + InputMapEditor *inputmap_editor; + LocalizationEditor *localization_editor; + EditorAutoloadSettings *autoload_settings; + ShaderGlobalsEditor *shaders_global_variables_editor; + EditorPluginSettings *plugin_settings; HBoxContainer *search_bar; - Button *search_button; LineEdit *search_box; + CheckButton *advanced; - HBoxContainer *add_prop_bar; - AcceptDialog *message; - LineEdit *category; - LineEdit *property; + HBoxContainer *advanced_bar; + LineEdit *category_box; + LineEdit *property_box; + Button *add_button; + Button *del_button; OptionButton *type; - PopupMenu *popup_add; - ConfirmationDialog *press_a_key; - bool press_a_key_physical; - Label *press_a_key_label; - ConfirmationDialog *device_input; - OptionButton *device_id; - OptionButton *device_index; - Label *device_index_label; - MenuButton *popup_copy_to_feature; - ShaderGlobalsEditor *shaders_global_variables_editor; - - LineEdit *action_name; - Button *action_add; - Label *action_add_error; - Tree *input_editor; - bool setting; - bool updating_translations; - - Ref<InputEventKey> last_wait_for_key; - - EditorFileDialog *translation_file_open; - Tree *translation_list; - - Button *translation_res_option_add_button; - EditorFileDialog *translation_res_file_open; - EditorFileDialog *translation_res_option_file_open; - Tree *translation_remap; - Tree *translation_remap_options; - Tree *translation_filter; - bool translation_locales_list_created; - OptionButton *translation_locale_filter_mode; - Vector<TreeItem *> translation_filter_treeitems; - Vector<int> translation_locales_idxs_remap; - - EditorAutoloadSettings *autoload_settings; + OptionButton *feature_override; - EditorPluginSettings *plugin_settings; - - void _item_selected(const String &); - void _item_adds(String); - void _item_add(); - void _item_del(); - void _update_actions(); - void _save(); - void _add_item(int p_item, Ref<InputEvent> p_exiting_event = Ref<InputEvent>()); - void _edit_item(Ref<InputEvent> p_exiting_event); - - void _action_check(String p_action); - void _action_adds(String); - void _action_add(); - void _device_input_add(); - - void _item_checked(const String &p_item, bool p_check); - void _action_selected(); - void _action_edited(); - void _action_activated(); - void _action_button_pressed(Object *p_obj, int p_column, int p_id); - void _wait_for_key(const Ref<InputEvent> &p_event); - void _press_a_key_confirm(); - void _show_last_added(const Ref<InputEvent> &p_event, const String &p_name); - - void _settings_prop_edited(const String &p_name); - void _settings_changed(); - - void _copy_to_platform(int p_which); - - void _translation_file_open(); - void _translation_add(const String &p_path); - void _translation_delete(Object *p_item, int p_column, int p_button); - void _update_translations(); - - void _translation_res_file_open(); - void _translation_res_add(const String &p_path); - void _translation_res_delete(Object *p_item, int p_column, int p_button); - void _translation_res_select(); - void _translation_res_option_file_open(); - void _translation_res_option_add(const String &p_path); - void _translation_res_option_changed(); - void _translation_res_option_delete(Object *p_item, int p_column, int p_button); - - void _translation_filter_option_changed(); - void _translation_filter_mode_changed(int p_mode); - - void _toggle_search_bar(bool p_pressed); - - Variant get_drag_data_fw(const Point2 &p_point, Control *p_from); - bool can_drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from) const; - void drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from); - - void _copy_to_platform_about_to_show(); - - ProjectSettingsEditor(); - - static ProjectSettingsEditor *singleton; + ConfirmationDialog *del_confirmation; Label *restart_label; TextureRect *restart_icon; PanelContainer *restart_container; - ToolButton *restart_close_button; + Button *restart_close_button; + + EditorData *data; + UndoRedo *undo_redo; + + void _advanced_pressed(); + void _update_advanced_bar(); + void _text_field_changed(const String &p_text); + void _feature_selected(int p_index); + + String _get_setting_name() const; + void _setting_edited(const String &p_name); + void _setting_selected(const String &p_path); + void _add_setting(); + void _delete_setting(bool p_confirmed); void _editor_restart_request(); void _editor_restart(); void _editor_restart_close(); + void _add_feature_overrides(); + ProjectSettingsEditor(); + protected: - void _unhandled_input(const Ref<InputEvent> &p_event); void _notification(int p_what); static void _bind_methods(); - int _get_current_device(); - void _set_current_device(int i_device); - String _get_device_string(int i_device); - public: - void add_translation(const String &p_translation); static ProjectSettingsEditor *get_singleton() { return singleton; } void popup_project_settings(); void set_plugins_page(); void update_plugins(); EditorAutoloadSettings *get_autoload_settings() { return autoload_settings; } - - TabContainer *get_tabs(); + TabContainer *get_tabs() { return tab_container; } void queue_save(); |