Merge pull request #34437 from Chaosus/fix_toggle_scripts4
Fix ScriptTextEditor encapsulation
This commit is contained in:
commit
8189f23e8c
5 changed files with 15 additions and 13 deletions
|
@ -1509,7 +1509,7 @@ void CodeTextEditor::_set_show_warnings_panel(bool p_show) {
|
|||
}
|
||||
|
||||
void CodeTextEditor::_toggle_scripts_pressed() {
|
||||
toggle_scripts_button->set_icon(ScriptEditor::get_singleton()->toggle_scripts_panel(this) ? get_icon("Back", "EditorIcons") : get_icon("Forward", "EditorIcons"));
|
||||
toggle_scripts_button->set_icon(ScriptEditor::get_singleton()->toggle_scripts_panel() ? get_icon("Back", "EditorIcons") : get_icon("Forward", "EditorIcons"));
|
||||
}
|
||||
|
||||
void CodeTextEditor::_error_pressed(const Ref<InputEvent> &p_event) {
|
||||
|
|
|
@ -987,11 +987,8 @@ Array ScriptEditor::_get_open_scripts() const {
|
|||
return ret;
|
||||
}
|
||||
|
||||
bool ScriptEditor::toggle_scripts_panel(CodeTextEditor *p_editor) {
|
||||
bool ScriptEditor::toggle_scripts_panel() {
|
||||
list_split->set_visible(!list_split->is_visible());
|
||||
if (p_editor) {
|
||||
p_editor->update_toggle_scripts_button();
|
||||
}
|
||||
return list_split->is_visible();
|
||||
}
|
||||
|
||||
|
@ -1141,14 +1138,13 @@ void ScriptEditor::_menu_option(int p_option) {
|
|||
} break;
|
||||
case TOGGLE_SCRIPTS_PANEL: {
|
||||
if (current) {
|
||||
CodeTextEditor *code_editor = NULL;
|
||||
ScriptTextEditor *editor = dynamic_cast<ScriptTextEditor *>(current);
|
||||
ScriptTextEditor *editor = Object::cast_to<ScriptTextEditor>(current);
|
||||
toggle_scripts_panel();
|
||||
if (editor) {
|
||||
code_editor = editor->code_editor;
|
||||
editor->update_toggle_scripts_button();
|
||||
}
|
||||
toggle_scripts_panel(code_editor);
|
||||
} else {
|
||||
toggle_scripts_panel(NULL);
|
||||
toggle_scripts_panel();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -419,7 +419,7 @@ protected:
|
|||
public:
|
||||
static ScriptEditor *get_singleton() { return script_editor; }
|
||||
|
||||
bool toggle_scripts_panel(CodeTextEditor *p_editor);
|
||||
bool toggle_scripts_panel();
|
||||
bool is_scripts_panel_toggled();
|
||||
void ensure_focus_current();
|
||||
void apply_scripts() const;
|
||||
|
|
|
@ -966,6 +966,12 @@ void ScriptTextEditor::_lookup_symbol(const String &p_symbol, int p_row, int p_c
|
|||
}
|
||||
}
|
||||
|
||||
void ScriptTextEditor::update_toggle_scripts_button() {
|
||||
if (code_editor != NULL) {
|
||||
code_editor->update_toggle_scripts_button();
|
||||
}
|
||||
}
|
||||
|
||||
void ScriptTextEditor::_update_connected_methods() {
|
||||
TextEdit *text_edit = code_editor->get_text_edit();
|
||||
text_edit->clear_info_icons();
|
||||
|
|
|
@ -55,6 +55,7 @@ class ScriptTextEditor : public ScriptEditorBase {
|
|||
|
||||
GDCLASS(ScriptTextEditor, ScriptEditorBase);
|
||||
|
||||
CodeTextEditor *code_editor;
|
||||
RichTextLabel *warnings_panel;
|
||||
|
||||
Ref<Script> script;
|
||||
|
@ -186,12 +187,11 @@ protected:
|
|||
void drop_data_fw(const Point2 &p_point, const Variant &p_data, Control *p_from);
|
||||
|
||||
public:
|
||||
CodeTextEditor *code_editor;
|
||||
|
||||
void _update_connected_methods();
|
||||
|
||||
virtual void add_syntax_highlighter(SyntaxHighlighter *p_highlighter);
|
||||
virtual void set_syntax_highlighter(SyntaxHighlighter *p_highlighter);
|
||||
void update_toggle_scripts_button();
|
||||
|
||||
virtual void apply_code();
|
||||
virtual RES get_edited_resource() const;
|
||||
|
|
Loading…
Reference in a new issue