diff options
| author | Joel Klinghed <the_jk@yahoo.com> | 2011-11-19 00:12:38 +0100 |
|---|---|---|
| committer | Joel Klinghed <the_jk@yahoo.com> | 2011-11-19 00:12:38 +0100 |
| commit | be0bd5488f13306a0d0afa713a3f3581a338fcbe (patch) | |
| tree | df119946cbe472386383786273a6d459b2a97e48 /src/main.c | |
| parent | 76bf2f26705b06297ef8d54f7870092defc3adf9 (diff) | |
Add about dialog.
Diffstat (limited to 'src/main.c')
| -rw-r--r-- | src/main.c | 22 |
1 files changed, 21 insertions, 1 deletions
@@ -73,6 +73,8 @@ typedef struct GtkWidget* statusbar; guint status_contextid; + GtkWidget* aboutdlg; + GKeyFile* config; gchar* configfile; guint config_timer; @@ -259,6 +261,8 @@ static void do_start(GtkAction* action, gpointer data); static void do_stop(GtkAction* action, gpointer data); static void do_rehash(GtkAction* action, gpointer data); +static void do_about(GtkMenuItem* menuitem, gpointer data); + static gpointer worker_main(gpointer data); static gboolean incoming_msg(gpointer data); static gboolean sync_config(gpointer data); @@ -315,7 +319,7 @@ int main(int argc, char** argv) if (ret == 0) { g_clear_error(&error); - gladefile = "gui/viewtorrents.glade"; + gladefile = g_strdup("gui/viewtorrents.glade"); ret = gtk_builder_add_from_file(builder, gladefile, &error); } #endif @@ -338,6 +342,16 @@ int main(int argc, char** argv) g_signal_connect(gtk_builder_get_object(builder, "quitmenuitem"), "activate", G_CALLBACK(gtk_main_quit), NULL); + master.aboutdlg = GTK_WIDGET(gtk_builder_get_object(builder, + "aboutdialog")); + g_signal_connect_swapped(master.aboutdlg, + "response", + G_CALLBACK(gtk_widget_hide), + master.aboutdlg); + + g_signal_connect(gtk_builder_get_object(builder, "aboutmenuitem"), + "activate", G_CALLBACK(do_about), &master); + master.connectaction = GTK_ACTION(gtk_builder_get_object(builder, "connectaction")); g_signal_connect(master.connectaction, @@ -2234,3 +2248,9 @@ void listselection_changed(GtkTreeSelection* selection, gtk_action_set_sensitive(master->stopaction, FALSE); gtk_action_set_sensitive(master->rehashaction, FALSE); } + +void do_about(GtkMenuItem* G_GNUC_UNUSED menuitem, gpointer data) +{ + master_t* master = data; + gtk_widget_show_all(master->aboutdlg); +} |
