Initial implementation of a game list
This commit is contained in:
parent
f297a59985
commit
6e1bb58ee8
6 changed files with 356 additions and 2 deletions
48
src/citra_qt/game_list.h
Normal file
48
src/citra_qt/game_list.h
Normal file
|
@ -0,0 +1,48 @@
|
|||
// Copyright 2015 Citra Emulator Project
|
||||
// Licensed under GPLv2 or any later version
|
||||
// Refer to the license.txt file included.
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <QModelIndex>
|
||||
#include <QStandardItem>
|
||||
#include <QStandardItemModel>
|
||||
#include <QString>
|
||||
#include <QTreeView>
|
||||
#include <QWidget>
|
||||
|
||||
class GameListWorker;
|
||||
|
||||
|
||||
class GameList : public QWidget {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
enum {
|
||||
COLUMN_FILE_TYPE,
|
||||
COLUMN_NAME,
|
||||
COLUMN_SIZE,
|
||||
COLUMN_COUNT, // Number of columns
|
||||
};
|
||||
|
||||
GameList(QWidget* parent = nullptr);
|
||||
~GameList() override;
|
||||
|
||||
void PopulateAsync(const QString& dir_path, bool deep_scan);
|
||||
|
||||
public slots:
|
||||
void AddEntry(QList<QStandardItem*> entry_items);
|
||||
|
||||
private slots:
|
||||
void ValidateEntry(const QModelIndex& item);
|
||||
void DonePopulating();
|
||||
|
||||
signals:
|
||||
void GameChosen(QString game_path);
|
||||
void ShouldCancelWorker();
|
||||
|
||||
private:
|
||||
QTreeView* tree_view = nullptr;
|
||||
QStandardItemModel* item_model = nullptr;
|
||||
GameListWorker* current_worker = nullptr;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue