GTK: added exceptions for lua scripts, movies, fds bios

This commit is contained in:
punkrockguy318 2010-02-25 06:43:24 +00:00
parent cd2d6c5dc5
commit 5a9cbdc615
1 changed files with 32 additions and 8 deletions

View File

@ -838,11 +838,20 @@ void loadMovie ()
char* fname; char* fname;
fname = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser)); fname = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser));
gtk_widget_destroy (fileChooser);
static int pauseframe; static int pauseframe;
g_config->getOption("SDL.PauseFrame", &pauseframe); g_config->getOption("SDL.PauseFrame", &pauseframe);
g_config->setOption("SDL.PauseFrame", 0); g_config->setOption("SDL.PauseFrame", 0);
FCEUI_printf("Playing back movie located at %s\n", fname); FCEUI_printf("Playing back movie located at %s\n", fname);
FCEUI_LoadMovie(fname, false, false, pauseframe ? pauseframe : false); if(FCEUI_LoadMovie(fname, false, false, pauseframe ? pauseframe : false) == FALSE)
{
GtkWidget* d;
d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
"Could not open the selected FM2 file.");
gtk_dialog_run(GTK_DIALOG(d));
gtk_widget_destroy(d);
}
g_free(fname); g_free(fname);
} }
gtk_widget_destroy (fileChooser); gtk_widget_destroy (fileChooser);
@ -875,9 +884,18 @@ void loadLua ()
char* filename; char* filename;
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser)); filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser));
FCEU_LoadLuaCode(filename); gtk_widget_destroy(fileChooser);
if(FCEU_LoadLuaCode(filename) == 0)
{
GtkWidget* d;
d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
"Could not open the selected lua script.");
gtk_dialog_run(GTK_DIALOG(d));
gtk_widget_destroy(d);
}
g_free(filename); g_free(filename);
} }
else
gtk_widget_destroy (fileChooser); gtk_widget_destroy (fileChooser);
} }
#endif #endif
@ -919,12 +937,17 @@ void loadFdsBios ()
std::ifstream f1 (filename,std::fstream::binary); std::ifstream f1 (filename,std::fstream::binary);
std::string fn_out = FCEU_MakeFName(FCEUMKF_FDSROM, 0, ""); std::string fn_out = FCEU_MakeFName(FCEUMKF_FDSROM, 0, "");
std::ofstream f2 (fn_out.c_str(),std::fstream::trunc|std::fstream::binary); std::ofstream f2 (fn_out.c_str(),std::fstream::trunc|std::fstream::binary);
gtk_widget_destroy (fileChooser);
GtkWidget* d;
d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_INFO, GTK_BUTTONS_OK,
"Famicom Disk System BIOS loaded. If you are you having issues, make sure your BIOS file is 8KB in size.");
gtk_dialog_run(GTK_DIALOG(d));
gtk_widget_destroy(d);
f2<<f1.rdbuf(); f2<<f1.rdbuf();
g_free(filename); g_free(filename);
} }
else
gtk_widget_destroy (fileChooser); gtk_widget_destroy (fileChooser);
} }
@ -963,9 +986,10 @@ void loadGame ()
char* filename; char* filename;
filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser)); filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (fileChooser));
gtk_widget_destroy (fileChooser);
if(LoadGame(filename) == 0) if(LoadGame(filename) == 0)
{ {
gtk_widget_destroy (fileChooser);
GtkWidget* d; GtkWidget* d;
d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK, d = gtk_message_dialog_new(GTK_WINDOW(MainWindow), GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
"Could not open the selected ROM file."); "Could not open the selected ROM file.");