From af14209f436b192bea58ccd1a3cd132e074cc2c5 Mon Sep 17 00:00:00 2001 From: punkrockguy318 Date: Mon, 21 Dec 2009 12:17:03 +0000 Subject: [PATCH] Added about dialog to gtk2 --- src/drivers/sdl/gui.cpp | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/src/drivers/sdl/gui.cpp b/src/drivers/sdl/gui.cpp index e231369e..6faaf3ae 100644 --- a/src/drivers/sdl/gui.cpp +++ b/src/drivers/sdl/gui.cpp @@ -3,6 +3,9 @@ #include +#include "../../driver.h" +#include "../../version.h" + #include "../common/configSys.h" #include "sdl.h" #include "gui.h" @@ -39,11 +42,38 @@ gint mainLoop(gpointer data) void quit () { + FCEUI_Kill(); SDL_Quit(); gtk_main_quit(); exit(0); } + +GtkWidget* aboutDialog; + +inline void quitAbout(void) { gtk_widget_hide_all(aboutDialog);} + +void showAbout () +{ + + aboutDialog = gtk_about_dialog_new (); + gtk_about_dialog_set_name(GTK_ABOUT_DIALOG(aboutDialog), "About fceuX"); + gtk_about_dialog_set_program_name(GTK_ABOUT_DIALOG(aboutDialog), "fceuX"); + gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(aboutDialog), FCEU_VERSION_STRING); + gtk_about_dialog_set_license(GTK_ABOUT_DIALOG(aboutDialog), "GPL-2; See COPYING"); + gtk_about_dialog_set_website(GTK_ABOUT_DIALOG(aboutDialog), "http://fceux.com"); + + + gtk_widget_show_all(GTK_WIDGET(aboutDialog)); + + g_signal_connect(G_OBJECT(aboutDialog), "delete-event", quitAbout, NULL); + + + +} + + + void loadGame () { GtkWidget* fileChooser; @@ -80,9 +110,9 @@ gint configureEvent (GtkWidget* widget, GdkEventConfigure* event) static GtkItemFactoryEntry menu_items[] = { { "/_File", NULL, NULL, 0, "" }, //{ "/File/_New", "N", NULL, 0, "", GTK_STOCK_NEW }, - { "/File/_Open", "O", loadGame, 0, "", GTK_STOCK_OPEN }, - { "/File/_Close", "C", closeGame, 0, "", GTK_STOCK_CLOSE }, - { "/File/Save _As", NULL, NULL, 0, "" }, + { "/File/_Open ROM", "O", loadGame, 0, "", GTK_STOCK_OPEN }, + { "/File/_Close ROM", "C", closeGame, 0, "", GTK_STOCK_CLOSE }, + // { "/File/Save _As", NULL, NULL, 0, "" }, { "/File/sep1", NULL, NULL, 0, "" }, { "/File/_Quit", "Q", quit, 0, "", GTK_STOCK_QUIT }, { "/_Options", NULL, NULL, 0, "" }, @@ -93,7 +123,7 @@ static GtkItemFactoryEntry menu_items[] = { { "/Options/Rad2", NULL, NULL, 2, "/Options/Rad1" }, { "/Options/Rad3", NULL, NULL, 3, "/Options/Rad1" }, { "/_Help", NULL, NULL, 0, "" }, - { "/_Help/About", NULL, NULL, 0, "" }, + { "/_Help/About", NULL, showAbout, 0, "" }, }; static gint nmenu_items = sizeof (menu_items) / sizeof (menu_items[0]);