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
No known key found for this signature in database
GPG key ID: DD129E108BD09378
14 changed files with 541 additions and 151 deletions

View file

@ -163,7 +163,9 @@
</property>
<addaction name="action_Record_Movie"/>
<addaction name="action_Play_Movie"/>
<addaction name="action_Stop_Recording_Playback"/>
<addaction name="action_Close_Movie"/>
<addaction name="separator"/>
<addaction name="action_Movie_Read_Only_Mode"/>
</widget>
<widget class="QMenu" name="menu_Frame_Advance">
<property name="title">
@ -318,27 +320,29 @@
</property>
</action>
<action name="action_Record_Movie">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string>Record Movie</string>
<string>Record...</string>
</property>
</action>
<action name="action_Play_Movie">
<property name="enabled">
<property name="text">
<string>Play...</string>
</property>
</action>
<action name="action_Close_Movie">
<property name="text">
<string>Close</string>
</property>
</action>
<action name="action_Movie_Read_Only_Mode">
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>true</bool>
</property>
<property name="text">
<string>Play Movie</string>
</property>
</action>
<action name="action_Stop_Recording_Playback">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Stop Recording / Playback</string>
<string>Read-Only Mode</string>
</property>
</action>
<action name="action_Enable_Frame_Advancing">