Add a button to quickly repeat last search in files

(cherry picked from commit 8c80b602ac)
This commit is contained in:
Yuri Sizov 2020-02-10 16:04:15 +03:00 committed by Rémi Verschelde
parent c75459ac95
commit 04b3e208fa
2 changed files with 16 additions and 0 deletions

View file

@ -533,6 +533,12 @@ FindInFilesPanel::FindInFilesPanel() {
_status_label = memnew(Label);
hbc->add_child(_status_label);
_refresh_button = memnew(Button);
_refresh_button->set_text(TTR("Refresh"));
_refresh_button->connect("pressed", this, "_on_refresh_button_clicked");
_refresh_button->hide();
hbc->add_child(_refresh_button);
_cancel_button = memnew(Button);
_cancel_button->set_text(TTR("Cancel"));
_cancel_button->connect("pressed", this, "_on_cancel_button_clicked");
@ -616,6 +622,7 @@ void FindInFilesPanel::start_search() {
_finder->start();
update_replace_buttons();
_refresh_button->hide();
_cancel_button->show();
}
@ -626,6 +633,7 @@ void FindInFilesPanel::stop_search() {
_status_label->set_text("");
update_replace_buttons();
set_progress_visible(false);
_refresh_button->show();
_cancel_button->hide();
}
@ -728,9 +736,14 @@ void FindInFilesPanel::_on_finished() {
_status_label->set_text(TTR("Search complete"));
update_replace_buttons();
set_progress_visible(false);
_refresh_button->show();
_cancel_button->hide();
}
void FindInFilesPanel::_on_refresh_button_clicked() {
start_search();
}
void FindInFilesPanel::_on_cancel_button_clicked() {
stop_search();
}
@ -905,6 +918,7 @@ void FindInFilesPanel::_bind_methods() {
ClassDB::bind_method("_on_result_found", &FindInFilesPanel::_on_result_found);
ClassDB::bind_method("_on_item_edited", &FindInFilesPanel::_on_item_edited);
ClassDB::bind_method("_on_finished", &FindInFilesPanel::_on_finished);
ClassDB::bind_method("_on_refresh_button_clicked", &FindInFilesPanel::_on_refresh_button_clicked);
ClassDB::bind_method("_on_cancel_button_clicked", &FindInFilesPanel::_on_cancel_button_clicked);
ClassDB::bind_method("_on_result_selected", &FindInFilesPanel::_on_result_selected);
ClassDB::bind_method("_on_replace_text_changed", &FindInFilesPanel::_on_replace_text_changed);

View file

@ -163,6 +163,7 @@ protected:
private:
void _on_result_found(String fpath, int line_number, int begin, int end, String text);
void _on_finished();
void _on_refresh_button_clicked();
void _on_cancel_button_clicked();
void _on_result_selected();
void _on_item_edited();
@ -190,6 +191,7 @@ private:
Label *_search_text_label;
Tree *_results_display;
Label *_status_label;
Button *_refresh_button;
Button *_cancel_button;
ProgressBar *_progress_bar;
Map<String, TreeItem *> _file_items;