summaryrefslogtreecommitdiff
path: root/gui
diff options
context:
space:
mode:
Diffstat (limited to 'gui')
-rw-r--r--gui/Cheat.c247
-rw-r--r--gui/ConfDlg.c194
-rw-r--r--gui/DebugMemory.c48
-rw-r--r--gui/Gtk2Gui.c189
-rw-r--r--gui/Makefile.am4
-rw-r--r--gui/MemcardDlg.c105
6 files changed, 368 insertions, 419 deletions
diff --git a/gui/Cheat.c b/gui/Cheat.c
index ac8ceeb3..1a631307 100644
--- a/gui/Cheat.c
+++ b/gui/Cheat.c
@@ -23,13 +23,13 @@
#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>
-#include <glade/glade.h>
#include "Linux.h"
#include "../libpcsxcore/cheat.h"
#include "../libpcsxcore/psxmem.h"
+static GtkBuilder *builder;
GtkWidget *CheatListDlg = NULL;
GtkWidget *CheatSearchDlg = NULL;
@@ -37,12 +37,10 @@ static void LoadCheatListItems(int index) {
GtkListStore *store = gtk_list_store_new(2, G_TYPE_BOOLEAN, G_TYPE_STRING);
GtkTreeIter iter;
GtkWidget *widget;
- GladeXML *xml;
int i;
- xml = glade_get_widget_tree(CheatListDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Cheat");
+ widget = gtk_builder_get_object(builder, "GtkCList_Cheat");
for (i = 0; i < NumCheats; i++) {
gtk_list_store_append(store, &iter);
@@ -71,7 +69,6 @@ static void LoadCheatListItems(int index) {
}
static void CheatList_TreeSelectionChanged(GtkTreeSelection *selection, gpointer user_data) {
- GladeXML *xml;
GtkTreeIter iter;
GtkTreeModel *model;
GtkTreePath *path;
@@ -86,20 +83,14 @@ static void CheatList_TreeSelectionChanged(GtkTreeSelection *selection, gpointer
i = *gtk_tree_path_get_indices(path);
gtk_tree_path_free(path);
- // If a row was selected, and the row is not blank, we can now enable
- // some of the disabled widgets
- xml = glade_get_widget_tree(CheatListDlg);
-
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "editbutton1")), TRUE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "delbutton1")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "editbutton1")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "delbutton1")), TRUE);
} else {
- xml = glade_get_widget_tree(CheatListDlg);
-
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "editbutton1")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "delbutton1")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "editbutton1")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "delbutton1")), FALSE);
}
- gtk_widget_set_sensitive (GTK_WIDGET(glade_xml_get_widget(xml, "savebutton1")), NumCheats);
+ gtk_widget_set_sensitive (GTK_WIDGET(gtk_builder_get_object(builder, "savebutton1")), NumCheats);
}
static void OnCheatListDlg_AddClicked(GtkWidget *widget, gpointer user_data) {
@@ -166,7 +157,6 @@ static void OnCheatListDlg_AddClicked(GtkWidget *widget, gpointer user_data) {
static void OnCheatListDlg_EditClicked(GtkWidget *widget, gpointer user_data) {
GtkWidget *dlg;
GtkWidget *box, *scroll, *label, *descr_edit, *code_edit;
- GladeXML *xml;
GtkTreeIter iter;
GtkTreeModel *model;
GtkTreePath *path;
@@ -176,8 +166,7 @@ static void OnCheatListDlg_EditClicked(GtkWidget *widget, gpointer user_data) {
char buf[8192];
char *p = buf;
- xml = glade_get_widget_tree(CheatListDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Cheat");
+ widget = gtk_builder_get_object(builder, "GtkCList_Cheat");
selected = gtk_tree_selection_get_selected(
gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)),
@@ -260,7 +249,6 @@ static void OnCheatListDlg_EditClicked(GtkWidget *widget, gpointer user_data) {
}
static void OnCheatListDlg_DelClicked(GtkWidget *widget, gpointer user_data) {
- GladeXML *xml;
GtkTreeIter iter;
GtkTreeModel *model;
GtkTreePath *path;
@@ -268,8 +256,7 @@ static void OnCheatListDlg_DelClicked(GtkWidget *widget, gpointer user_data) {
gboolean selected;
int i = -1;
- xml = glade_get_widget_tree(CheatListDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Cheat");
+ widget = gtk_builder_get_object(builder, "GtkCList_Cheat");
selected = gtk_tree_selection_get_selected(
gtk_tree_view_get_selection(GTK_TREE_VIEW(widget)),
@@ -383,22 +370,24 @@ static void OnCheatListDlg_CloseClicked() {
// run the cheat list dialog
void RunCheatListDialog() {
- GladeXML *xml;
GtkWidget *widget;
GtkTreeSelection *treesel;
GtkTreeViewColumn *column;
GtkCellRenderer *renderer;
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "CheatListDlg", NULL);
- if (!xml) {
- g_warning(_("Error: Glade interface could not be loaded!"));
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- CheatListDlg = glade_xml_get_widget(xml, "CheatListDlg");
+ CheatListDlg = gtk_builder_get_object(builder, "CheatListDlg");
+
gtk_window_set_title(GTK_WINDOW(CheatListDlg), _("Cheat Codes"));
+ gtk_widget_show (CheatListDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Cheat");
+ widget = gtk_builder_get_object(builder, "GtkCList_Cheat");
// column for enable
renderer = gtk_cell_renderer_toggle_new();
@@ -422,34 +411,34 @@ void RunCheatListDialog() {
G_CALLBACK (CheatList_TreeSelectionChanged),
NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "addbutton1");
+ widget = gtk_builder_get_object(builder, "addbutton1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatListDlg_AddClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_AddClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "editbutton1");
+ widget = gtk_builder_get_object(builder, "editbutton1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatListDlg_EditClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_EditClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "delbutton1");
+ widget = gtk_builder_get_object(builder, "delbutton1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatListDlg_DelClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_DelClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "loadbutton1");
+ widget = gtk_builder_get_object(builder, "loadbutton1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatListDlg_OpenClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_OpenClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "savebutton1");
+ widget = gtk_builder_get_object(builder, "savebutton1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatListDlg_SaveClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_SaveClicked), builder, NULL, G_CONNECT_AFTER);
// Setup a handler for when Close or Cancel is clicked
g_signal_connect_data(GTK_OBJECT(CheatListDlg), "response",
- G_CALLBACK(OnCheatListDlg_CloseClicked), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatListDlg_CloseClicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "savebutton1")), NumCheats);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "editbutton1")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "delbutton1")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "editbutton1")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "savebutton1")), NumCheats);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "editbutton1")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "delbutton1")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "editbutton1")), FALSE);
}
///////////////////////////////////////////////////////////////////////////////
@@ -479,7 +468,6 @@ static uint32_t current_valueto = 0;
// update the cheat search dialog
static void UpdateCheatSearchDialog() {
- GladeXML *xml;
char buf[256];
int i;
u32 addr;
@@ -487,55 +475,54 @@ static void UpdateCheatSearchDialog() {
GtkTreeIter iter;
GtkWidget *widget;
- xml = glade_get_widget_tree(CheatSearchDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Result");
+ widget = gtk_builder_get_object(builder, "GtkCList_Result");
- gtk_combo_box_set_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_searchfor")), current_search);
- gtk_combo_box_set_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_datatype")), current_searchtype);
- gtk_combo_box_set_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_database")), current_searchbase);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_searchfor")), current_search);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_datatype")), current_searchtype);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_database")), current_searchbase);
if (current_searchbase == SEARCHBASE_DEC) {
sprintf(buf, "%u", current_valuefrom);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value")), buf);
sprintf(buf, "%u", current_valueto);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto")), buf);
}
else {
sprintf(buf, "%X", current_valuefrom);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value")), buf);
sprintf(buf, "%X", current_valueto);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto")), buf);
}
if (current_search == SEARCH_RANGE) {
- gtk_widget_show(GTK_WIDGET(glade_xml_get_widget(xml, "label_valueto")));
- gtk_widget_show(GTK_WIDGET(glade_xml_get_widget(xml, "entry_valueto")));
+ gtk_widget_show(GTK_WIDGET(gtk_builder_get_object(builder, "label_valueto")));
+ gtk_widget_show(GTK_WIDGET(gtk_builder_get_object(builder, "entry_valueto")));
}
else {
- gtk_widget_hide(GTK_WIDGET(glade_xml_get_widget(xml, "label_valueto")));
- gtk_widget_hide(GTK_WIDGET(glade_xml_get_widget(xml, "entry_valueto")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(builder, "label_valueto")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(builder, "entry_valueto")));
}
if (current_search >= SEARCH_INC) {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "entry_value")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "entry_value")), FALSE);
}
else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "entry_value")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "entry_value")), TRUE);
}
if (current_search >= SEARCH_INCBY && prevM == NULL) {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_start")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_start")), FALSE);
}
else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_start")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_start")), TRUE);
}
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_freeze")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_modify")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_copy")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_freeze")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_modify")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_copy")), FALSE);
if (prevM != NULL) {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "combo_datatype")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "combo_datatype")), FALSE);
if (NumSearchResults > 100) {
// too many results to be shown
@@ -575,13 +562,13 @@ static void UpdateCheatSearchDialog() {
}
sprintf(buf, _("Founded Addresses: %d"), NumSearchResults);
- gtk_label_set_text(GTK_LABEL(glade_xml_get_widget(xml, "label_resultsfound")), buf);
+ gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "label_resultsfound")), buf);
}
else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "combo_datatype")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "combo_datatype")), TRUE);
gtk_widget_set_sensitive(widget, FALSE);
- gtk_label_set_text(GTK_LABEL(glade_xml_get_widget(xml, "label_resultsfound")),
+ gtk_label_set_text(GTK_LABEL(gtk_builder_get_object(builder, "label_resultsfound")),
_("Enter the values and start your search."));
}
@@ -593,7 +580,6 @@ static void UpdateCheatSearchDialog() {
// get the current selected result index in the list
static int GetSelectedResultIndex() {
- GladeXML *xml;
GtkTreeSelection *selection;
GtkTreeIter iter;
GtkTreeModel *model;
@@ -601,9 +587,7 @@ static int GetSelectedResultIndex() {
gboolean selected;
int i;
- xml = glade_get_widget_tree(CheatSearchDlg);
-
- selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(glade_xml_get_widget(xml, "GtkCList_Result")));
+ selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(gtk_builder_get_object(builder, "GtkCList_Result")));
selected = gtk_tree_selection_get_selected(selection, &model, &iter);
if (!selected) {
@@ -816,23 +800,19 @@ static void OnCheatSearchDlg_CopyClicked(GtkWidget *widget, gpointer user_data)
// preform the search
static void OnCheatSearchDlg_SearchClicked(GtkWidget *widget, gpointer user_data) {
- GladeXML *xml;
-
- xml = glade_get_widget_tree(CheatSearchDlg);
-
- current_search = gtk_combo_box_get_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_searchfor")));
- current_searchtype = gtk_combo_box_get_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_datatype")));
- current_searchbase = gtk_combo_box_get_active(GTK_COMBO_BOX(glade_xml_get_widget(xml, "combo_database")));
+ current_search = gtk_combo_box_get_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_searchfor")));
+ current_searchtype = gtk_combo_box_get_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_datatype")));
+ current_searchbase = gtk_combo_box_get_active(GTK_COMBO_BOX(gtk_builder_get_object(builder, "combo_database")));
current_valuefrom = 0;
current_valueto = 0;
if (current_searchbase == SEARCHBASE_DEC) {
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value"))), "%u", &current_valuefrom);
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto"))), "%u", &current_valueto);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value"))), "%u", &current_valuefrom);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto"))), "%u", &current_valueto);
}
else {
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value"))), "%x", &current_valuefrom);
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto"))), "%x", &current_valueto);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value"))), "%x", &current_valuefrom);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto"))), "%x", &current_valueto);
}
switch (current_searchtype) {
@@ -1035,100 +1015,91 @@ static void OnCheatSearchDlg_CloseClicked(GtkWidget *widget, gpointer user_data)
}
static void OnCheatSearchDlg_SearchForChanged(GtkWidget *widget, gpointer user_data) {
- GladeXML *xml;
-
- xml = glade_get_widget_tree(CheatSearchDlg);
-
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widget)) == SEARCH_RANGE) {
- gtk_widget_show(GTK_WIDGET(glade_xml_get_widget(xml, "label_valueto")));
- gtk_widget_show(GTK_WIDGET(glade_xml_get_widget(xml, "entry_valueto")));
+ gtk_widget_show(GTK_WIDGET(gtk_builder_get_object(builder, "label_valueto")));
+ gtk_widget_show(GTK_WIDGET(gtk_builder_get_object(builder, "entry_valueto")));
}
else {
- gtk_widget_hide(GTK_WIDGET(glade_xml_get_widget(xml, "label_valueto")));
- gtk_widget_hide(GTK_WIDGET(glade_xml_get_widget(xml, "entry_valueto")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(builder, "label_valueto")));
+ gtk_widget_hide(GTK_WIDGET(gtk_builder_get_object(builder, "entry_valueto")));
}
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widget)) >= SEARCH_INC) {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "entry_value")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "entry_value")), FALSE);
}
else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "entry_value")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "entry_value")), TRUE);
}
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widget)) >= SEARCH_INCBY && prevM == NULL) {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_start")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_start")), FALSE);
}
else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_start")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_start")), TRUE);
}
}
static void OnCheatSearchDlg_DataBaseChanged(GtkWidget *widget, gpointer user_data) {
u32 val;
char buf[256];
- GladeXML *xml;
-
- xml = glade_get_widget_tree(CheatSearchDlg);
-
+
if (gtk_combo_box_get_active(GTK_COMBO_BOX(widget)) == SEARCHBASE_DEC) {
val = 0;
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value"))), "%x", &val);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value"))), "%x", &val);
sprintf(buf, "%u", val);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value")), buf);
val = 0;
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto"))), "%x", &val);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto"))), "%x", &val);
sprintf(buf, "%u", val);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto")), buf);
}
else {
val = 0;
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value"))), "%u", &val);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value"))), "%u", &val);
sprintf(buf, "%X", val);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_value")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_value")), buf);
val = 0;
- sscanf(gtk_entry_get_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto"))), "%u", &val);
+ sscanf(gtk_entry_get_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto"))), "%u", &val);
sprintf(buf, "%X", val);
- gtk_entry_set_text(GTK_ENTRY(glade_xml_get_widget(xml, "entry_valueto")), buf);
+ gtk_entry_set_text(GTK_ENTRY(gtk_builder_get_object(builder, "entry_valueto")), buf);
}
}
static void CheatSearch_TreeSelectionChanged(GtkTreeSelection *selection, gpointer user_data) {
- GladeXML *xml;
-
- xml = glade_get_widget_tree(CheatSearchDlg);
-
if (GetSelectedResultIndex() != -1) {
// If a row was selected, we can now enable some of the disabled widgets
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_freeze")), TRUE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_modify")), TRUE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_copy")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_freeze")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_modify")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_copy")), TRUE);
} else {
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_freeze")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_modify")), FALSE);
- gtk_widget_set_sensitive(GTK_WIDGET(glade_xml_get_widget(xml, "btn_copy")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_freeze")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_modify")), FALSE);
+ gtk_widget_set_sensitive(GTK_WIDGET(gtk_builder_get_object(builder, "btn_copy")), FALSE);
}
}
// run the cheat search dialog
void RunCheatSearchDialog() {
- GladeXML *xml;
GtkWidget *widget;
GtkCellRenderer *renderer;
GtkTreeSelection *treesel;
GtkTreeViewColumn *column;
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "CheatSearchDlg", NULL);
- if (!xml) {
- g_warning(_("Error: Glade interface could not be loaded!"));
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- CheatSearchDlg = glade_xml_get_widget(xml, "CheatSearchDlg");
+ CheatSearchDlg = gtk_builder_get_object(builder, "CheatSearchDlg");
+
gtk_window_set_title(GTK_WINDOW(CheatSearchDlg), _("Cheat Search"));
+ gtk_widget_show (CheatSearchDlg);
- widget = glade_xml_get_widget(xml, "GtkCList_Result");
+ widget = gtk_builder_get_object(builder, "GtkCList_Result");
renderer = gtk_cell_renderer_text_new ();
column = gtk_tree_view_column_new_with_attributes(_("Search Results"),
@@ -1143,34 +1114,34 @@ void RunCheatSearchDialog() {
UpdateCheatSearchDialog();
- widget = glade_xml_get_widget(xml, "btn_freeze");
+ widget = gtk_builder_get_object(builder, "btn_freeze");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatSearchDlg_FreezeClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_FreezeClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_modify");
+ widget = gtk_builder_get_object(builder, "btn_modify");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatSearchDlg_ModifyClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_ModifyClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_copy");
+ widget = gtk_builder_get_object(builder, "btn_copy");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatSearchDlg_CopyClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_CopyClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_start");
+ widget = gtk_builder_get_object(builder, "btn_start");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatSearchDlg_SearchClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_SearchClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_restart");
+ widget = gtk_builder_get_object(builder, "btn_restart");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnCheatSearchDlg_RestartClicked), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_RestartClicked), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "combo_searchfor");
+ widget = gtk_builder_get_object(builder, "combo_searchfor");
g_signal_connect_data(GTK_OBJECT(widget), "changed",
- G_CALLBACK(OnCheatSearchDlg_SearchForChanged), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_SearchForChanged), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "combo_database");
+ widget = gtk_builder_get_object(builder, "combo_database");
g_signal_connect_data(GTK_OBJECT(widget), "changed",
- G_CALLBACK(OnCheatSearchDlg_DataBaseChanged), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_DataBaseChanged), builder, NULL, G_CONNECT_AFTER);
g_signal_connect_data(GTK_OBJECT(CheatSearchDlg), "response",
- G_CALLBACK(OnCheatSearchDlg_CloseClicked), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnCheatSearchDlg_CloseClicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
}
diff --git a/gui/ConfDlg.c b/gui/ConfDlg.c
index b1ac3760..13e1d776 100644
--- a/gui/ConfDlg.c
+++ b/gui/ConfDlg.c
@@ -25,7 +25,6 @@
#include <sys/stat.h>
#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>
-#include <glade/glade.h>
#include <signal.h>
#include <sys/time.h>
#include <regex.h>
@@ -45,13 +44,14 @@ static void OnNet_Conf(GtkWidget *widget, gpointer user_data);
static void OnNet_About(GtkWidget *widget, gpointer user_data);
static void on_configure_plugin(GtkWidget *widget, gpointer user_data);
static void on_about_plugin(GtkWidget *widget, gpointer user_data);
-static void UpdatePluginsBIOS_UpdateGUI(GladeXML *xml);
-static void FindNetPlugin(GladeXML *xml);
+static void UpdatePluginsBIOS_UpdateGUI();
+static void FindNetPlugin();
PSEgetLibType PSE_getLibType = NULL;
PSEgetLibVersion PSE_getLibVersion = NULL;
PSEgetLibName PSE_getLibName = NULL;
+static GtkBuilder *builder;
GtkWidget *ConfDlg = NULL;
GtkWidget *NetDlg = NULL;
GtkWidget *controlwidget = NULL;
@@ -91,31 +91,30 @@ void ConfigurePlugins() {
return;
}
- GladeXML *xml;
GtkWidget *widget;
gchar *path;
UpdatePluginsBIOS();
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "ConfDlg", NULL);
-
- if (!xml) {
- g_warning(_("Error: Glade interface could not be loaded!"));
+ builder = gtk_builder_new();
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- UpdatePluginsBIOS_UpdateGUI(xml);
-
- ConfDlg = glade_xml_get_widget(xml, "ConfDlg");
+ UpdatePluginsBIOS_UpdateGUI(builder);
+ ConfDlg = gtk_builder_get_object(builder, "ConfDlg");
+
gtk_window_set_title(GTK_WINDOW(ConfDlg), _("Configure PCSXR"));
+ gtk_widget_show (ConfDlg);
/* Set the paths in the file choosers to be based on the saved configurations */
- widget = glade_xml_get_widget(xml, "GtkFileChooser_Bios");
+ widget = gtk_builder_get_object(builder, "GtkFileChooser_Bios");
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (widget), Config.BiosDir);
- widget = glade_xml_get_widget(xml, "GtkFileChooser_Plugin");
+ widget = gtk_builder_get_object(builder, "GtkFileChooser_Plugin");
gtk_file_chooser_set_current_folder (GTK_FILE_CHOOSER (widget), Config.PluginsDir);
if (strlen(Config.PluginsDir) == 0) {
@@ -125,57 +124,57 @@ void ConfigurePlugins() {
}
}
- widget = glade_xml_get_widget(xml, "btn_ConfGpu");
+ widget = gtk_builder_get_object(builder, "btn_ConfGpu");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_configure_plugin), (gpointer) PSE_LT_GPU, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_ConfSpu");
+ widget = gtk_builder_get_object(builder, "btn_ConfSpu");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_configure_plugin), (gpointer) PSE_LT_SPU, NULL, G_CONNECT_AFTER);
/* ADB TODO Does pad 1 and 2 need to be different? */
- widget = glade_xml_get_widget(xml, "btn_ConfPad1");
+ widget = gtk_builder_get_object(builder, "btn_ConfPad1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnConfConf_Pad1Conf), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnConfConf_Pad1Conf), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_ConfPad2");
+ widget = gtk_builder_get_object(builder, "btn_ConfPad2");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnConfConf_Pad2Conf), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnConfConf_Pad2Conf), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_ConfCdr");
+ widget = gtk_builder_get_object(builder, "btn_ConfCdr");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_configure_plugin), (gpointer) PSE_LT_CDR, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutGpu");
+ widget = gtk_builder_get_object(builder, "btn_AboutGpu");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_about_plugin), (gpointer) PSE_LT_GPU, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutSpu");
+ widget = gtk_builder_get_object(builder, "btn_AboutSpu");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_about_plugin), (gpointer) PSE_LT_SPU, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutPad1");
+ widget = gtk_builder_get_object(builder, "btn_AboutPad1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnConfConf_Pad1About), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnConfConf_Pad1About), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutPad2");
+ widget = gtk_builder_get_object(builder, "btn_AboutPad2");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnConfConf_Pad2About), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnConfConf_Pad2About), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutCdr");
+ widget = gtk_builder_get_object(builder, "btn_AboutCdr");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(on_about_plugin), (gpointer) PSE_LT_CDR, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkFileChooser_Bios");
+ widget = gtk_builder_get_object(builder, "GtkFileChooser_Bios");
g_signal_connect_data(GTK_OBJECT(widget), "current_folder_changed",
- G_CALLBACK(OnBiosPath_Changed), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnBiosPath_Changed), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkFileChooser_Plugin");
+ widget = gtk_builder_get_object(builder, "GtkFileChooser_Plugin");
g_signal_connect_data(GTK_OBJECT(widget), "current_folder_changed",
- G_CALLBACK(OnPluginPath_Changed), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnPluginPath_Changed), builder, NULL, G_CONNECT_AFTER);
g_signal_connect_data(GTK_OBJECT(ConfDlg), "response",
- G_CALLBACK(OnConf_Clicked), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnConf_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
}
void OnNet_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
@@ -186,7 +185,6 @@ void OnNet_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
}
void OnConf_Net() {
- GladeXML *xml;
GtkWidget *widget;
if (NetDlg != NULL) {
@@ -194,28 +192,29 @@ void OnConf_Net() {
return;
}
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "NetDlg", NULL);
-
- if (!xml) {
- g_warning(_("Error: Glade interface could not be loaded!"));
+ builder = gtk_builder_new();
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- NetDlg = glade_xml_get_widget(xml, "NetDlg");
+ NetDlg = gtk_builder_get_object(builder, "NetDlg");
+
+ gtk_widget_show (NetDlg);
- FindNetPlugin(xml);
+ FindNetPlugin(builder);
/* Setup a handler for when Close or Cancel is clicked */
g_signal_connect_data(GTK_OBJECT(NetDlg), "response",
- G_CALLBACK(OnNet_Clicked), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnNet_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_ConfNet");
+ widget = gtk_builder_get_object(builder, "btn_ConfNet");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnNet_Conf), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnNet_Conf), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_AboutNet");
+ widget = gtk_builder_get_object(builder, "btn_AboutNet");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(OnNet_About), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(OnNet_About), builder, NULL, G_CONNECT_AFTER);
}
void OnConf_Graphics() {
@@ -493,24 +492,24 @@ void populate_combo_box(GtkWidget *widget, GList *list) {
/* Populate the relevant combo widget with the list of plugins. \
If no plugins available, disable the combo and its controls. \
Note that the Bios plugin has no About/Conf control. */ \
- type##ConfS.Combo = glade_xml_get_widget(xml, "GtkCombo_" name); \
+ type##ConfS.Combo = gtk_builder_get_object(builder, "GtkCombo_" name); \
if (type##ConfS.glist != NULL) { \
populate_combo_box (type##ConfS.Combo, type##ConfS.glist); \
FindComboText(type##ConfS.Combo, type##ConfS.plist, Config.type); \
gtk_widget_set_sensitive (type##ConfS.Combo, TRUE); \
if (g_ascii_strcasecmp (name, "Bios") != 0) { \
- controlwidget = glade_xml_get_widget(xml, "btn_Conf" name); \
+ controlwidget = gtk_builder_get_object(builder, "btn_Conf" name); \
gtk_widget_set_sensitive (controlwidget, TRUE); \
- controlwidget = glade_xml_get_widget(xml, "btn_About" name); \
+ controlwidget = gtk_builder_get_object(builder, "btn_About" name); \
gtk_widget_set_sensitive (controlwidget, TRUE); \
} \
} else { \
if (g_ascii_strcasecmp (name, "Bios") != 0) { \
gtk_cell_layout_clear (GTK_CELL_LAYOUT (type##ConfS.Combo)); \
gtk_widget_set_sensitive (type##ConfS.Combo, FALSE); \
- controlwidget = glade_xml_get_widget(xml, "btn_Conf" name); \
+ controlwidget = gtk_builder_get_object(builder, "btn_Conf" name); \
gtk_widget_set_sensitive (controlwidget, FALSE); \
- controlwidget = glade_xml_get_widget(xml, "btn_About" name); \
+ controlwidget = gtk_builder_get_object(builder, "btn_About" name); \
gtk_widget_set_sensitive (controlwidget, FALSE); \
} \
}
@@ -675,7 +674,7 @@ void UpdatePluginsBIOS() {
add_bios_to_list(_("Simulate PSX BIOS"), "HLE");
}
-static void UpdatePluginsBIOS_UpdateGUI(GladeXML *xml) {
+static void UpdatePluginsBIOS_UpdateGUI() {
// Populate the plugin combo boxes
ConfCreatePConf("Gpu", Gpu);
ConfCreatePConf("Spu", Spu);
@@ -685,7 +684,7 @@ static void UpdatePluginsBIOS_UpdateGUI(GladeXML *xml) {
ConfCreatePConf("Bios", Bios);
}
-static void FindNetPlugin(GladeXML *xml) {
+static void FindNetPlugin() {
DIR *dir;
struct dirent *ent;
void *Handle;
@@ -756,8 +755,7 @@ char *psxtypes[] = {
// When the auto-detect CPU type is selected, disable the NTSC/PAL selection
static void OnCpu_PsxAutoClicked (GtkWidget *widget, gpointer user_data) {
GtkWidget *combo;
- GladeXML *xml = user_data;
- combo = glade_xml_get_widget(xml, "GtkCombo_PsxType");
+ combo = gtk_builder_get_object(builder, "GtkCombo_PsxType");
gtk_widget_set_sensitive (combo,
!(gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))));
@@ -766,8 +764,7 @@ static void OnCpu_PsxAutoClicked (GtkWidget *widget, gpointer user_data) {
// When the interpreter core is deselected, disable the debugger checkbox
static void OnCpu_CpuClicked(GtkWidget *widget, gpointer user_data) {
GtkWidget *check;
- GladeXML *xml = user_data;
- check = glade_xml_get_widget(xml, "GtkCheckButton_Dbg");
+ check = gtk_builder_get_object(builder, "GtkCheckButton_Dbg");
// Debugger is only working with interpreter not recompiler, so let's set it
if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget)))
@@ -779,11 +776,10 @@ static void OnCpu_CpuClicked(GtkWidget *widget, gpointer user_data) {
void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
GtkWidget *widget;
- GladeXML *xml = user_data;
int tmp;
long t;
- widget = glade_xml_get_widget(xml, "GtkCombo_PsxType");
+ widget = gtk_builder_get_object(builder, "GtkCombo_PsxType");
// If nothing chosen, default to NTSC
tmp = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
@@ -795,22 +791,22 @@ void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
else
Config.PsxType = PSX_TYPE_PAL;
- Config.Xa = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Xa")));
- Config.Sio = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Sio")));
- Config.Mdec = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Mdec")));
- Config.Cdda = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_CDDA")));
- Config.SlowBoot = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_SlowBoot")));
- Config.PsxAuto = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_PsxAuto")));
+ Config.Xa = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Xa")));
+ Config.Sio = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Sio")));
+ Config.Mdec = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Mdec")));
+ Config.Cdda = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_CDDA")));
+ Config.SlowBoot = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_SlowBoot")));
+ Config.PsxAuto = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_PsxAuto")));
t = Config.Debug;
- Config.Debug = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Dbg")));
+ Config.Debug = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Dbg")));
if (t != Config.Debug) {
if (Config.Debug) StartDebugger();
else StopDebugger();
}
t = Config.Cpu;
- Config.Cpu = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Cpu")));
+ Config.Cpu = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Cpu")));
if (t != Config.Cpu) {
psxCpu->Shutdown();
#ifdef PSXREC
@@ -828,11 +824,11 @@ void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
psxCpu->Reset();
}
- Config.PsxOut = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_PsxOut")));
- Config.SpuIrq = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_SpuIrq")));
- Config.RCntFix = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_RCntFix")));
- Config.VSyncWA = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_VSyncWA")));
- Config.Widescreen = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Widescreen")));
+ Config.PsxOut = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_PsxOut")));
+ Config.SpuIrq = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_SpuIrq")));
+ Config.RCntFix = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_RCntFix")));
+ Config.VSyncWA = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_VSyncWA")));
+ Config.Widescreen = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Widescreen")));
SaveConfig();
@@ -841,53 +837,55 @@ void OnCpu_Clicked(GtkDialog *dialog, gint arg1, gpointer user_data) {
}
void OnConf_Cpu() {
- GladeXML *xml;
+
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "CpuDlg", NULL);
-
- if (!xml) {
- g_warning("We could not load the interface!");
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- CpuDlg = glade_xml_get_widget(xml, "CpuDlg");
+ CpuDlg = gtk_builder_get_object(builder, "CpuDlg");
+
+ gtk_widget_show (CpuDlg);
- PsxCombo = glade_xml_get_widget(xml, "GtkCombo_PsxType");
+ PsxCombo = gtk_builder_get_object(builder, "GtkCombo_PsxType");
gtk_combo_box_set_active(GTK_COMBO_BOX (PsxCombo), Config.PsxType);
gtk_widget_set_sensitive(GTK_WIDGET (PsxCombo), !Config.PsxAuto);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Xa")), Config.Xa);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Sio")), Config.Sio);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Mdec")), Config.Mdec);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_CDDA")), Config.Cdda);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_SlowBoot")), Config.SlowBoot);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_PsxAuto")), Config.PsxAuto);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Xa")), Config.Xa);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Sio")), Config.Sio);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Mdec")), Config.Mdec);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_CDDA")), Config.Cdda);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_SlowBoot")), Config.SlowBoot);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_PsxAuto")), Config.PsxAuto);
- g_signal_connect_data(GTK_OBJECT(glade_xml_get_widget(xml, "GtkCheckButton_PsxAuto")), "toggled",
- G_CALLBACK(OnCpu_PsxAutoClicked), xml, NULL, G_CONNECT_AFTER);
+ g_signal_connect_data(GTK_OBJECT(gtk_builder_get_object(builder, "GtkCheckButton_PsxAuto")), "toggled",
+ G_CALLBACK(OnCpu_PsxAutoClicked), builder, NULL, G_CONNECT_AFTER);
#ifdef PSXREC
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (glade_xml_get_widget(xml, "GtkCheckButton_Cpu")), Config.Cpu);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (gtk_builder_get_object(builder, "GtkCheckButton_Cpu")), Config.Cpu);
- g_signal_connect_data(GTK_OBJECT(glade_xml_get_widget(xml, "GtkCheckButton_Cpu")), "toggled",
- G_CALLBACK(OnCpu_CpuClicked), xml, NULL, G_CONNECT_AFTER);
+ g_signal_connect_data(GTK_OBJECT(gtk_builder_get_object(builder, "GtkCheckButton_Cpu")), "toggled",
+ G_CALLBACK(OnCpu_CpuClicked), builder, NULL, G_CONNECT_AFTER);
#else
Config.Cpu = CPU_INTERPRETER;
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (glade_xml_get_widget(xml, "GtkCheckButton_Cpu")), TRUE);
- gtk_widget_set_sensitive(GTK_WIDGET (glade_xml_get_widget(xml, "GtkCheckButton_Cpu")), FALSE);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (gtk_builder_get_object(builder, "GtkCheckButton_Cpu")), TRUE);
+ gtk_widget_set_sensitive(GTK_WIDGET (gtk_builder_get_object(builder, "GtkCheckButton_Cpu")), FALSE);
#endif
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (glade_xml_get_widget(xml, "GtkCheckButton_Dbg")), Config.Cpu && Config.Debug);
- gtk_widget_set_sensitive(GTK_WIDGET (glade_xml_get_widget(xml, "GtkCheckButton_Dbg")), Config.Cpu);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (gtk_builder_get_object(builder, "GtkCheckButton_Dbg")), Config.Cpu && Config.Debug);
+ gtk_widget_set_sensitive(GTK_WIDGET (gtk_builder_get_object(builder, "GtkCheckButton_Dbg")), Config.Cpu);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_PsxOut")), Config.PsxOut);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_SpuIrq")), Config.SpuIrq);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_RCntFix")), Config.RCntFix);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_VSyncWA")), Config.VSyncWA);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(glade_xml_get_widget(xml, "GtkCheckButton_Widescreen")), Config.Widescreen);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_PsxOut")), Config.PsxOut);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_SpuIrq")), Config.SpuIrq);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_RCntFix")), Config.RCntFix);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_VSyncWA")), Config.VSyncWA);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtk_builder_get_object(builder, "GtkCheckButton_Widescreen")), Config.Widescreen);
// Setup a handler for when Close or Cancel is clicked
g_signal_connect_data(GTK_OBJECT(CpuDlg), "response",
- G_CALLBACK(OnCpu_Clicked), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnCpu_Clicked), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
}
diff --git a/gui/DebugMemory.c b/gui/DebugMemory.c
index f035ab8b..dfa60d1c 100644
--- a/gui/DebugMemory.c
+++ b/gui/DebugMemory.c
@@ -18,10 +18,11 @@
#include "Linux.h"
#include "../libpcsxcore/psxmem.h"
-#include <glade/glade.h>
+#include <gtk/gtk.h>
#define MEMVIEW_MAX_LINES 256
+static GtkBuilder *builder;
static GtkWidget *MemViewDlg = NULL;
static u32 MemViewAddress = 0;
@@ -38,14 +39,11 @@ static void UpdateMemViewDlg() {
GtkTreeIter iter;
GtkWidget *widget;
- GladeXML *xml;
-
- xml = glade_get_widget_tree(MemViewDlg);
MemViewAddress &= 0x1fffff;
sprintf(buftext, "%.8X", MemViewAddress | 0x80000000);
- widget = glade_xml_get_widget(xml, "entry_address");
+ widget = gtk_builder_get_object(builder, "entry_address");
gtk_entry_set_text(GTK_ENTRY(widget), buftext);
start = MemViewAddress & 0x1ffff0;
@@ -53,7 +51,7 @@ static void UpdateMemViewDlg() {
if (end > 0x1fffff) end = 0x1fffff;
- widget = glade_xml_get_widget(xml, "GtkCList_MemView");
+ widget = gtk_builder_get_object(builder, "GtkCList_MemView");
buftext[16] = '\0';
@@ -85,10 +83,8 @@ static void UpdateMemViewDlg() {
static void MemView_Go() {
GtkWidget *widget;
- GladeXML *xml;
- xml = glade_get_widget_tree(MemViewDlg);
- widget = glade_xml_get_widget(xml, "entry_address");
+ widget = gtk_builder_get_object(builder, "entry_address");
sscanf(gtk_entry_get_text(GTK_ENTRY(widget)), "%x", &MemViewAddress);
@@ -247,23 +243,25 @@ static void MemView_Close(GtkWidget *widget, gpointer user_data) {
}
void RunDebugMemoryDialog() {
- GladeXML *xml;
GtkWidget *widget;
GtkCellRenderer *renderer;
GtkTreeViewColumn *column;
PangoFontDescription *pfd;
int i;
-
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "MemViewDlg", NULL);
- if (!xml) {
- g_warning(_("Error: Glade interface could not be loaded!"));
+
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
-
- MemViewDlg = glade_xml_get_widget(xml, "MemViewDlg");
+
+ MemViewDlg = gtk_builder_get_object(builder, "MemViewDlg");
+
gtk_window_set_title(GTK_WINDOW(MemViewDlg), _("Memory Viewer"));
-
- widget = glade_xml_get_widget(xml, "GtkCList_MemView");
+ gtk_widget_show (MemViewDlg);
+
+ widget = gtk_builder_get_object(builder, "GtkCList_MemView");
renderer = gtk_cell_renderer_text_new();
column = gtk_tree_view_column_new_with_attributes(_("Address"),
@@ -299,18 +297,18 @@ void RunDebugMemoryDialog() {
UpdateMemViewDlg();
- widget = glade_xml_get_widget(xml, "btn_dump");
+ widget = gtk_builder_get_object(builder, "btn_dump");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(MemView_Dump), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(MemView_Dump), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_patch");
+ widget = gtk_builder_get_object(builder, "btn_patch");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(MemView_Patch), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(MemView_Patch), builder, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "btn_go");
+ widget = gtk_builder_get_object(builder, "btn_go");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
- G_CALLBACK(MemView_Go), xml, NULL, G_CONNECT_AFTER);
+ G_CALLBACK(MemView_Go), builder, NULL, G_CONNECT_AFTER);
g_signal_connect_data(GTK_OBJECT(MemViewDlg), "response",
- G_CALLBACK(MemView_Close), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(MemView_Close), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
}
diff --git a/gui/Gtk2Gui.c b/gui/Gtk2Gui.c
index ac8eabcc..1e18fb5a 100644
--- a/gui/Gtk2Gui.c
+++ b/gui/Gtk2Gui.c
@@ -25,7 +25,6 @@
#include <sys/stat.h>
#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>
-#include <glade/glade.h>
#include <signal.h>
#include <sys/time.h>
#include <regex.h>
@@ -59,6 +58,7 @@ void on_states_load_other();
void on_states_save(GtkWidget *widget, gpointer user_data);
void on_states_save_other();
+static GtkBuilder *builder;
GtkWidget *Window = NULL;
int destroy = 0;
@@ -68,7 +68,7 @@ int destroy = 0;
/* TODO - If MAX_SLOTS changes, need to find a way to automatically set all positions */
int Slots[MAX_SLOTS] = { -1, -1, -1, -1, -1, -1, -1, -1, -1 };
-void ResetMenuSlots(GladeXML *xml) {
+void ResetMenuSlots() {
GtkWidget *widget;
gchar *str;
int i;
@@ -77,60 +77,60 @@ void ResetMenuSlots(GladeXML *xml) {
// disable state saving/loading if no CD is loaded
for (i = 0; i < MAX_SLOTS; i++) {
str = g_strdup_printf("GtkMenuItem_SaveSlot%d", i+1);
- widget = glade_xml_get_widget(xml, str);
+ widget = gtk_builder_get_object(builder, str);
g_free(str);
gtk_widget_set_sensitive(widget, FALSE);
str = g_strdup_printf("GtkMenuItem_LoadSlot%d", i+1);
- widget = glade_xml_get_widget(xml, str);
+ widget = gtk_builder_get_object(builder, str);
g_free(str);
gtk_widget_set_sensitive(widget, FALSE);
}
// also disable certain menu/toolbar items
- widget = glade_xml_get_widget(xml, "other1");
+ widget = gtk_builder_get_object(builder, "other1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "other2");
+ widget = gtk_builder_get_object(builder, "other2");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "run1");
+ widget = gtk_builder_get_object(builder, "run1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "reset1");
+ widget = gtk_builder_get_object(builder, "reset1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "shutdown1");
+ widget = gtk_builder_get_object(builder, "shutdown1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "search1");
+ widget = gtk_builder_get_object(builder, "search1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "SwitchImage");
+ widget = gtk_builder_get_object(builder, "SwitchImage");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "memorydump1");
+ widget = gtk_builder_get_object(builder, "memorydump1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "toolbutton_run");
+ widget = gtk_builder_get_object(builder, "toolbutton_run");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "toolbutton_switchimage");
+ widget = gtk_builder_get_object(builder, "toolbutton_switchimage");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "plugins_bios");
+ widget = gtk_builder_get_object(builder, "plugins_bios");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "graphics1");
+ widget = gtk_builder_get_object(builder, "graphics1");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "sound1");
+ widget = gtk_builder_get_object(builder, "sound1");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "cdrom1");
+ widget = gtk_builder_get_object(builder, "cdrom1");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "pad1");
+ widget = gtk_builder_get_object(builder, "pad1");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "net1");
+ widget = gtk_builder_get_object(builder, "net1");
gtk_widget_set_sensitive(widget, TRUE);
- widget = glade_xml_get_widget(xml, "statusbar");
+ widget = gtk_builder_get_object(builder, "statusbar");
gtk_statusbar_pop(GTK_STATUSBAR(widget), 1);
gtk_statusbar_push(GTK_STATUSBAR(widget), 1, _("Ready"));
}
else {
for (i = 0; i < MAX_SLOTS; i++) {
str = g_strdup_printf("GtkMenuItem_LoadSlot%d", i+1);
- widget = glade_xml_get_widget (xml, str);
+ widget = gtk_builder_get_object (builder, str);
g_free (str);
if (Slots[i] == -1)
@@ -139,32 +139,32 @@ void ResetMenuSlots(GladeXML *xml) {
gtk_widget_set_sensitive(widget, TRUE);
}
- widget = glade_xml_get_widget(xml, "plugins_bios");
+ widget = gtk_builder_get_object(builder, "plugins_bios");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "graphics1");
+ widget = gtk_builder_get_object(builder, "graphics1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "sound1");
+ widget = gtk_builder_get_object(builder, "sound1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "cdrom1");
+ widget = gtk_builder_get_object(builder, "cdrom1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "pad1");
+ widget = gtk_builder_get_object(builder, "pad1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "net1");
+ widget = gtk_builder_get_object(builder, "net1");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "SwitchImage");
+ widget = gtk_builder_get_object(builder, "SwitchImage");
gtk_widget_set_sensitive(widget, UsingIso());
- widget = glade_xml_get_widget(xml, "toolbutton_switchimage");
+ widget = gtk_builder_get_object(builder, "toolbutton_switchimage");
gtk_widget_set_sensitive(widget, UsingIso());
- widget = glade_xml_get_widget(xml, "toolbutton_graphics");
+ widget = gtk_builder_get_object(builder, "toolbutton_graphics");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "toolbutton_sound");
+ widget = gtk_builder_get_object(builder, "toolbutton_sound");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "toolbutton_cdrom");
+ widget = gtk_builder_get_object(builder, "toolbutton_cdrom");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "toolbutton_controllers");
+ widget = gtk_builder_get_object(builder, "toolbutton_controllers");
gtk_widget_set_sensitive(widget, FALSE);
- widget = glade_xml_get_widget(xml, "statusbar");
+ widget = gtk_builder_get_object(builder, "statusbar");
gtk_statusbar_pop(GTK_STATUSBAR(widget), 1);
gtk_statusbar_push(GTK_STATUSBAR(widget), 1, _("Emulation Paused."));
}
@@ -218,7 +218,6 @@ void UpdateMenuSlots() {
}
void StartGui() {
- GladeXML *xml;
GtkWidget *widget;
/* If a plugin fails, the Window is not NULL, but is not initialised,
@@ -227,197 +226,199 @@ void StartGui() {
gtk_window_present (GTK_WINDOW (Window));
return;
}*/
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "MainWindow", NULL);
-
- if (!xml) {
- g_warning("We could not load the interface!");
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
+
+ Window = gtk_builder_get_object(builder, "MainWindow");
+ gtk_widget_show(GTK_WIDGET(Window));
- Window = glade_xml_get_widget(xml, "MainWindow");
gtk_window_set_title(GTK_WINDOW(Window), "PCSXR");
gtk_window_set_icon_from_file(GTK_WINDOW(Window), PIXMAPDIR "pcsxr-icon.png", NULL);
gtk_window_set_default_icon_from_file(PIXMAPDIR "pcsxr-icon.png", NULL);
- ResetMenuSlots(xml);
+ ResetMenuSlots();
// Set up callbacks
g_signal_connect_data(GTK_OBJECT(Window), "delete-event",
- G_CALLBACK(OnDestroy), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnDestroy), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
// File menu
- widget = glade_xml_get_widget(xml, "RunCd");
+ widget = gtk_builder_get_object(builder, "RunCd");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnFile_RunCd), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "RunBios");
+ widget = gtk_builder_get_object(builder, "RunBios");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnFile_RunBios), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "RunExe");
+ widget = gtk_builder_get_object(builder, "RunExe");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnFile_RunExe), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "RunImage");
+ widget = gtk_builder_get_object(builder, "RunImage");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnFile_RunImage), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "exit2");
+ widget = gtk_builder_get_object(builder, "exit2");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnFile_Exit), NULL, NULL, G_CONNECT_AFTER);
// States
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot1");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 0, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot2");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot2");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 1, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot3");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot3");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 2, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot4");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot4");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 3, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot5");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot5");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 4, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot6");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot6");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 5, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot7");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot7");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 6, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot8");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot8");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 7, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_LoadSlot9");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_LoadSlot9");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load), (gpointer) 8, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "other1");
+ widget = gtk_builder_get_object(builder, "other1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_load_other), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot1");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 0, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot2");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot2");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 1, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot3");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot3");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 2, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot4");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot4");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 3, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot5");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot5");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 4, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot6");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot6");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 5, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot7");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot7");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 6, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot8");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot8");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 7, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkMenuItem_SaveSlot9");
+ widget = gtk_builder_get_object(builder, "GtkMenuItem_SaveSlot9");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save), (gpointer) 8, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "other2");
+ widget = gtk_builder_get_object(builder, "other2");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(on_states_save_other), NULL, NULL, G_CONNECT_AFTER);
// Emulation menu
- widget = glade_xml_get_widget(xml, "run1");
+ widget = gtk_builder_get_object(builder, "run1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnEmu_Run), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "reset1");
+ widget = gtk_builder_get_object(builder, "reset1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnEmu_Reset), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "shutdown1");
+ widget = gtk_builder_get_object(builder, "shutdown1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnEmu_Shutdown), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "SwitchImage");
+ widget = gtk_builder_get_object(builder, "SwitchImage");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnEmu_SwitchImage), NULL, NULL, G_CONNECT_AFTER);
// Configuration menu
- widget = glade_xml_get_widget(xml, "plugins_bios");
+ widget = gtk_builder_get_object(builder, "plugins_bios");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(ConfigurePlugins), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "graphics1");
+ widget = gtk_builder_get_object(builder, "graphics1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Graphics), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "sound1");
+ widget = gtk_builder_get_object(builder, "sound1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Sound), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "cdrom1");
+ widget = gtk_builder_get_object(builder, "cdrom1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_CdRom), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "pad1");
+ widget = gtk_builder_get_object(builder, "pad1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Pad), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "cpu1");
+ widget = gtk_builder_get_object(builder, "cpu1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Cpu), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "memory_cards1");
+ widget = gtk_builder_get_object(builder, "memory_cards1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Mcds), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "net1");
+ widget = gtk_builder_get_object(builder, "net1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnConf_Net), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "memorydump1");
+ widget = gtk_builder_get_object(builder, "memorydump1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(RunDebugMemoryDialog), NULL, NULL, G_CONNECT_AFTER);
// Cheat menu
- widget = glade_xml_get_widget(xml, "browse1");
+ widget = gtk_builder_get_object(builder, "browse1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(RunCheatListDialog), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "search1");
+ widget = gtk_builder_get_object(builder, "search1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(RunCheatSearchDialog), NULL, NULL, G_CONNECT_AFTER);
// Help menu
- widget = glade_xml_get_widget(xml, "about_pcsxr1");
+ widget = gtk_builder_get_object(builder, "about_pcsxr1");
g_signal_connect_data(GTK_OBJECT(widget), "activate",
G_CALLBACK(OnHelp_About), NULL, NULL, G_CONNECT_AFTER);
// Toolbar
- widget = glade_xml_get_widget(xml, "toolbutton_runcd");
+ widget = gtk_builder_get_object(builder, "toolbutton_runcd");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnFile_RunCd), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_runimage");
+ widget = gtk_builder_get_object(builder, "toolbutton_runimage");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnFile_RunImage), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_run");
+ widget = gtk_builder_get_object(builder, "toolbutton_run");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnEmu_Run), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_switchimage");
+ widget = gtk_builder_get_object(builder, "toolbutton_switchimage");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnEmu_SwitchImage), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_memcards");
+ widget = gtk_builder_get_object(builder, "toolbutton_memcards");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnConf_Mcds), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_graphics");
+ widget = gtk_builder_get_object(builder, "toolbutton_graphics");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnConf_Graphics), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_sound");
+ widget = gtk_builder_get_object(builder, "toolbutton_sound");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnConf_Sound), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_cdrom");
+ widget = gtk_builder_get_object(builder, "toolbutton_cdrom");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnConf_CdRom), NULL, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "toolbutton_controllers");
+ widget = gtk_builder_get_object(builder, "toolbutton_controllers");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnConf_Pad), NULL, NULL, G_CONNECT_AFTER);
@@ -740,7 +741,7 @@ void OnEmu_Shutdown() {
SetIsoFile(NULL);
CdromId[0] = '\0';
CdromLabel[0] = '\0';
- ResetMenuSlots(glade_get_widget_tree(Window));
+ ResetMenuSlots();
}
void OnEmu_SwitchImage() {
diff --git a/gui/Makefile.am b/gui/Makefile.am
index 17ef8927..ce7c16c4 100644
--- a/gui/Makefile.am
+++ b/gui/Makefile.am
@@ -1,7 +1,7 @@
AM_CPPFLAGS = -DPACKAGE_DATA_DIR=\"${datadir}/pcsxr/\" \
-DPIXMAPDIR=\"${datadir}/pixmaps/\" \
-DLOCALE_DIR=\"${datadir}/locale/\" \
- $(GTK2_CFLAGS) $(GLADE2_CFLAGS) \
+ $(GTK2_CFLAGS) \
-I$(top_srcdir)/libpcsxcore -I$(top_srcdir)/include \
-DPSEMU_DATA_DIR=\"${datadir}/psemu\" \
-DDEF_PLUGIN_DIR=\"${libdir}/games/psemu\"
@@ -29,4 +29,4 @@ pcsxr_SOURCES = \
pcsxr_LDADD = \
../libpcsxcore/libpcsxcore.a \
- $(GTK2_LIBS) $(GLADE2_LIBS) -lpthread -lz -lm -lXext -lXtst
+ $(GTK2_LIBS) -lpthread -lz -lm -lXext -lXtst
diff --git a/gui/MemcardDlg.c b/gui/MemcardDlg.c
index e844857f..e134ab96 100644
--- a/gui/MemcardDlg.c
+++ b/gui/MemcardDlg.c
@@ -22,7 +22,6 @@
#include <string.h>
#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>
-#include <glade/glade.h>
#include <signal.h>
#include <sys/time.h>
@@ -49,6 +48,7 @@ enum {
NUM_CL
};
+static GtkBuilder *builder;
GtkWidget *GtkCList_McdList1, *GtkCList_McdList2;
static void AddColumns(GtkTreeView *treeview) {
@@ -162,7 +162,6 @@ static GdkPixbuf *SetIcon(GtkWidget *dialog, short *icon, int i) {
static void LoadListItems(int mcd, GtkWidget *widget) {
int i;
- GladeXML *xml;
GtkWidget *List;
GtkWidget *dialog;
GtkListStore *store;
@@ -173,11 +172,10 @@ static void LoadListItems(int mcd, GtkWidget *widget) {
store = gtk_list_store_new(NUM_CL, GDK_TYPE_PIXBUF, G_TYPE_STRING,
G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING);
- xml = glade_get_widget_tree(widget);
- dialog = glade_xml_get_widget(xml, "McdsDlg");
+ dialog = gtk_builder_get_object(builder, "McdsDlg");
- if (mcd == 1) List = glade_xml_get_widget(xml, "GtkCList_McdList1");
- else List = glade_xml_get_widget(xml, "GtkCList_McdList2");
+ if (mcd == 1) List = gtk_builder_get_object(builder, "GtkCList_McdList1");
+ else List = gtk_builder_get_object(builder, "GtkCList_McdList2");
for (i = 0; i < MAX_MEMCARD_BLOCKS; i++) {
McdBlock *Info;
@@ -225,20 +223,18 @@ static void LoadListItems(int mcd, GtkWidget *widget) {
static void UpdateFilenameButtons(GtkWidget *widget) {
int i;
- GladeXML *xml;
GtkWidget *dialog;
const char *filename;
gchar *p;
- xml = glade_get_widget_tree(widget);
- dialog = glade_xml_get_widget(xml, "McdsDlg");
+ dialog = gtk_builder_get_object(builder, "McdsDlg");
for (i = 0; i < 2; i++) {
if (i == 0) {
- widget = glade_xml_get_widget(xml, "Mcd1Label");
+ widget = gtk_builder_get_object(builder, "Mcd1Label");
filename = Config.Mcd1;
} else {
- widget = glade_xml_get_widget(xml, "Mcd2Label");
+ widget = gtk_builder_get_object(builder, "Mcd2Label");
filename = Config.Mcd2;
}
@@ -265,7 +261,6 @@ static void LoadMcdDlg(GtkWidget *widget) {
static void OnTreeSelectionChanged(GtkTreeSelection *selection, gpointer user_data);
static void UpdateListItems(int mcd, GtkWidget *widget) {
- GladeXML *xml;
GtkWidget *List;
GtkWidget *dialog;
GtkListStore *store;
@@ -275,11 +270,10 @@ static void UpdateListItems(int mcd, GtkWidget *widget) {
int i;
gchar *title;
- xml = glade_get_widget_tree(widget);
- dialog = glade_xml_get_widget(xml, "McdsDlg");
+ dialog = gtk_builder_get_object(builder, "McdsDlg");
- if (mcd == 1) List = glade_xml_get_widget(xml, "GtkCList_McdList1");
- else List = glade_xml_get_widget(xml, "GtkCList_McdList2");
+ if (mcd == 1) List = gtk_builder_get_object(builder, "GtkCList_McdList1");
+ else List = gtk_builder_get_object(builder, "GtkCList_McdList2");
store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(List)));
gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter);
@@ -389,7 +383,6 @@ static void OnMcd_FileChange(GtkWidget *widget, gpointer user_data) {
// format a memory card
static void OnMcd_Format(GtkWidget *widget, gpointer user_data) {
- GladeXML *xml;
GtkWidget *message_dialog;
gint result;
char *str;
@@ -409,8 +402,6 @@ static void OnMcd_Format(GtkWidget *widget, gpointer user_data) {
gtk_widget_destroy(message_dialog);
if (result == GTK_RESPONSE_YES) {
- xml = glade_get_widget_tree(widget);
-
if (memcard == 1) str = Config.Mcd1;
else str = Config.Mcd2;
@@ -510,15 +501,12 @@ static void OnMcd_CopyTo(GtkWidget *widget, gpointer user_data) {
GtkTreeModel *model;
GtkTreePath *path;
gint *i;
- GladeXML *xml;
GtkTreeSelection *treesel;
gchar *str;
char *source, *destination;
int first_free_slot;
- xml = glade_get_widget_tree(widget);
-
if (mcd == 1)
treesel = gtk_tree_view_get_selection(GTK_TREE_VIEW(GtkCList_McdList2));
else
@@ -542,8 +530,6 @@ static void OnMcd_CopyTo(GtkWidget *widget, gpointer user_data) {
return;
}
- xml = glade_get_widget_tree(GtkCList_McdList1);
-
if (mcd == 1) {
str = Config.Mcd1;
source = Mcd2Data;
@@ -566,23 +552,20 @@ static void OnMemcardDelete(GtkWidget *widget, gpointer user_data) {
GtkTreeModel *model;
GtkTreePath *path;
gchar *filename;
- GladeXML *xml;
gboolean selected;
GtkWidget *tree;
GtkTreeSelection *sel;
gint memcard = (int)user_data;
- xml = glade_get_widget_tree(widget);
-
if (memcard == 1) {
- tree = glade_xml_get_widget(xml, "GtkCList_McdList1");
+ tree = gtk_builder_get_object(builder, "GtkCList_McdList1");
sel = gtk_tree_view_get_selection(GTK_TREE_VIEW (tree));
selected = gtk_tree_selection_get_selected (sel, &model, &iter);
data = Mcd1Data;
filename = Config.Mcd1;
} else {
- tree = glade_xml_get_widget(xml, "GtkCList_McdList2");
+ tree = gtk_builder_get_object(builder, "GtkCList_McdList2");
sel = gtk_tree_view_get_selection(GTK_TREE_VIEW (tree));
selected = gtk_tree_selection_get_selected(sel, &model, &iter);
data = Mcd2Data;
@@ -615,7 +598,6 @@ static void OnMemcardDelete(GtkWidget *widget, gpointer user_data) {
}
static void OnTreeSelectionChanged(GtkTreeSelection *selection, gpointer user_data) {
- GladeXML *xml;
GtkTreeIter iter;
GtkTreeModel *model;
GtkTreePath *path;
@@ -626,7 +608,6 @@ static void OnTreeSelectionChanged(GtkTreeSelection *selection, gpointer user_da
gint memcard = (int)user_data;
- xml = glade_get_widget_tree(GtkCList_McdList1);
selected = gtk_tree_selection_get_selected(selection, &model, &iter);
if (selected) {
@@ -640,38 +621,38 @@ static void OnTreeSelectionChanged(GtkTreeSelection *selection, gpointer user_da
GetMcdBlockInfo(1, i + 1, &b);
if ((b.Flags >= 0xA1 && b.Flags <= 0xA3) || ((b.Flags & 0xF0) == 0x50)) {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete1"), TRUE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete1"), TRUE);
} else {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete1"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete1"), FALSE);
}
if ((b.Flags & 0xF0) == 0x50) {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo2"), TRUE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo2"), TRUE);
} else {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo2"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo2"), FALSE);
}
} else {
GetMcdBlockInfo(2, i + 1, &b);
if ((b.Flags >= 0xA1 && b.Flags <= 0xA3) || ((b.Flags & 0xF0) == 0x50)) {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete2"), TRUE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete2"), TRUE);
} else {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete2"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete2"), FALSE);
}
if ((b.Flags & 0xF0) == 0x50) {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo1"), TRUE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo1"), TRUE);
} else {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo1"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo1"), FALSE);
}
}
} else {
if (memcard == 1) {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo2"), FALSE);
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete1"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo2"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete1"), FALSE);
} else {
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_CopyTo1"), FALSE);
- gtk_widget_set_sensitive(glade_xml_get_widget(xml, "GtkButton_Delete2"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_CopyTo1"), FALSE);
+ gtk_widget_set_sensitive(gtk_builder_get_object(builder, "GtkButton_Delete2"), FALSE);
}
}
}
@@ -686,22 +667,22 @@ gboolean updateFunc(gpointer data) {
}
void OnConf_Mcds() {
- GladeXML *xml;
GtkWidget *dialog;
GtkWidget *widget;
GtkTreeSelection *treesel1, *treesel2;
gchar *str;
- xml = glade_xml_new(PACKAGE_DATA_DIR "pcsxr.glade2", "McdsDlg", NULL);
-
- if (!xml) {
- g_warning("We could not load the interface!");
+ builder = gtk_builder_new();
+
+ if (!gtk_builder_add_from_file(builder, PACKAGE_DATA_DIR "pcsxr.ui", NULL)) {
+ g_warning("Error: interface could not be loaded!");
return;
}
- dialog = glade_xml_get_widget(xml, "McdsDlg");
+ dialog = gtk_builder_get_object(builder, "McdsDlg");
gtk_window_set_title(GTK_WINDOW(dialog), _("Memory Card Manager"));
+ gtk_widget_show (dialog);
// Assign default memory cards
if (!strlen(Config.Mcd1)) {
@@ -716,9 +697,9 @@ void OnConf_Mcds() {
g_free(str);
}
- GtkCList_McdList1 = glade_xml_get_widget(xml, "GtkCList_McdList1");
+ GtkCList_McdList1 = gtk_builder_get_object(builder, "GtkCList_McdList1");
AddColumns(GTK_TREE_VIEW(GtkCList_McdList1));
- GtkCList_McdList2 = glade_xml_get_widget(xml, "GtkCList_McdList2");
+ GtkCList_McdList2 = gtk_builder_get_object(builder, "GtkCList_McdList2");
AddColumns(GTK_TREE_VIEW(GtkCList_McdList2));
treesel1 = gtk_tree_view_get_selection(GTK_TREE_VIEW (GtkCList_McdList1));
@@ -737,48 +718,48 @@ void OnConf_Mcds() {
// Setup a handler for when Close or Cancel is clicked
g_signal_connect_data(GTK_OBJECT(dialog), "response",
- G_CALLBACK(OnMcd_Close), xml, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
+ G_CALLBACK(OnMcd_Close), builder, (GClosureNotify)g_object_unref, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkButton_Format1");
+ widget = gtk_builder_get_object(builder, "GtkButton_Format1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_Format), (gpointer)1, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkButton_Format2");
+ widget = gtk_builder_get_object(builder, "GtkButton_Format2");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_Format), (gpointer)2, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "Mcd1Button");
+ widget = gtk_builder_get_object(builder, "Mcd1Button");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_FileChange), (gpointer)1, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "Mcd2Button");
+ widget = gtk_builder_get_object(builder, "Mcd2Button");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_FileChange), (gpointer)2, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkButton_New1");
+ widget = gtk_builder_get_object(builder, "GtkButton_New1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_New), (gpointer)1, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkButton_New2");
+ widget = gtk_builder_get_object(builder, "GtkButton_New2");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_New), (gpointer)2, NULL, G_CONNECT_AFTER);
- widget = glade_xml_get_widget(xml, "GtkButton_CopyTo1");
+ widget = gtk_builder_get_object(builder, "GtkButton_CopyTo1");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_CopyTo), (gpointer)1, NULL, G_CONNECT_AFTER);
gtk_widget_set_sensitive(GTK_WIDGET(widget), FALSE);
- widget = glade_xml_get_widget(xml, "GtkButton_CopyTo2");
+ widget = gtk_builder_get_object(builder, "GtkButton_CopyTo2");
g_signal_connect_data(GTK_OBJECT(widget), "clicked",
G_CALLBACK(OnMcd_CopyTo), (gpointer)2, NULL, G_CONNECT_AFTER);
gtk_widget_set_sensitive(GTK_WIDGET(widget), FALSE);
- widget = glade_xml_get_widget(xml, "GtkButton_Delete1");
+ widget = gtk_builder_get_object(builder, "GtkButton_Delete1");
g_signal_connect_data (GTK_OBJECT (widget), "clicked",
G_CALLBACK(OnMemcardDelete), (gpointer)1, NULL, G_CONNECT_AFTER);
gtk_widget_set_sensitive(GTK_WIDGET(widget), FALSE);
- widget = glade_xml_get_widget(xml, "GtkButton_Delete2");
+ widget = gtk_builder_get_object(builder, "GtkButton_Delete2");
g_signal_connect_data (GTK_OBJECT (widget), "clicked",
G_CALLBACK(OnMemcardDelete), (gpointer)2, NULL, G_CONNECT_AFTER);
gtk_widget_set_sensitive(GTK_WIDGET(widget), FALSE);