diff options
author | Zephyron <zephyron@citron-emu.org> | 2024-12-31 16:19:25 +1000 |
---|---|---|
committer | Zephyron <zephyron@citron-emu.org> | 2024-12-31 16:19:25 +1000 |
commit | 9427e27e24a7135880ee2881c3c44988e174b41a (patch) | |
tree | 83f0062a35be144f6b162eaa823c5b3c7620146e /src/yuzu/game_list.h | |
parent | b35ae725d20960411e8588b11c12a2d55f86c9d0 (diff) |
chore: update project branding to citron
Diffstat (limited to 'src/yuzu/game_list.h')
-rw-r--r-- | src/yuzu/game_list.h | 204 |
1 files changed, 0 insertions, 204 deletions
diff --git a/src/yuzu/game_list.h b/src/yuzu/game_list.h deleted file mode 100644 index 79f9c7ec0..000000000 --- a/src/yuzu/game_list.h +++ /dev/null @@ -1,204 +0,0 @@ -// SPDX-FileCopyrightText: 2015 Citra Emulator Project -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#include <QFileSystemWatcher> -#include <QLabel> -#include <QLineEdit> -#include <QList> -#include <QStandardItemModel> -#include <QString> -#include <QTreeView> -#include <QVBoxLayout> -#include <QVector> -#include <QWidget> - -#include "common/common_types.h" -#include "core/core.h" -#include "uisettings.h" -#include "yuzu/compatibility_list.h" -#include "yuzu/play_time_manager.h" - -namespace Core { -class System; -} - -class ControllerNavigation; -class GameListWorker; -class GameListSearchField; -class GameListDir; -class GMainWindow; -enum class AmLaunchType; -enum class StartGameType; - -namespace FileSys { -class ManualContentProvider; -class VfsFilesystem; -} // namespace FileSys - -enum class GameListOpenTarget { - SaveData, - ModData, -}; - -enum class GameListRemoveTarget { - GlShaderCache, - VkShaderCache, - AllShaderCache, - CustomConfiguration, - CacheStorage, -}; - -enum class DumpRomFSTarget { - Normal, - SDMC, -}; - -enum class GameListShortcutTarget { - Desktop, - Applications, -}; - -enum class InstalledEntryType { - Game, - Update, - AddOnContent, -}; - -class GameList : public QWidget { - Q_OBJECT - -public: - enum { - COLUMN_NAME, - COLUMN_COMPATIBILITY, - COLUMN_ADD_ONS, - COLUMN_FILE_TYPE, - COLUMN_SIZE, - COLUMN_PLAY_TIME, - COLUMN_COUNT, // Number of columns - }; - - explicit GameList(std::shared_ptr<FileSys::VfsFilesystem> vfs_, - FileSys::ManualContentProvider* provider_, - PlayTime::PlayTimeManager& play_time_manager_, Core::System& system_, - GMainWindow* parent = nullptr); - ~GameList() override; - - QString GetLastFilterResultItem() const; - void ClearFilter(); - void SetFilterFocus(); - void SetFilterVisible(bool visibility); - bool IsEmpty() const; - - void LoadCompatibilityList(); - void PopulateAsync(QVector<UISettings::GameDir>& game_dirs); - - void SaveInterfaceLayout(); - void LoadInterfaceLayout(); - - QStandardItemModel* GetModel() const; - - /// Disables events from the emulated controller - void UnloadController(); - - static const QStringList supported_file_extensions; - -signals: - void BootGame(const QString& game_path, StartGameType type); - void GameChosen(const QString& game_path, const u64 title_id = 0); - void OpenFolderRequested(u64 program_id, GameListOpenTarget target, - const std::string& game_path); - void OpenTransferableShaderCacheRequested(u64 program_id); - void RemoveInstalledEntryRequested(u64 program_id, InstalledEntryType type); - void RemoveFileRequested(u64 program_id, GameListRemoveTarget target, - const std::string& game_path); - void RemovePlayTimeRequested(u64 program_id); - void DumpRomFSRequested(u64 program_id, const std::string& game_path, DumpRomFSTarget target); - void VerifyIntegrityRequested(const std::string& game_path); - void CopyTIDRequested(u64 program_id); - void CreateShortcut(u64 program_id, const std::string& game_path, - GameListShortcutTarget target); - void NavigateToGamedbEntryRequested(u64 program_id, - const CompatibilityList& compatibility_list); - void OpenPerGameGeneralRequested(const std::string& file); - void OpenDirectory(const QString& directory); - void AddDirectory(); - void ShowList(bool show); - void PopulatingCompleted(); - void SaveConfig(); - -private slots: - void OnItemExpanded(const QModelIndex& item); - void OnTextChanged(const QString& new_text); - void OnFilterCloseClicked(); - void OnUpdateThemedIcons(); - -private: - friend class GameListWorker; - void WorkerEvent(); - - void AddDirEntry(GameListDir* entry_items); - void AddEntry(const QList<QStandardItem*>& entry_items, GameListDir* parent); - void DonePopulating(const QStringList& watch_list); - -private: - void ValidateEntry(const QModelIndex& item); - - void RefreshGameDirectory(); - - void ToggleFavorite(u64 program_id); - void AddFavorite(u64 program_id); - void RemoveFavorite(u64 program_id); - - void PopupContextMenu(const QPoint& menu_location); - void AddGamePopup(QMenu& context_menu, u64 program_id, const std::string& path); - void AddCustomDirPopup(QMenu& context_menu, QModelIndex selected); - void AddPermDirPopup(QMenu& context_menu, QModelIndex selected); - void AddFavoritesPopup(QMenu& context_menu); - - void changeEvent(QEvent*) override; - void RetranslateUI(); - - std::shared_ptr<FileSys::VfsFilesystem> vfs; - FileSys::ManualContentProvider* provider; - GameListSearchField* search_field; - GMainWindow* main_window = nullptr; - QVBoxLayout* layout = nullptr; - QTreeView* tree_view = nullptr; - QStandardItemModel* item_model = nullptr; - std::unique_ptr<GameListWorker> current_worker; - QFileSystemWatcher* watcher = nullptr; - ControllerNavigation* controller_navigation = nullptr; - CompatibilityList compatibility_list; - - friend class GameListSearchField; - - const PlayTime::PlayTimeManager& play_time_manager; - Core::System& system; -}; - -class GameListPlaceholder : public QWidget { - Q_OBJECT -public: - explicit GameListPlaceholder(GMainWindow* parent = nullptr); - ~GameListPlaceholder(); - -signals: - void AddDirectory(); - -private slots: - void onUpdateThemedIcons(); - -protected: - void mouseDoubleClickEvent(QMouseEvent* event) override; - -private: - void changeEvent(QEvent* event) override; - void RetranslateUI(); - - QVBoxLayout* layout = nullptr; - QLabel* image = nullptr; - QLabel* text = nullptr; -}; |