| 2165 | } |
| 2166 | |
| 2167 | void loadStateFrom (void) |
| 2168 | { |
| 2169 | GtkWidget *fileChooser; |
| 2170 | GtkFileFilter *filterFcs; |
| 2171 | GtkFileFilter *filterSav; |
| 2172 | GtkFileFilter *filterAll; |
| 2173 | |
| 2174 | filterSav = gtk_file_filter_new (); |
| 2175 | gtk_file_filter_add_pattern (filterSav, "*.sav"); |
| 2176 | gtk_file_filter_add_pattern (filterSav, "*.SAV"); |
| 2177 | gtk_file_filter_set_name (filterSav, "SAV files"); |
| 2178 | |
| 2179 | filterFcs = gtk_file_filter_new (); |
| 2180 | gtk_file_filter_add_pattern (filterFcs, "*.fc?"); |
| 2181 | gtk_file_filter_add_pattern (filterFcs, "*.FC?"); |
| 2182 | gtk_file_filter_set_name (filterFcs, "FCS files"); |
| 2183 | |
| 2184 | filterAll = gtk_file_filter_new (); |
| 2185 | gtk_file_filter_add_pattern (filterAll, "*"); |
| 2186 | gtk_file_filter_set_name (filterAll, "All Files"); |
| 2187 | |
| 2188 | fileChooser = |
| 2189 | gtk_file_chooser_dialog_new ("Load State From", |
| 2190 | GTK_WINDOW (MainWindow), |
| 2191 | GTK_FILE_CHOOSER_ACTION_OPEN, |
| 2192 | "_Cancel", GTK_RESPONSE_CANCEL, |
| 2193 | "_Open", GTK_RESPONSE_ACCEPT, |
| 2194 | NULL); |
| 2195 | |
| 2196 | const char *last_dir; |
| 2197 | g_config->getOption ("SDL.LastLoadStateFrom", &last_dir); |
| 2198 | gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (fileChooser), |
| 2199 | last_dir); |
| 2200 | |
| 2201 | gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterFcs); |
| 2202 | gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterSav); |
| 2203 | gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (fileChooser), filterAll); |
| 2204 | |
| 2205 | if (gtk_dialog_run (GTK_DIALOG (fileChooser)) == GTK_RESPONSE_ACCEPT) |
| 2206 | { |
| 2207 | char *filename; |
| 2208 | |
| 2209 | filename = |
| 2210 | gtk_file_chooser_get_filename (GTK_FILE_CHOOSER |
| 2211 | (fileChooser)); |
| 2212 | FCEUI_LoadState (filename); |
| 2213 | g_config->setOption ("SDL.LastLoadStateFrom", filename); |
| 2214 | g_free (filename); |
| 2215 | } |
| 2216 | gtk_widget_destroy (fileChooser); |
| 2217 | } |
| 2218 | |
| 2219 | void quickLoad (void) |
| 2220 | { |
no test coverage detected