summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugo Locurcio <hugo.locurcio@hugo.pro>2019-08-24 04:53:14 +0200
committerHugo Locurcio <hugo.locurcio@hugo.pro>2019-09-03 15:16:58 +0200
commita4a0295154fde6ef478df0b157d950bfaaf561a5 (patch)
treede64aaaf51f6eea9f1019458dd7fbc9268842d1d
parent5323d24fadadbc6c4a109a9848fd9c3ea08f4474 (diff)
Improve sorting options in the asset library
The reverse sorting options are now integrated in the list of sorting options, making the "Reverse" button unnecessary. This pattern tends to be easier to discover by users. The "Downloads" sorting option was also removed as it's not implemented in the backend.
-rw-r--r--editor/plugins/asset_library_editor_plugin.cpp30
-rw-r--r--editor/plugins/asset_library_editor_plugin.h7
2 files changed, 17 insertions, 20 deletions
diff --git a/editor/plugins/asset_library_editor_plugin.cpp b/editor/plugins/asset_library_editor_plugin.cpp
index 60b5f017d2..3d161dc5b9 100644
--- a/editor/plugins/asset_library_editor_plugin.cpp
+++ b/editor/plugins/asset_library_editor_plugin.cpp
@@ -578,7 +578,6 @@ void EditorAssetLibrary::_notification(int p_what) {
case NOTIFICATION_READY: {
error_tr->set_texture(get_icon("Error", "EditorIcons"));
- reverse->set_icon(get_icon("Sort", "EditorIcons"));
filter->set_right_icon(get_icon("Search", "EditorIcons"));
filter->set_clear_button_enabled(true);
@@ -612,7 +611,6 @@ void EditorAssetLibrary::_notification(int p_what) {
library_scroll_bg->add_style_override("panel", get_stylebox("bg", "Tree"));
downloads_scroll->add_style_override("bg", get_stylebox("bg", "Tree"));
error_tr->set_texture(get_icon("Error", "EditorIcons"));
- reverse->set_icon(get_icon("Sort", "EditorIcons"));
filter->set_right_icon(get_icon("Search", "EditorIcons"));
filter->set_clear_button_enabled(true);
} break;
@@ -645,23 +643,27 @@ void EditorAssetLibrary::_install_asset() {
}
const char *EditorAssetLibrary::sort_key[SORT_MAX] = {
- "downloads",
+ "updated",
+ "updated",
"name",
+ "name",
+ "cost",
"cost",
- "updated"
};
const char *EditorAssetLibrary::sort_text[SORT_MAX] = {
- "Downloads",
- "Name",
- "License", // "cost" stores the SPDX license name in the Godot Asset Library.
- "Updated"
+ "Recently Updated",
+ "Least Recently Updated",
+ "Name (A-Z)",
+ "Name (Z-A)",
+ "License (A-Z)", // "cost" stores the SPDX license name in the Godot Asset Library.
+ "License (Z-A)", // "cost" stores the SPDX license name in the Godot Asset Library.
};
const char *EditorAssetLibrary::support_key[SUPPORT_MAX] = {
"official",
"community",
- "testing"
+ "testing",
};
void EditorAssetLibrary::_select_author(int p_id) {
@@ -928,8 +930,8 @@ void EditorAssetLibrary::_search(int p_page) {
args += "&category=" + itos(categories->get_item_metadata(categories->get_selected()));
}
- if (reverse->is_pressed()) {
-
+ // Sorting options with an odd index are always the reverse of the previous one
+ if (sort->get_selected() % 2 == 1) {
args += "&reverse=true";
}
@@ -1381,12 +1383,6 @@ EditorAssetLibrary::EditorAssetLibrary(bool p_templates_only) {
sort->set_h_size_flags(SIZE_EXPAND_FILL);
sort->connect("item_selected", this, "_rerun_search");
- reverse = memnew(ToolButton);
- reverse->set_toggle_mode(true);
- reverse->connect("toggled", this, "_rerun_search");
- reverse->set_tooltip(TTR("Reverse sorting."));
- search_hb2->add_child(reverse);
-
search_hb2->add_child(memnew(VSeparator));
search_hb2->add_child(memnew(Label(TTR("Category:") + " ")));
diff --git a/editor/plugins/asset_library_editor_plugin.h b/editor/plugins/asset_library_editor_plugin.h
index 6a3158889e..7e934ac6cb 100644
--- a/editor/plugins/asset_library_editor_plugin.h
+++ b/editor/plugins/asset_library_editor_plugin.h
@@ -190,7 +190,6 @@ class EditorAssetLibrary : public PanelContainer {
OptionButton *categories;
OptionButton *repository;
OptionButton *sort;
- ToolButton *reverse;
Button *search;
HBoxContainer *error_hb;
TextureRect *error_tr;
@@ -216,10 +215,12 @@ class EditorAssetLibrary : public PanelContainer {
};
enum SortOrder {
- SORT_DOWNLOADS,
+ SORT_UPDATED,
+ SORT_UPDATED_REVERSE,
SORT_NAME,
+ SORT_NAME_REVERSE,
SORT_COST,
- SORT_UPDATED,
+ SORT_COST_REVERSE,
SORT_MAX
};