mirror of
https://github.com/godotengine/godot.git
synced 2024-11-22 04:06:14 +00:00
Display editor icons for filesystem dock popup menu options
This commit is contained in:
parent
4ee8ecd3ef
commit
407839daab
@ -2099,6 +2099,7 @@ void FileSystemDock::_file_and_folders_fill_popup(PopupMenu *p_popup, Vector<Str
|
||||
bool all_folders = true;
|
||||
bool all_favorites = true;
|
||||
bool all_not_favorites = true;
|
||||
|
||||
for (int i = 0; i < p_paths.size(); i++) {
|
||||
String fpath = p_paths[i];
|
||||
if (fpath.ends_with("/")) {
|
||||
@ -2128,25 +2129,25 @@ void FileSystemDock::_file_and_folders_fill_popup(PopupMenu *p_popup, Vector<Str
|
||||
if (all_files) {
|
||||
if (all_files_scenes) {
|
||||
if (filenames.size() == 1) {
|
||||
p_popup->add_item(TTR("Open Scene"), FILE_OPEN);
|
||||
p_popup->add_item(TTR("New Inherited Scene"), FILE_INHERIT);
|
||||
p_popup->add_icon_item(get_icon("Load", "EditorIcons"), TTR("Open Scene"), FILE_OPEN);
|
||||
p_popup->add_icon_item(get_icon("CreateNewSceneFrom", "EditorIcons"), TTR("New Inherited Scene"), FILE_INHERIT);
|
||||
} else {
|
||||
p_popup->add_item(TTR("Open Scenes"), FILE_OPEN);
|
||||
p_popup->add_icon_item(get_icon("Load", "EditorIcons"), TTR("Open Scenes"), FILE_OPEN);
|
||||
}
|
||||
p_popup->add_item(TTR("Instance"), FILE_INSTANCE);
|
||||
p_popup->add_icon_item(get_icon("Instance", "EditorIcons"), TTR("Instance"), FILE_INSTANCE);
|
||||
p_popup->add_separator();
|
||||
} else if (filenames.size() == 1) {
|
||||
p_popup->add_item(TTR("Open"), FILE_OPEN);
|
||||
p_popup->add_icon_item(get_icon("Load", "EditorIcons"), TTR("Open"), FILE_OPEN);
|
||||
p_popup->add_separator();
|
||||
}
|
||||
}
|
||||
|
||||
if (p_paths.size() >= 1) {
|
||||
if (!all_favorites) {
|
||||
p_popup->add_item(TTR("Add to Favorites"), FILE_ADD_FAVORITE);
|
||||
p_popup->add_icon_item(get_icon("Favorites", "EditorIcons"), TTR("Add to Favorites"), FILE_ADD_FAVORITE);
|
||||
}
|
||||
if (!all_not_favorites) {
|
||||
p_popup->add_item(TTR("Remove from Favorites"), FILE_REMOVE_FAVORITE);
|
||||
p_popup->add_icon_item(get_icon("NonFavorite", "EditorIcons"), TTR("Remove from Favorites"), FILE_REMOVE_FAVORITE);
|
||||
}
|
||||
p_popup->add_separator();
|
||||
}
|
||||
@ -2159,36 +2160,36 @@ void FileSystemDock::_file_and_folders_fill_popup(PopupMenu *p_popup, Vector<Str
|
||||
}
|
||||
|
||||
} else if (all_folders && foldernames.size() > 0) {
|
||||
p_popup->add_item(TTR("Open"), FILE_OPEN);
|
||||
p_popup->add_icon_item(get_icon("Load", "EditorIcons"), TTR("Open"), FILE_OPEN);
|
||||
p_popup->add_separator();
|
||||
}
|
||||
|
||||
if (p_paths.size() == 1) {
|
||||
p_popup->add_item(TTR("Copy Path"), FILE_COPY_PATH);
|
||||
p_popup->add_icon_item(get_icon("ActionCopy", "EditorIcons"), TTR("Copy Path"), FILE_COPY_PATH);
|
||||
if (p_paths[0] != "res://") {
|
||||
p_popup->add_item(TTR("Rename..."), FILE_RENAME);
|
||||
p_popup->add_item(TTR("Duplicate..."), FILE_DUPLICATE);
|
||||
p_popup->add_icon_item(get_icon("Rename", "EditorIcons"), TTR("Rename..."), FILE_RENAME);
|
||||
p_popup->add_icon_item(get_icon("Duplicate", "EditorIcons"), TTR("Duplicate..."), FILE_DUPLICATE);
|
||||
}
|
||||
}
|
||||
|
||||
if (p_paths.size() > 1 || p_paths[0] != "res://") {
|
||||
p_popup->add_item(TTR("Move To..."), FILE_MOVE);
|
||||
p_popup->add_item(TTR("Delete"), FILE_REMOVE);
|
||||
p_popup->add_icon_item(get_icon("MoveUp", "EditorIcons"), TTR("Move To..."), FILE_MOVE);
|
||||
p_popup->add_icon_item(get_icon("Remove", "EditorIcons"), TTR("Delete"), FILE_REMOVE);
|
||||
}
|
||||
|
||||
if (p_paths.size() == 1) {
|
||||
p_popup->add_separator();
|
||||
if (p_display_path_dependent_options) {
|
||||
p_popup->add_item(TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
p_popup->add_item(TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
p_popup->add_item(TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
p_popup->add_item(TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
p_popup->add_icon_item(get_icon("Folder", "EditorIcons"), TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
p_popup->add_icon_item(get_icon("PackedScene", "EditorIcons"), TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
p_popup->add_icon_item(get_icon("Script", "EditorIcons"), TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
p_popup->add_icon_item(get_icon("Object", "EditorIcons"), TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
p_popup->add_separator();
|
||||
}
|
||||
|
||||
String fpath = p_paths[0];
|
||||
String item_text = fpath.ends_with("/") ? TTR("Open in File Manager") : TTR("Show in File Manager");
|
||||
p_popup->add_item(item_text, FILE_SHOW_IN_EXPLORER);
|
||||
p_popup->add_icon_item(get_icon("Filesystem", "EditorIcons"), item_text, FILE_SHOW_IN_EXPLORER);
|
||||
}
|
||||
}
|
||||
|
||||
@ -2198,8 +2199,8 @@ void FileSystemDock::_tree_rmb_select(const Vector2 &p_pos) {
|
||||
|
||||
if (paths.size() == 1) {
|
||||
if (paths[0].ends_with("/")) {
|
||||
tree_popup->add_item(TTR("Expand All"), FOLDER_EXPAND_ALL);
|
||||
tree_popup->add_item(TTR("Collapse All"), FOLDER_COLLAPSE_ALL);
|
||||
tree_popup->add_icon_item(get_icon("GuiTreeArrowDown", "EditorIcons"), TTR("Expand All"), FOLDER_EXPAND_ALL);
|
||||
tree_popup->add_icon_item(get_icon("GuiTreeArrowRight", "EditorIcons"), TTR("Collapse All"), FOLDER_COLLAPSE_ALL);
|
||||
tree_popup->add_separator();
|
||||
}
|
||||
}
|
||||
@ -2219,10 +2220,10 @@ void FileSystemDock::_tree_rmb_empty(const Vector2 &p_pos) {
|
||||
path = "res://";
|
||||
tree_popup->clear();
|
||||
tree_popup->set_size(Size2(1, 1));
|
||||
tree_popup->add_item(TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
tree_popup->add_item(TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
tree_popup->add_item(TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
tree_popup->add_item(TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
tree_popup->add_icon_item(get_icon("Folder", "EditorIcons"), TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
tree_popup->add_icon_item(get_icon("PackedScene", "EditorIcons"), TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
tree_popup->add_icon_item(get_icon("Script", "EditorIcons"), TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
tree_popup->add_icon_item(get_icon("Object", "EditorIcons"), TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
tree_popup->set_position(tree->get_global_position() + p_pos);
|
||||
tree_popup->popup();
|
||||
}
|
||||
@ -2262,12 +2263,12 @@ void FileSystemDock::_file_list_rmb_pressed(const Vector2 &p_pos) {
|
||||
file_list_popup->clear();
|
||||
file_list_popup->set_size(Size2(1, 1));
|
||||
|
||||
file_list_popup->add_item(TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
file_list_popup->add_item(TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
file_list_popup->add_item(TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
file_list_popup->add_item(TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
file_list_popup->add_icon_item(get_icon("Folder", "EditorIcons"), TTR("New Folder..."), FILE_NEW_FOLDER);
|
||||
file_list_popup->add_icon_item(get_icon("PackedScene", "EditorIcons"), TTR("New Scene..."), FILE_NEW_SCENE);
|
||||
file_list_popup->add_icon_item(get_icon("Script", "EditorIcons"), TTR("New Script..."), FILE_NEW_SCRIPT);
|
||||
file_list_popup->add_icon_item(get_icon("Object", "EditorIcons"), TTR("New Resource..."), FILE_NEW_RESOURCE);
|
||||
file_list_popup->add_separator();
|
||||
file_list_popup->add_item(TTR("Open in File Manager"), FILE_SHOW_IN_EXPLORER);
|
||||
file_list_popup->add_icon_item(get_icon("Filesystem", "EditorIcons"), TTR("Open in File Manager"), FILE_SHOW_IN_EXPLORER);
|
||||
file_list_popup->set_position(files->get_global_position() + p_pos);
|
||||
file_list_popup->popup();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user