citra_qt: Rebuilt movie frontend

This is completely rebuilt, in order to allow setting author, displaying movie metadata, and toggling read-only mode.

The UX is changed to more closely match other emulators' behaviour. Now you can only record/play from start/reset (In the future, we might want to introduce 'record from savestate')

Also fixed a critical bug where movie file can be corrupted when ending the recording while game is still running.
This commit is contained in:
zhupengfei
2020-07-06 21:44:17 +08:00
parent 5a42a80f40
commit 113e0c7331
14 changed files with 541 additions and 151 deletions

View File

@@ -0,0 +1,30 @@
// Copyright 2020 Citra Emulator Project
// Licensed under GPLv2 or any later version
// Refer to the license.txt file included.
#include <memory>
#include <QDialog>
class GameList;
namespace Ui {
class MoviePlayDialog;
}
class MoviePlayDialog : public QDialog {
Q_OBJECT
public:
explicit MoviePlayDialog(QWidget* parent, GameList* game_list);
~MoviePlayDialog() override;
QString GetMoviePath() const;
QString GetGamePath() const;
private:
void OnToolButtonClicked();
void UpdateUIDisplay();
std::unique_ptr<Ui::MoviePlayDialog> ui;
GameList* game_list;
};