diff options
author | bunnei <bunneidev@gmail.com> | 2018-09-27 17:09:11 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-27 17:09:11 -0400 |
commit | f7da74d18e977aa94d19e7dc6a19e75df48708e4 (patch) | |
tree | 10092377231b349f48fb0c98ad98ebfe7905ba58 /src/yuzu/game_list_p.h | |
parent | fc2419e441dbd2270460c8fe7a92e515c0789fa5 (diff) | |
parent | 44228ee3ed5ab70c47f766a597893152027f8153 (diff) |
Merge pull request #1360 from FearlessTobi/port-3979
Port citra-emu/citra#3979 game_list: move SearchField to game_list_p.h and fix untranslated text
Diffstat (limited to 'src/yuzu/game_list_p.h')
-rw-r--r-- | src/yuzu/game_list_p.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/src/yuzu/game_list_p.h b/src/yuzu/game_list_p.h index cee109730..3db0e90da 100644 --- a/src/yuzu/game_list_p.h +++ b/src/yuzu/game_list_p.h @@ -16,6 +16,7 @@ #include <QObject> #include <QStandardItem> #include <QString> +#include <QWidget> #include "common/common_types.h" #include "common/logging/log.h" @@ -176,3 +177,42 @@ public: return data(SizeRole).toULongLong() < other.data(SizeRole).toULongLong(); } }; + +class GameList; +class QHBoxLayout; +class QTreeView; +class QLabel; +class QLineEdit; +class QToolButton; + +class GameListSearchField : public QWidget { + Q_OBJECT + +public: + explicit GameListSearchField(GameList* parent = nullptr); + + void setFilterResult(int visible, int total); + + void clear(); + void setFocus(); + +private: + class KeyReleaseEater : public QObject { + public: + explicit KeyReleaseEater(GameList* gamelist); + + private: + GameList* gamelist = nullptr; + QString edit_filter_text_old; + + protected: + // EventFilter in order to process systemkeys while editing the searchfield + bool eventFilter(QObject* obj, QEvent* event) override; + }; + QHBoxLayout* layout_filter = nullptr; + QTreeView* tree_view = nullptr; + QLabel* label_filter = nullptr; + QLineEdit* edit_filter = nullptr; + QLabel* label_filter_result = nullptr; + QToolButton* button_filter_close = nullptr; +}; |