mirror of
https://github.com/godotengine/godot.git
synced 2025-12-08 06:09:55 +00:00
Merge pull request #105897 from akien-mga/mingw-remove-undef-hacks
Remove WinAPI `#undef` hacks needed for mingw-std-threads
This commit is contained in:
commit
b2829f3256
15 changed files with 46 additions and 73 deletions
|
|
@ -302,9 +302,9 @@ void DependencyEditorOwners::_list_rmb_clicked(int p_item, const Vector2 &p_pos,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (only_scenes_selected) {
|
if (only_scenes_selected) {
|
||||||
file_options->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRN("Open Scene", "Open Scenes", selected_items.size()), FILE_OPEN);
|
file_options->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRN("Open Scene", "Open Scenes", selected_items.size()), FILE_OPEN_);
|
||||||
} else if (selected_items.size() == 1) {
|
} else if (selected_items.size() == 1) {
|
||||||
file_options->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTR("Open"), FILE_OPEN);
|
file_options->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTR("Open"), FILE_OPEN_);
|
||||||
} else {
|
} else {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
@ -333,7 +333,7 @@ void DependencyEditorOwners::_empty_clicked(const Vector2 &p_pos, MouseButton p_
|
||||||
|
|
||||||
void DependencyEditorOwners::_file_option(int p_option) {
|
void DependencyEditorOwners::_file_option(int p_option) {
|
||||||
switch (p_option) {
|
switch (p_option) {
|
||||||
case FILE_OPEN: {
|
case FILE_OPEN_: {
|
||||||
PackedInt32Array selected_items = owners->get_selected_items();
|
PackedInt32Array selected_items = owners->get_selected_items();
|
||||||
for (int i = 0; i < selected_items.size(); i++) {
|
for (int i = 0; i < selected_items.size(); i++) {
|
||||||
int item_idx = selected_items[i];
|
int item_idx = selected_items[i];
|
||||||
|
|
|
||||||
|
|
@ -64,10 +64,6 @@ public:
|
||||||
DependencyEditor();
|
DependencyEditor();
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#undef FILE_OPEN
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class DependencyEditorOwners : public AcceptDialog {
|
class DependencyEditorOwners : public AcceptDialog {
|
||||||
GDCLASS(DependencyEditorOwners, AcceptDialog);
|
GDCLASS(DependencyEditorOwners, AcceptDialog);
|
||||||
|
|
||||||
|
|
@ -84,7 +80,7 @@ class DependencyEditorOwners : public AcceptDialog {
|
||||||
|
|
||||||
private:
|
private:
|
||||||
enum FileMenu {
|
enum FileMenu {
|
||||||
FILE_OPEN
|
FILE_OPEN_,
|
||||||
};
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
|
|
@ -2323,7 +2323,7 @@ void FileSystemDock::_file_option(int p_option, const Vector<String> &p_selected
|
||||||
}
|
}
|
||||||
} break;
|
} break;
|
||||||
|
|
||||||
case FILE_OPEN: {
|
case FILE_OPEN_: {
|
||||||
// Open folders.
|
// Open folders.
|
||||||
TreeItem *selected = tree->get_root();
|
TreeItem *selected = tree->get_root();
|
||||||
selected = tree->get_next_selected(selected);
|
selected = tree->get_next_selected(selected);
|
||||||
|
|
@ -3211,18 +3211,18 @@ void FileSystemDock::_file_and_folders_fill_popup(PopupMenu *p_popup, const Vect
|
||||||
if (all_files) {
|
if (all_files) {
|
||||||
if (all_files_scenes) {
|
if (all_files_scenes) {
|
||||||
if (filenames.size() == 1) {
|
if (filenames.size() == 1) {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open Scene"), FILE_OPEN);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open Scene"), FILE_OPEN_);
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("CreateNewSceneFrom")), TTRC("New Inherited Scene"), FILE_INHERIT);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("CreateNewSceneFrom")), TTRC("New Inherited Scene"), FILE_INHERIT);
|
||||||
if (GLOBAL_GET("application/run/main_scene") != filenames[0]) {
|
if (GLOBAL_GET("application/run/main_scene") != filenames[0]) {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("PlayScene")), TTRC("Set as Main Scene"), FILE_MAIN_SCENE);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("PlayScene")), TTRC("Set as Main Scene"), FILE_MAIN_SCENE);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open Scenes"), FILE_OPEN);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open Scenes"), FILE_OPEN_);
|
||||||
}
|
}
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Instance")), TTRC("Instantiate"), FILE_INSTANTIATE);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Instance")), TTRC("Instantiate"), FILE_INSTANTIATE);
|
||||||
p_popup->add_separator();
|
p_popup->add_separator();
|
||||||
} else if (filenames.size() == 1) {
|
} else if (filenames.size() == 1) {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open"), FILE_OPEN);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Open"), FILE_OPEN_);
|
||||||
p_popup->add_separator();
|
p_popup->add_separator();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -3255,7 +3255,7 @@ void FileSystemDock::_file_and_folders_fill_popup(PopupMenu *p_popup, const Vect
|
||||||
bool root_path_not_selected = p_paths[0] != "res://" && (p_paths.size() <= 1 || p_paths[1] != "res://");
|
bool root_path_not_selected = p_paths[0] != "res://" && (p_paths.size() <= 1 || p_paths[1] != "res://");
|
||||||
|
|
||||||
if (all_folders && foldernames.size() > 0) {
|
if (all_folders && foldernames.size() > 0) {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Expand Folder"), FILE_OPEN);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("Load")), TTRC("Expand Folder"), FILE_OPEN_);
|
||||||
|
|
||||||
if (foldernames.size() == 1) {
|
if (foldernames.size() == 1) {
|
||||||
p_popup->add_icon_item(get_editor_theme_icon(SNAME("GuiTreeArrowDown")), TTRC("Expand Hierarchy"), FOLDER_EXPAND_ALL);
|
p_popup->add_icon_item(get_editor_theme_icon(SNAME("GuiTreeArrowDown")), TTRC("Expand Hierarchy"), FOLDER_EXPAND_ALL);
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
enum FileMenu {
|
enum FileMenu {
|
||||||
FILE_OPEN,
|
FILE_OPEN_, // Conflict with WinAPI.
|
||||||
FILE_INHERIT,
|
FILE_INHERIT,
|
||||||
FILE_MAIN_SCENE,
|
FILE_MAIN_SCENE,
|
||||||
FILE_INSTANTIATE,
|
FILE_INSTANTIATE,
|
||||||
|
|
|
||||||
|
|
@ -1196,7 +1196,7 @@ void ScriptEditor::_file_dialog_action(const String &p_file) {
|
||||||
}
|
}
|
||||||
[[fallthrough]];
|
[[fallthrough]];
|
||||||
}
|
}
|
||||||
case FILE_OPEN: {
|
case FILE_OPEN_: {
|
||||||
open_file(p_file);
|
open_file(p_file);
|
||||||
file_dialog_option = -1;
|
file_dialog_option = -1;
|
||||||
} break;
|
} break;
|
||||||
|
|
@ -1281,10 +1281,10 @@ void ScriptEditor::_menu_option(int p_option) {
|
||||||
file_dialog->popup_file_dialog();
|
file_dialog->popup_file_dialog();
|
||||||
open_textfile_after_create = true;
|
open_textfile_after_create = true;
|
||||||
} break;
|
} break;
|
||||||
case FILE_OPEN: {
|
case FILE_OPEN_: {
|
||||||
file_dialog->set_file_mode(EditorFileDialog::FILE_MODE_OPEN_FILE);
|
file_dialog->set_file_mode(EditorFileDialog::FILE_MODE_OPEN_FILE);
|
||||||
file_dialog->set_access(EditorFileDialog::ACCESS_FILESYSTEM);
|
file_dialog->set_access(EditorFileDialog::ACCESS_FILESYSTEM);
|
||||||
file_dialog_option = FILE_OPEN;
|
file_dialog_option = FILE_OPEN_;
|
||||||
|
|
||||||
List<String> extensions;
|
List<String> extensions;
|
||||||
ResourceLoader::get_recognized_extensions_for_type("Script", &extensions);
|
ResourceLoader::get_recognized_extensions_for_type("Script", &extensions);
|
||||||
|
|
@ -4258,7 +4258,7 @@ ScriptEditor::ScriptEditor(WindowWrapper *p_wrapper) {
|
||||||
|
|
||||||
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new", TTRC("New Script..."), KeyModifierMask::CMD_OR_CTRL | Key::N), FILE_NEW);
|
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new", TTRC("New Script..."), KeyModifierMask::CMD_OR_CTRL | Key::N), FILE_NEW);
|
||||||
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new_textfile", TTRC("New Text File..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::N), FILE_NEW_TEXTFILE);
|
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/new_textfile", TTRC("New Text File..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::N), FILE_NEW_TEXTFILE);
|
||||||
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/open", TTRC("Open...")), FILE_OPEN);
|
file_menu->get_popup()->add_shortcut(ED_SHORTCUT("script_editor/open", TTRC("Open...")), FILE_OPEN_);
|
||||||
file_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_editor/reopen_closed_script"), FILE_REOPEN_CLOSED);
|
file_menu->get_popup()->add_shortcut(ED_GET_SHORTCUT("script_editor/reopen_closed_script"), FILE_REOPEN_CLOSED);
|
||||||
|
|
||||||
recent_scripts = memnew(PopupMenu);
|
recent_scripts = memnew(PopupMenu);
|
||||||
|
|
|
||||||
|
|
@ -230,17 +230,13 @@ class EditorScriptCodeCompletionCache;
|
||||||
class FindInFilesDialog;
|
class FindInFilesDialog;
|
||||||
class FindInFilesPanel;
|
class FindInFilesPanel;
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#undef FILE_OPEN
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class ScriptEditor : public PanelContainer {
|
class ScriptEditor : public PanelContainer {
|
||||||
GDCLASS(ScriptEditor, PanelContainer);
|
GDCLASS(ScriptEditor, PanelContainer);
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
FILE_NEW,
|
FILE_NEW,
|
||||||
FILE_NEW_TEXTFILE,
|
FILE_NEW_TEXTFILE,
|
||||||
FILE_OPEN,
|
FILE_OPEN_, // Conflict with WinAPI.
|
||||||
FILE_REOPEN_CLOSED,
|
FILE_REOPEN_CLOSED,
|
||||||
FILE_OPEN_RECENT,
|
FILE_OPEN_RECENT,
|
||||||
FILE_SAVE,
|
FILE_SAVE,
|
||||||
|
|
|
||||||
|
|
@ -397,7 +397,7 @@ void ShaderEditorPlugin::_setup_popup_menu(PopupMenuType p_type, PopupMenu *p_me
|
||||||
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/new", TTRC("New Shader..."), KeyModifierMask::CMD_OR_CTRL | Key::N), FILE_NEW);
|
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/new", TTRC("New Shader..."), KeyModifierMask::CMD_OR_CTRL | Key::N), FILE_NEW);
|
||||||
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/new_include", TTRC("New Shader Include..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::N), FILE_NEW_INCLUDE);
|
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/new_include", TTRC("New Shader Include..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::N), FILE_NEW_INCLUDE);
|
||||||
p_menu->add_separator();
|
p_menu->add_separator();
|
||||||
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/open", TTRC("Load Shader File..."), KeyModifierMask::CMD_OR_CTRL | Key::O), FILE_OPEN);
|
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/open", TTRC("Load Shader File..."), KeyModifierMask::CMD_OR_CTRL | Key::O), FILE_OPEN_);
|
||||||
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/open_include", TTRC("Load Shader Include File..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::O), FILE_OPEN_INCLUDE);
|
p_menu->add_shortcut(ED_SHORTCUT("shader_editor/open_include", TTRC("Load Shader Include File..."), KeyModifierMask::CMD_OR_CTRL | KeyModifierMask::SHIFT | Key::O), FILE_OPEN_INCLUDE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -518,7 +518,7 @@ void ShaderEditorPlugin::_menu_item_pressed(int p_index) {
|
||||||
shader_create_dialog->config(base_path.path_join("new_shader"), false, false, 2);
|
shader_create_dialog->config(base_path.path_join("new_shader"), false, false, 2);
|
||||||
shader_create_dialog->popup_centered();
|
shader_create_dialog->popup_centered();
|
||||||
} break;
|
} break;
|
||||||
case FILE_OPEN: {
|
case FILE_OPEN_: {
|
||||||
InspectorDock::get_singleton()->open_resource("Shader");
|
InspectorDock::get_singleton()->open_resource("Shader");
|
||||||
} break;
|
} break;
|
||||||
case FILE_OPEN_INCLUDE: {
|
case FILE_OPEN_INCLUDE: {
|
||||||
|
|
|
||||||
|
|
@ -44,10 +44,6 @@ class HBoxContainer;
|
||||||
class VisualShaderEditor;
|
class VisualShaderEditor;
|
||||||
class WindowWrapper;
|
class WindowWrapper;
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#undef FILE_OPEN
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class ShaderEditorPlugin : public EditorPlugin {
|
class ShaderEditorPlugin : public EditorPlugin {
|
||||||
GDCLASS(ShaderEditorPlugin, EditorPlugin);
|
GDCLASS(ShaderEditorPlugin, EditorPlugin);
|
||||||
|
|
||||||
|
|
@ -64,7 +60,7 @@ class ShaderEditorPlugin : public EditorPlugin {
|
||||||
enum {
|
enum {
|
||||||
FILE_NEW,
|
FILE_NEW,
|
||||||
FILE_NEW_INCLUDE,
|
FILE_NEW_INCLUDE,
|
||||||
FILE_OPEN,
|
FILE_OPEN_,
|
||||||
FILE_OPEN_INCLUDE,
|
FILE_OPEN_INCLUDE,
|
||||||
FILE_SAVE,
|
FILE_SAVE,
|
||||||
FILE_SAVE_AS,
|
FILE_SAVE_AS,
|
||||||
|
|
|
||||||
|
|
@ -4900,7 +4900,7 @@ void VisualShaderEditor::_graph_gui_input(const Ref<InputEvent> &p_event) {
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::CUT, selected_deletable_graph_elements.is_empty());
|
popup_menu->set_item_disabled(NodeMenuOptions::CUT, selected_deletable_graph_elements.is_empty());
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::COPY, selected_deletable_graph_elements.is_empty());
|
popup_menu->set_item_disabled(NodeMenuOptions::COPY, selected_deletable_graph_elements.is_empty());
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::PASTE, copy_buffer_empty);
|
popup_menu->set_item_disabled(NodeMenuOptions::PASTE, copy_buffer_empty);
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::DELETE, selected_deletable_graph_elements.is_empty());
|
popup_menu->set_item_disabled(NodeMenuOptions::DELETE_, selected_deletable_graph_elements.is_empty());
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::DUPLICATE, selected_deletable_graph_elements.is_empty());
|
popup_menu->set_item_disabled(NodeMenuOptions::DUPLICATE, selected_deletable_graph_elements.is_empty());
|
||||||
popup_menu->set_item_disabled(NodeMenuOptions::CLEAR_COPY_BUFFER, copy_buffer_empty);
|
popup_menu->set_item_disabled(NodeMenuOptions::CLEAR_COPY_BUFFER, copy_buffer_empty);
|
||||||
|
|
||||||
|
|
@ -6042,7 +6042,7 @@ void VisualShaderEditor::_node_menu_id_pressed(int p_idx) {
|
||||||
case NodeMenuOptions::PASTE:
|
case NodeMenuOptions::PASTE:
|
||||||
_paste_nodes(true, menu_point);
|
_paste_nodes(true, menu_point);
|
||||||
break;
|
break;
|
||||||
case NodeMenuOptions::DELETE:
|
case NodeMenuOptions::DELETE_:
|
||||||
_delete_nodes_request(TypedArray<StringName>());
|
_delete_nodes_request(TypedArray<StringName>());
|
||||||
break;
|
break;
|
||||||
case NodeMenuOptions::DUPLICATE:
|
case NodeMenuOptions::DUPLICATE:
|
||||||
|
|
@ -6713,7 +6713,7 @@ VisualShaderEditor::VisualShaderEditor() {
|
||||||
popup_menu->add_item(TTR("Cut"), NodeMenuOptions::CUT);
|
popup_menu->add_item(TTR("Cut"), NodeMenuOptions::CUT);
|
||||||
popup_menu->add_item(TTR("Copy"), NodeMenuOptions::COPY);
|
popup_menu->add_item(TTR("Copy"), NodeMenuOptions::COPY);
|
||||||
popup_menu->add_item(TTR("Paste"), NodeMenuOptions::PASTE);
|
popup_menu->add_item(TTR("Paste"), NodeMenuOptions::PASTE);
|
||||||
popup_menu->add_item(TTR("Delete"), NodeMenuOptions::DELETE);
|
popup_menu->add_item(TTR("Delete"), NodeMenuOptions::DELETE_);
|
||||||
popup_menu->add_item(TTR("Duplicate"), NodeMenuOptions::DUPLICATE);
|
popup_menu->add_item(TTR("Duplicate"), NodeMenuOptions::DUPLICATE);
|
||||||
popup_menu->add_item(TTR("Clear Copy Buffer"), NodeMenuOptions::CLEAR_COPY_BUFFER);
|
popup_menu->add_item(TTR("Clear Copy Buffer"), NodeMenuOptions::CLEAR_COPY_BUFFER);
|
||||||
popup_menu->connect(SceneStringName(id_pressed), callable_mp(this, &VisualShaderEditor::_node_menu_id_pressed));
|
popup_menu->connect(SceneStringName(id_pressed), callable_mp(this, &VisualShaderEditor::_node_menu_id_pressed));
|
||||||
|
|
|
||||||
|
|
@ -328,17 +328,13 @@ class VisualShaderEditor : public ShaderEditor {
|
||||||
PASTE_PARAMS_TO_MATERIAL,
|
PASTE_PARAMS_TO_MATERIAL,
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#undef DELETE
|
|
||||||
#endif
|
|
||||||
|
|
||||||
enum NodeMenuOptions {
|
enum NodeMenuOptions {
|
||||||
ADD,
|
ADD,
|
||||||
SEPARATOR, // ignore
|
SEPARATOR, // ignore
|
||||||
CUT,
|
CUT,
|
||||||
COPY,
|
COPY,
|
||||||
PASTE,
|
PASTE,
|
||||||
DELETE,
|
DELETE_, // Conflict with WinAPI.
|
||||||
DUPLICATE,
|
DUPLICATE,
|
||||||
CLEAR_COPY_BUFFER,
|
CLEAR_COPY_BUFFER,
|
||||||
SEPARATOR2, // ignore
|
SEPARATOR2, // ignore
|
||||||
|
|
|
||||||
|
|
@ -468,7 +468,7 @@ Dictionary GDScriptSyntaxHighlighter::_get_line_syntax_highlighting_impl(int p_l
|
||||||
if (prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::FUNC)) {
|
if (prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::FUNC)) {
|
||||||
in_function_declaration = true;
|
in_function_declaration = true;
|
||||||
}
|
}
|
||||||
} else if (prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::VAR) || prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::FOR) || prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::CONST)) {
|
} else if (prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::VAR) || prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::FOR) || prev_text == GDScriptTokenizer::get_token_name(GDScriptTokenizer::Token::TK_CONST)) {
|
||||||
in_var_const_declaration = true;
|
in_var_const_declaration = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -536,7 +536,7 @@ void GDScriptParser::synchronize() {
|
||||||
case GDScriptTokenizer::Token::FUNC:
|
case GDScriptTokenizer::Token::FUNC:
|
||||||
case GDScriptTokenizer::Token::STATIC:
|
case GDScriptTokenizer::Token::STATIC:
|
||||||
case GDScriptTokenizer::Token::VAR:
|
case GDScriptTokenizer::Token::VAR:
|
||||||
case GDScriptTokenizer::Token::CONST:
|
case GDScriptTokenizer::Token::TK_CONST:
|
||||||
case GDScriptTokenizer::Token::SIGNAL:
|
case GDScriptTokenizer::Token::SIGNAL:
|
||||||
//case GDScriptTokenizer::Token::IF: // Can also be inside expressions.
|
//case GDScriptTokenizer::Token::IF: // Can also be inside expressions.
|
||||||
case GDScriptTokenizer::Token::FOR:
|
case GDScriptTokenizer::Token::FOR:
|
||||||
|
|
@ -1020,7 +1020,7 @@ void GDScriptParser::parse_class_body(bool p_is_multiline) {
|
||||||
current_class->has_static_data = true;
|
current_class->has_static_data = true;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case GDScriptTokenizer::Token::CONST:
|
case GDScriptTokenizer::Token::TK_CONST:
|
||||||
parse_class_member(&GDScriptParser::parse_constant, AnnotationInfo::CONSTANT, "constant");
|
parse_class_member(&GDScriptParser::parse_constant, AnnotationInfo::CONSTANT, "constant");
|
||||||
break;
|
break;
|
||||||
case GDScriptTokenizer::Token::SIGNAL:
|
case GDScriptTokenizer::Token::SIGNAL:
|
||||||
|
|
@ -1895,7 +1895,7 @@ GDScriptParser::Node *GDScriptParser::parse_statement() {
|
||||||
advance();
|
advance();
|
||||||
result = parse_variable(false, false);
|
result = parse_variable(false, false);
|
||||||
break;
|
break;
|
||||||
case GDScriptTokenizer::Token::CONST:
|
case GDScriptTokenizer::Token::TK_CONST:
|
||||||
advance();
|
advance();
|
||||||
result = parse_constant(false);
|
result = parse_constant(false);
|
||||||
break;
|
break;
|
||||||
|
|
@ -2155,9 +2155,9 @@ GDScriptParser::ForNode *GDScriptParser::parse_for() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (n_for->datatype_specifier == nullptr) {
|
if (n_for->datatype_specifier == nullptr) {
|
||||||
consume(GDScriptTokenizer::Token::IN, R"(Expected "in" or ":" after "for" variable name.)");
|
consume(GDScriptTokenizer::Token::TK_IN, R"(Expected "in" or ":" after "for" variable name.)");
|
||||||
} else {
|
} else {
|
||||||
consume(GDScriptTokenizer::Token::IN, R"(Expected "in" after "for" variable type specifier.)");
|
consume(GDScriptTokenizer::Token::TK_IN, R"(Expected "in" after "for" variable type specifier.)");
|
||||||
}
|
}
|
||||||
|
|
||||||
n_for->list = parse_expression(false);
|
n_for->list = parse_expression(false);
|
||||||
|
|
@ -2810,7 +2810,7 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_binary_not_in_operator(Exp
|
||||||
UnaryOpNode *operation = alloc_node<UnaryOpNode>();
|
UnaryOpNode *operation = alloc_node<UnaryOpNode>();
|
||||||
reset_extents(operation, p_previous_operand);
|
reset_extents(operation, p_previous_operand);
|
||||||
update_extents(operation);
|
update_extents(operation);
|
||||||
consume(GDScriptTokenizer::Token::IN, R"(Expected "in" after "not" in content-test operator.)");
|
consume(GDScriptTokenizer::Token::TK_IN, R"(Expected "in" after "not" in content-test operator.)");
|
||||||
ExpressionNode *in_operation = parse_binary_operator(p_previous_operand, p_can_assign);
|
ExpressionNode *in_operation = parse_binary_operator(p_previous_operand, p_can_assign);
|
||||||
operation->operation = UnaryOpNode::OP_LOGIC_NOT;
|
operation->operation = UnaryOpNode::OP_LOGIC_NOT;
|
||||||
operation->variant_op = Variant::OP_NOT;
|
operation->variant_op = Variant::OP_NOT;
|
||||||
|
|
@ -2890,7 +2890,7 @@ GDScriptParser::ExpressionNode *GDScriptParser::parse_binary_operator(Expression
|
||||||
operation->operation = BinaryOpNode::OP_LOGIC_OR;
|
operation->operation = BinaryOpNode::OP_LOGIC_OR;
|
||||||
operation->variant_op = Variant::OP_OR;
|
operation->variant_op = Variant::OP_OR;
|
||||||
break;
|
break;
|
||||||
case GDScriptTokenizer::Token::IN:
|
case GDScriptTokenizer::Token::TK_IN:
|
||||||
operation->operation = BinaryOpNode::OP_CONTENT_TEST;
|
operation->operation = BinaryOpNode::OP_CONTENT_TEST;
|
||||||
operation->variant_op = Variant::OP_IN;
|
operation->variant_op = Variant::OP_IN;
|
||||||
break;
|
break;
|
||||||
|
|
@ -3685,7 +3685,7 @@ GDScriptParser::TypeNode *GDScriptParser::parse_type(bool p_allow_void) {
|
||||||
TypeNode *type = alloc_node<TypeNode>();
|
TypeNode *type = alloc_node<TypeNode>();
|
||||||
make_completion_context(p_allow_void ? COMPLETION_TYPE_NAME_OR_VOID : COMPLETION_TYPE_NAME, type);
|
make_completion_context(p_allow_void ? COMPLETION_TYPE_NAME_OR_VOID : COMPLETION_TYPE_NAME, type);
|
||||||
if (!match(GDScriptTokenizer::Token::IDENTIFIER)) {
|
if (!match(GDScriptTokenizer::Token::IDENTIFIER)) {
|
||||||
if (match(GDScriptTokenizer::Token::VOID)) {
|
if (match(GDScriptTokenizer::Token::TK_VOID)) {
|
||||||
if (p_allow_void) {
|
if (p_allow_void) {
|
||||||
complete_extents(type);
|
complete_extents(type);
|
||||||
TypeNode *void_type = type;
|
TypeNode *void_type = type;
|
||||||
|
|
@ -4116,11 +4116,11 @@ GDScriptParser::ParseRule *GDScriptParser::get_rule(GDScriptTokenizer::Token::Ty
|
||||||
{ nullptr, nullptr, PREC_NONE }, // BREAKPOINT,
|
{ nullptr, nullptr, PREC_NONE }, // BREAKPOINT,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // CLASS,
|
{ nullptr, nullptr, PREC_NONE }, // CLASS,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // CLASS_NAME,
|
{ nullptr, nullptr, PREC_NONE }, // CLASS_NAME,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // CONST,
|
{ nullptr, nullptr, PREC_NONE }, // TK_CONST,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // ENUM,
|
{ nullptr, nullptr, PREC_NONE }, // ENUM,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // EXTENDS,
|
{ nullptr, nullptr, PREC_NONE }, // EXTENDS,
|
||||||
{ &GDScriptParser::parse_lambda, nullptr, PREC_NONE }, // FUNC,
|
{ &GDScriptParser::parse_lambda, nullptr, PREC_NONE }, // FUNC,
|
||||||
{ nullptr, &GDScriptParser::parse_binary_operator, PREC_CONTENT_TEST }, // IN,
|
{ nullptr, &GDScriptParser::parse_binary_operator, PREC_CONTENT_TEST }, // TK_IN,
|
||||||
{ nullptr, &GDScriptParser::parse_type_test, PREC_TYPE_TEST }, // IS,
|
{ nullptr, &GDScriptParser::parse_type_test, PREC_TYPE_TEST }, // IS,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // NAMESPACE,
|
{ nullptr, nullptr, PREC_NONE }, // NAMESPACE,
|
||||||
{ &GDScriptParser::parse_preload, nullptr, PREC_NONE }, // PRELOAD,
|
{ &GDScriptParser::parse_preload, nullptr, PREC_NONE }, // PRELOAD,
|
||||||
|
|
@ -4130,7 +4130,7 @@ GDScriptParser::ParseRule *GDScriptParser::get_rule(GDScriptTokenizer::Token::Ty
|
||||||
{ &GDScriptParser::parse_call, nullptr, PREC_NONE }, // SUPER,
|
{ &GDScriptParser::parse_call, nullptr, PREC_NONE }, // SUPER,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // TRAIT,
|
{ nullptr, nullptr, PREC_NONE }, // TRAIT,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // VAR,
|
{ nullptr, nullptr, PREC_NONE }, // VAR,
|
||||||
{ nullptr, nullptr, PREC_NONE }, // VOID,
|
{ nullptr, nullptr, PREC_NONE }, // TK_VOID,
|
||||||
{ &GDScriptParser::parse_yield, nullptr, PREC_NONE }, // YIELD,
|
{ &GDScriptParser::parse_yield, nullptr, PREC_NONE }, // YIELD,
|
||||||
// Punctuation
|
// Punctuation
|
||||||
{ &GDScriptParser::parse_array, &GDScriptParser::parse_subscript, PREC_SUBSCRIPT }, // BRACKET_OPEN,
|
{ &GDScriptParser::parse_array, &GDScriptParser::parse_subscript, PREC_SUBSCRIPT }, // BRACKET_OPEN,
|
||||||
|
|
|
||||||
|
|
@ -107,11 +107,11 @@ static const char *token_names[] = {
|
||||||
"breakpoint", // BREAKPOINT,
|
"breakpoint", // BREAKPOINT,
|
||||||
"class", // CLASS,
|
"class", // CLASS,
|
||||||
"class_name", // CLASS_NAME,
|
"class_name", // CLASS_NAME,
|
||||||
"const", // CONST,
|
"const", // TK_CONST,
|
||||||
"enum", // ENUM,
|
"enum", // ENUM,
|
||||||
"extends", // EXTENDS,
|
"extends", // EXTENDS,
|
||||||
"func", // FUNC,
|
"func", // FUNC,
|
||||||
"in", // IN,
|
"in", // TK_IN,
|
||||||
"is", // IS,
|
"is", // IS,
|
||||||
"namespace", // NAMESPACE
|
"namespace", // NAMESPACE
|
||||||
"preload", // PRELOAD,
|
"preload", // PRELOAD,
|
||||||
|
|
@ -121,7 +121,7 @@ static const char *token_names[] = {
|
||||||
"super", // SUPER,
|
"super", // SUPER,
|
||||||
"trait", // TRAIT,
|
"trait", // TRAIT,
|
||||||
"var", // VAR,
|
"var", // VAR,
|
||||||
"void", // VOID,
|
"void", // TK_VOID,
|
||||||
"yield", // YIELD,
|
"yield", // YIELD,
|
||||||
// Punctuation
|
// Punctuation
|
||||||
"[", // BRACKET_OPEN,
|
"[", // BRACKET_OPEN,
|
||||||
|
|
@ -221,7 +221,7 @@ bool GDScriptTokenizer::Token::is_node_name() const {
|
||||||
case BREAKPOINT:
|
case BREAKPOINT:
|
||||||
case CLASS_NAME:
|
case CLASS_NAME:
|
||||||
case CLASS:
|
case CLASS:
|
||||||
case CONST:
|
case TK_CONST:
|
||||||
case CONST_PI:
|
case CONST_PI:
|
||||||
case CONST_INF:
|
case CONST_INF:
|
||||||
case CONST_NAN:
|
case CONST_NAN:
|
||||||
|
|
@ -234,7 +234,7 @@ bool GDScriptTokenizer::Token::is_node_name() const {
|
||||||
case FOR:
|
case FOR:
|
||||||
case FUNC:
|
case FUNC:
|
||||||
case IF:
|
case IF:
|
||||||
case IN:
|
case TK_IN:
|
||||||
case IS:
|
case IS:
|
||||||
case MATCH:
|
case MATCH:
|
||||||
case NAMESPACE:
|
case NAMESPACE:
|
||||||
|
|
@ -250,7 +250,7 @@ bool GDScriptTokenizer::Token::is_node_name() const {
|
||||||
case TRAIT:
|
case TRAIT:
|
||||||
case UNDERSCORE:
|
case UNDERSCORE:
|
||||||
case VAR:
|
case VAR:
|
||||||
case VOID:
|
case TK_VOID:
|
||||||
case WHILE:
|
case WHILE:
|
||||||
case WHEN:
|
case WHEN:
|
||||||
case YIELD:
|
case YIELD:
|
||||||
|
|
@ -505,7 +505,7 @@ GDScriptTokenizer::Token GDScriptTokenizerText::annotation() {
|
||||||
KEYWORD_GROUP('c') \
|
KEYWORD_GROUP('c') \
|
||||||
KEYWORD("class", Token::CLASS) \
|
KEYWORD("class", Token::CLASS) \
|
||||||
KEYWORD("class_name", Token::CLASS_NAME) \
|
KEYWORD("class_name", Token::CLASS_NAME) \
|
||||||
KEYWORD("const", Token::CONST) \
|
KEYWORD("const", Token::TK_CONST) \
|
||||||
KEYWORD("continue", Token::CONTINUE) \
|
KEYWORD("continue", Token::CONTINUE) \
|
||||||
KEYWORD_GROUP('e') \
|
KEYWORD_GROUP('e') \
|
||||||
KEYWORD("elif", Token::ELIF) \
|
KEYWORD("elif", Token::ELIF) \
|
||||||
|
|
@ -517,7 +517,7 @@ GDScriptTokenizer::Token GDScriptTokenizerText::annotation() {
|
||||||
KEYWORD("func", Token::FUNC) \
|
KEYWORD("func", Token::FUNC) \
|
||||||
KEYWORD_GROUP('i') \
|
KEYWORD_GROUP('i') \
|
||||||
KEYWORD("if", Token::IF) \
|
KEYWORD("if", Token::IF) \
|
||||||
KEYWORD("in", Token::IN) \
|
KEYWORD("in", Token::TK_IN) \
|
||||||
KEYWORD("is", Token::IS) \
|
KEYWORD("is", Token::IS) \
|
||||||
KEYWORD_GROUP('m') \
|
KEYWORD_GROUP('m') \
|
||||||
KEYWORD("match", Token::MATCH) \
|
KEYWORD("match", Token::MATCH) \
|
||||||
|
|
@ -540,7 +540,7 @@ GDScriptTokenizer::Token GDScriptTokenizerText::annotation() {
|
||||||
KEYWORD("trait", Token::TRAIT) \
|
KEYWORD("trait", Token::TRAIT) \
|
||||||
KEYWORD_GROUP('v') \
|
KEYWORD_GROUP('v') \
|
||||||
KEYWORD("var", Token::VAR) \
|
KEYWORD("var", Token::VAR) \
|
||||||
KEYWORD("void", Token::VOID) \
|
KEYWORD("void", Token::TK_VOID) \
|
||||||
KEYWORD_GROUP('w') \
|
KEYWORD_GROUP('w') \
|
||||||
KEYWORD("while", Token::WHILE) \
|
KEYWORD("while", Token::WHILE) \
|
||||||
KEYWORD("when", Token::WHEN) \
|
KEYWORD("when", Token::WHEN) \
|
||||||
|
|
|
||||||
|
|
@ -35,12 +35,6 @@
|
||||||
#include "core/templates/vector.h"
|
#include "core/templates/vector.h"
|
||||||
#include "core/variant/variant.h"
|
#include "core/variant/variant.h"
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#undef CONST
|
|
||||||
#undef IN
|
|
||||||
#undef VOID
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class GDScriptTokenizer {
|
class GDScriptTokenizer {
|
||||||
public:
|
public:
|
||||||
enum CursorPlace {
|
enum CursorPlace {
|
||||||
|
|
@ -117,11 +111,11 @@ public:
|
||||||
BREAKPOINT,
|
BREAKPOINT,
|
||||||
CLASS,
|
CLASS,
|
||||||
CLASS_NAME,
|
CLASS_NAME,
|
||||||
CONST,
|
TK_CONST, // Conflict with WinAPI.
|
||||||
ENUM,
|
ENUM,
|
||||||
EXTENDS,
|
EXTENDS,
|
||||||
FUNC,
|
FUNC,
|
||||||
IN,
|
TK_IN, // Conflict with WinAPI.
|
||||||
IS,
|
IS,
|
||||||
NAMESPACE,
|
NAMESPACE,
|
||||||
PRELOAD,
|
PRELOAD,
|
||||||
|
|
@ -131,7 +125,7 @@ public:
|
||||||
SUPER,
|
SUPER,
|
||||||
TRAIT,
|
TRAIT,
|
||||||
VAR,
|
VAR,
|
||||||
VOID,
|
TK_VOID, // Conflict with WinAPI.
|
||||||
YIELD,
|
YIELD,
|
||||||
// Punctuation
|
// Punctuation
|
||||||
BRACKET_OPEN,
|
BRACKET_OPEN,
|
||||||
|
|
|
||||||
|
|
@ -43,11 +43,6 @@
|
||||||
#include "main/main.h"
|
#include "main/main.h"
|
||||||
#include "scene/gui/line_edit.h"
|
#include "scene/gui/line_edit.h"
|
||||||
|
|
||||||
#ifdef MINGW_ENABLED
|
|
||||||
#define near
|
|
||||||
#define far
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef WINDOWS_ENABLED
|
#ifdef WINDOWS_ENABLED
|
||||||
#include <shlwapi.h>
|
#include <shlwapi.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue