summaryrefslogtreecommitdiff
path: root/src/citra_qt/main.cpp
diff options
context:
space:
mode:
authorGravatar Nico Bosshard2017-04-30 04:04:39 +0200
committerGravatar bunnei2017-04-29 22:04:39 -0400
commit06d4654966ba9909111b1bab36e88f4f15e9cb6d (patch)
tree30517eaa10e6b704fe008c2bb2f704f6cec35178 /src/citra_qt/main.cpp
parentMerge pull request #2671 from wwylele/dot3-rgba (diff)
downloadyuzu-06d4654966ba9909111b1bab36e88f4f15e9cb6d.tar.gz
yuzu-06d4654966ba9909111b1bab36e88f4f15e9cb6d.tar.xz
yuzu-06d4654966ba9909111b1bab36e88f4f15e9cb6d.zip
citra-qt: game list search function (#2673)
* citra-qt: game list search function * Empty search field during game list refresh * Code improvements * Code formatting * Autofocus search field * JayFoxRox's recommendations * lioncash's review
Diffstat (limited to 'src/citra_qt/main.cpp')
-rw-r--r--src/citra_qt/main.cpp23
1 files changed, 22 insertions, 1 deletions
diff --git a/src/citra_qt/main.cpp b/src/citra_qt/main.cpp
index b17ed6968..ea66cc425 100644
--- a/src/citra_qt/main.cpp
+++ b/src/citra_qt/main.cpp
@@ -93,7 +93,7 @@ void GMainWindow::InitializeWidgets() {
93 render_window = new GRenderWindow(this, emu_thread.get()); 93 render_window = new GRenderWindow(this, emu_thread.get());
94 render_window->hide(); 94 render_window->hide();
95 95
96 game_list = new GameList(); 96 game_list = new GameList(this);
97 ui.horizontalLayout->addWidget(game_list); 97 ui.horizontalLayout->addWidget(game_list);
98 98
99 // Create status bar 99 // Create status bar
@@ -247,6 +247,9 @@ void GMainWindow::RestoreUIState() {
247 ui.action_Display_Dock_Widget_Headers->setChecked(UISettings::values.display_titlebar); 247 ui.action_Display_Dock_Widget_Headers->setChecked(UISettings::values.display_titlebar);
248 OnDisplayTitleBars(ui.action_Display_Dock_Widget_Headers->isChecked()); 248 OnDisplayTitleBars(ui.action_Display_Dock_Widget_Headers->isChecked());
249 249
250 ui.action_Show_Filter_Bar->setChecked(UISettings::values.show_filter_bar);
251 game_list->setFilterVisible(ui.action_Show_Filter_Bar->isChecked());
252
250 ui.action_Show_Status_Bar->setChecked(UISettings::values.show_status_bar); 253 ui.action_Show_Status_Bar->setChecked(UISettings::values.show_status_bar);
251 statusBar()->setVisible(ui.action_Show_Status_Bar->isChecked()); 254 statusBar()->setVisible(ui.action_Show_Status_Bar->isChecked());
252} 255}
@@ -283,6 +286,8 @@ void GMainWindow::ConnectMenuEvents() {
283 &GMainWindow::ToggleWindowMode); 286 &GMainWindow::ToggleWindowMode);
284 connect(ui.action_Display_Dock_Widget_Headers, &QAction::triggered, this, 287 connect(ui.action_Display_Dock_Widget_Headers, &QAction::triggered, this,
285 &GMainWindow::OnDisplayTitleBars); 288 &GMainWindow::OnDisplayTitleBars);
289 ui.action_Show_Filter_Bar->setShortcut(tr("CTRL+F"));
290 connect(ui.action_Show_Filter_Bar, &QAction::triggered, this, &GMainWindow::OnToggleFilterBar);
286 connect(ui.action_Show_Status_Bar, &QAction::triggered, statusBar(), &QStatusBar::setVisible); 291 connect(ui.action_Show_Status_Bar, &QAction::triggered, statusBar(), &QStatusBar::setVisible);
287} 292}
288 293
@@ -444,6 +449,7 @@ void GMainWindow::ShutdownGame() {
444 ui.action_Stop->setEnabled(false); 449 ui.action_Stop->setEnabled(false);
445 render_window->hide(); 450 render_window->hide();
446 game_list->show(); 451 game_list->show();
452 game_list->setFilterFocus();
447 453
448 // Disable status bar updates 454 // Disable status bar updates
449 status_bar_update_timer.stop(); 455 status_bar_update_timer.stop();
@@ -617,6 +623,15 @@ void GMainWindow::OnConfigure() {
617 } 623 }
618} 624}
619 625
626void GMainWindow::OnToggleFilterBar() {
627 game_list->setFilterVisible(ui.action_Show_Filter_Bar->isChecked());
628 if (ui.action_Show_Filter_Bar->isChecked()) {
629 game_list->setFilterFocus();
630 } else {
631 game_list->clearFilter();
632 }
633}
634
620void GMainWindow::OnSwapScreens() { 635void GMainWindow::OnSwapScreens() {
621 Settings::values.swap_screen = !Settings::values.swap_screen; 636 Settings::values.swap_screen = !Settings::values.swap_screen;
622 Settings::Apply(); 637 Settings::Apply();
@@ -671,6 +686,7 @@ void GMainWindow::closeEvent(QCloseEvent* event) {
671#endif 686#endif
672 UISettings::values.single_window_mode = ui.action_Single_Window_Mode->isChecked(); 687 UISettings::values.single_window_mode = ui.action_Single_Window_Mode->isChecked();
673 UISettings::values.display_titlebar = ui.action_Display_Dock_Widget_Headers->isChecked(); 688 UISettings::values.display_titlebar = ui.action_Display_Dock_Widget_Headers->isChecked();
689 UISettings::values.show_filter_bar = ui.action_Show_Filter_Bar->isChecked();
674 UISettings::values.show_status_bar = ui.action_Show_Status_Bar->isChecked(); 690 UISettings::values.show_status_bar = ui.action_Show_Status_Bar->isChecked();
675 UISettings::values.first_start = false; 691 UISettings::values.first_start = false;
676 692
@@ -720,6 +736,11 @@ bool GMainWindow::ConfirmChangeGame() {
720 return answer != QMessageBox::No; 736 return answer != QMessageBox::No;
721} 737}
722 738
739void GMainWindow::filterBarSetChecked(bool state) {
740 ui.action_Show_Filter_Bar->setChecked(state);
741 emit(OnToggleFilterBar());
742}
743
723#ifdef main 744#ifdef main
724#undef main 745#undef main
725#endif 746#endif