transparency option in gui
authorJavier S. Pedro <maemo@javispedro.com>
Tue, 18 Aug 2009 21:58:56 +0000 (23:58 +0200)
committerJavier S. Pedro <maemo@javispedro.com>
Tue, 18 Aug 2009 21:58:56 +0000 (23:58 +0200)
debian/changelog
gui/plugin.c
platform/hgw.cpp
platform/hgw.h

index 42eb1f6..50f1b8a 100644 (file)
@@ -4,8 +4,11 @@ drnoksnes (0.9.4) unstable; urgency=low
   * Partial support in cmdline for mouse/superscope.
   * GUI support for pause/resume.
   * GUI support for snapshots.
+  * A lot of emu options now available in GUI.
+  * Emu now installs a symlink in /usr/bin so it can be easily launched.
+  * Slightly fixed icon and graphics.
 
- -- Javier S. Pedro <maemo@javispedro.com>  Tue, 18 Aug 2009 02:40:22 +0200
+ -- Javier S. Pedro <maemo@javispedro.com>  Tue, 18 Aug 2009 23:47:28 +0200
 
 drnoksnes (0.9.3) unstable; urgency=low
 
index 6bfe13c..2837d49 100644 (file)
@@ -62,6 +62,7 @@ static GtkCheckButton* audio_check;
 static GtkCheckButton* turbo_check;
 static GtkSpinButton* frameskip_spin;
 static GtkCheckButton* auto_framerate_check;
+static GtkCheckButton* trans_check;
 static GtkComboBox* speedhacks_combo;
 
 static void set_rom(const char * rom_file)
@@ -148,8 +149,10 @@ static GtkWidget * load_plugin(void)
                GTK_CHECK_BUTTON(gtk_check_button_new_with_label("Auto"));
        turbo_check =
                GTK_CHECK_BUTTON(gtk_check_button_new_with_label("Turbo mode"));
-       GtkContainer* speedhacks_cont =
-               GTK_CONTAINER(gtk_alignment_new(1.0, 0.0, 0.0, 0.0));
+       GtkContainer* trans_cont =
+               GTK_CONTAINER(gtk_alignment_new(0.0, 0.0, 0.0, 0.0));
+       trans_check =
+               GTK_CHECK_BUTTON(gtk_check_button_new_with_label("Accurate graphics"));
        speedhacks_combo =
                GTK_COMBO_BOX(gtk_combo_box_new_text());
 
@@ -170,8 +173,9 @@ static GtkWidget * load_plugin(void)
        gtk_box_pack_start(GTK_BOX(opt_hbox), GTK_WIDGET(auto_framerate_check), FALSE, FALSE, 0);
        gtk_box_pack_start(GTK_BOX(opt_hbox), GTK_WIDGET(turbo_check), FALSE, FALSE, 0);
 
-       gtk_container_add(speedhacks_cont, GTK_WIDGET(speedhacks_combo));
-       gtk_box_pack_start(GTK_BOX(opt2_hbox), GTK_WIDGET(speedhacks_cont), TRUE, TRUE, 0);
+       gtk_container_add(trans_cont, GTK_WIDGET(trans_check));
+       gtk_box_pack_start(GTK_BOX(opt2_hbox), GTK_WIDGET(trans_cont), TRUE, TRUE, 0);
+       gtk_box_pack_start(GTK_BOX(opt2_hbox), GTK_WIDGET(speedhacks_combo), FALSE, FALSE, 0);
        gtk_box_pack_start(GTK_BOX(parent), rom_hbox, FALSE, FALSE, 0);
        gtk_box_pack_start(GTK_BOX(parent), opt_hbox, FALSE, FALSE, 0);
        gtk_box_pack_start(GTK_BOX(parent), opt2_hbox, FALSE, FALSE, 0);
@@ -193,6 +197,9 @@ static GtkWidget * load_plugin(void)
                gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(auto_framerate_check), FALSE);
        }
 
+       gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(trans_check),
+               gconf_client_get_bool(gcc, kGConfTransparency, NULL));
+
        gtk_combo_box_set_active(speedhacks_combo,
                gconf_client_get_int(gcc, kGConfSpeedhacks, NULL));
 
@@ -231,6 +238,8 @@ static void write_config(void)
                gconf_client_set_int(gcc, kGConfFrameskip,
                        gtk_spin_button_get_value(frameskip_spin) + 1, NULL);
        }
+       gconf_client_set_bool(gcc, kGConfTransparency,
+               gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(trans_check)), NULL);
        gconf_client_set_int(gcc, kGConfSpeedhacks,
                gtk_combo_box_get_active(speedhacks_combo), NULL);
 
index 091a8ad..c6ff937 100644 (file)
@@ -77,6 +77,11 @@ void HgwConfig()
                Settings.SkipFrames = (frameskip > 0 ? frameskip : AUTO_FRAMERATE);
        }
 
+       char transparency = FALSE;
+       if (hgw_conf_request_bool(hgw, kGConfTransparency, &transparency) == HGW_ERR_NONE) {
+               Settings.Transparency = transparency ? TRUE : FALSE;
+       }
+
        int speedhacks = 0;
        if (hgw_conf_request_int(hgw, kGConfFrameskip, &speedhacks) == HGW_ERR_NONE) {
                if (speedhacks <= 0) {
index a953b6f..68c351c 100644 (file)
@@ -15,6 +15,7 @@ void HgwPollEvents();
 #define kGConfDisableAudio kGConfPath "no_audio"
 #define kGConfTurboMode kGConfPath "turbo"
 #define kGConfFrameskip kGConfPath "frameskip"
+#define kGConfTransparency kGConfPath "transparency"
 #define kGConfSpeedhacks kGConfPath "speedhacks"
 
 #endif