lsnes/ui/tools/state-manager.hpp
2013-05-03 17:47:34 +03:00

39 lines
886 B
C++
Executable file

struct StateManager : Window {
VerticalLayout layout;
ListView stateList;
HorizontalLayout descLayout;
Label descLabel;
LineEdit descEdit;
HorizontalLayout controlLayout;
Widget spacer;
Button loadButton;
Button saveButton;
Button eraseButton;
void synchronize();
void refresh();
void reset();
bool load(const string &filename, unsigned revision);
bool save(const string &filename, unsigned revision);
void slotLoad();
void slotSave();
void slotErase();
string slotLoadDescription(unsigned n);
void slotSaveDescription();
StateManager();
private:
enum : unsigned {
//these valus are standardized across all emulated platforms:
//{ uint32 signature, version, checksum; char description[512]; ... }
HeaderLength = 12,
DescriptionLength = 512,
};
serializer slot[32];
};
extern StateManager *stateManager;