True movie slot support
[lsnes.git] / include / plat-wxwidgets / window_romselect.hpp
blob31b5aebad7f4789aa1a2da43a6a6e65657471f58
1 #ifndef _plat_wxwidgets__window_romselect__hpp__included__
2 #define _plat_wxwidgets__window_romselect__hpp__included__
4 #include "core/rom.hpp"
6 #include <string>
7 #include <map>
8 #include <set>
9 #include <wx/wx.h>
10 #include <wx/string.h>
12 #define ROMSELECT_ROM_COUNT 6
14 class wxwin_romselect : public wxFrame
16 public:
17 wxwin_romselect();
18 ~wxwin_romselect();
19 void on_filename_change(wxCommandEvent& e);
20 void on_romtype_change(wxCommandEvent& e);
21 void on_quit(wxCommandEvent& e);
22 void on_open_rom(wxCommandEvent& e);
23 void on_ask_rom_filename(wxCommandEvent& e);
24 loaded_rom* our_rom;
25 private:
26 wxComboBox* romtype_combo;
27 wxComboBox* region_combo;
28 wxStaticText* rom_label[ROMSELECT_ROM_COUNT];
29 wxTextCtrl* rom_name[ROMSELECT_ROM_COUNT];
30 wxButton* rom_change[ROMSELECT_ROM_COUNT];
31 wxCheckBox* rom_headered[ROMSELECT_ROM_COUNT];
32 wxButton* open_rom;
33 wxButton* quit_button;
34 std::string current_rtype;
35 std::string remembered_region;
36 void set_rtype(std::string rtype);
39 class wxwin_patch : public wxFrame
41 public:
42 wxwin_patch(loaded_rom& rom);
43 ~wxwin_patch();
44 void on_patchfile_change(wxCommandEvent& e);
45 void on_ask_patchfile(wxCommandEvent& e);
46 void on_do_patch(wxCommandEvent& e);
47 void on_quit(wxCommandEvent& e);
48 void on_done(wxCommandEvent& e);
49 loaded_rom* our_rom;
50 private:
51 wxComboBox* patch_what;
52 wxStaticText* checksums[ROMSELECT_ROM_COUNT];
53 wxTextCtrl* patchfile;
54 wxButton* choosefile;
55 wxButton* dopatch;
56 wxTextCtrl* patch_offset;
59 class wxwin_project : public wxFrame
61 public:
62 wxwin_project(loaded_rom& rom);
63 ~wxwin_project();
64 void on_file_select(wxCommandEvent& e);
65 void on_new_select(wxCommandEvent& e);
66 void on_filename_change(wxCommandEvent& e);
67 void on_ask_filename(wxCommandEvent& e);
68 void on_quit(wxCommandEvent& e);
69 void on_load(wxCommandEvent& e);
70 loaded_rom* our_rom;
71 private:
72 bool load_file;
73 std::set<std::string> get_sram_set();
74 struct moviefile make_movie();
75 wxTextCtrl* savefile;
76 wxButton* ask_savefile;
77 std::map<std::string, wxTextCtrl*> sram_files;
78 std::map<std::string, wxButton*> sram_choosers;
79 wxComboBox* controller1type;
80 wxComboBox* controller2type;
81 wxTextCtrl* projectname;
82 wxTextCtrl* prefix;
83 wxTextCtrl* rtc_sec;
84 wxTextCtrl* rtc_subsec;
85 wxTextCtrl* authors;
86 wxButton* load;
87 wxButton* quit;
88 std::map<unsigned, std::string> sram_names;
91 #endif