[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r20467 - in gnunet-gtk: contrib src/fs src/gns
From: |
gnunet |
Subject: |
[GNUnet-SVN] r20467 - in gnunet-gtk: contrib src/fs src/gns |
Date: |
Tue, 13 Mar 2012 10:00:24 +0100 |
Author: grothoff
Date: 2012-03-13 10:00:23 +0100 (Tue, 13 Mar 2012)
New Revision: 20467
Added:
gnunet-gtk/contrib/gnunet_gns_gtk_zone_open.glade
Modified:
gnunet-gtk/contrib/Makefile.am
gnunet-gtk/src/fs/gnunet-fs-gtk_open-directory.c
gnunet-gtk/src/gns/gnunet-gns-gtk.c
Log:
-fixing zone open dialog skeleton
Modified: gnunet-gtk/contrib/Makefile.am
===================================================================
--- gnunet-gtk/contrib/Makefile.am 2012-03-12 17:38:42 UTC (rev 20466)
+++ gnunet-gtk/contrib/Makefile.am 2012-03-13 09:00:23 UTC (rev 20467)
@@ -31,6 +31,7 @@
gnunet_fs_gtk_progress_dialog.glade \
gnunet_gns_gtk_about_window.glade \
gnunet_gns_gtk_main_window.glade \
+ gnunet_gns_gtk_zone_open.glade \
gnunet_gtk_status_bar_menu.glade \
gnunet_peerinfo_gtk_about_window.glade \
gnunet_peerinfo_gtk_main_window.glade \
Added: gnunet-gtk/contrib/gnunet_gns_gtk_zone_open.glade
===================================================================
--- gnunet-gtk/contrib/gnunet_gns_gtk_zone_open.glade
(rev 0)
+++ gnunet-gtk/contrib/gnunet_gns_gtk_zone_open.glade 2012-03-13 09:00:23 UTC
(rev 20467)
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+ <!-- interface-requires gtk+ 3.0 -->
+ <object class="GtkFileFilter" id="GNUNET_GNS_GTK_zone_open_filefilter">
+ <patterns>
+ <pattern>*.zkey</pattern>
+ </patterns>
+ </object>
+ <object class="GtkFileChooserDialog"
id="GNUNET_GNS_GTK_zone_open_filechooserdialog">
+ <property name="can_focus">False</property>
+ <property name="border_width">5</property>
+ <property name="title" translatable="yes">Open zone file...</property>
+ <property name="type_hint">dialog</property>
+ <property name="filter">GNUNET_GNS_GTK_zone_open_filefilter</property>
+ <signal name="response"
handler="GNUNET_GNS_GTK_zone_open_dialog_response_cb" swapped="no"/>
+ <child internal-child="vbox">
+ <object class="GtkBox"
id="GNUNET_GNS_GTK_zone_open_filechooserdialog-vbox">
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">2</property>
+ <child internal-child="action_area">
+ <object class="GtkButtonBox"
id="GNUNET_GNS_GTK_zone_open_filechooserdialog-action_area">
+ <property name="can_focus">False</property>
+ <property name="layout_style">end</property>
+ <child>
+ <object class="GtkButton"
id="GNUNET_GNS_GTK_zone_open_cancel_button">
+ <property name="label">gtk-cancel</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkButton"
id="GNUNET_GNS_GTK_zone_open_ok_button">
+ <property name="label">gtk-ok</property>
+ <property name="use_action_appearance">False</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <property name="use_action_appearance">False</property>
+ <property name="use_stock">True</property>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ </child>
+ <action-widgets>
+ <action-widget
response="-6">GNUNET_GNS_GTK_zone_open_cancel_button</action-widget>
+ <action-widget
response="-5">GNUNET_GNS_GTK_zone_open_ok_button</action-widget>
+ </action-widgets>
+ </object>
+</interface>
Modified: gnunet-gtk/src/fs/gnunet-fs-gtk_open-directory.c
===================================================================
--- gnunet-gtk/src/fs/gnunet-fs-gtk_open-directory.c 2012-03-12 17:38:42 UTC
(rev 20466)
+++ gnunet-gtk/src/fs/gnunet-fs-gtk_open-directory.c 2012-03-13 09:00:23 UTC
(rev 20467)
@@ -123,7 +123,7 @@
acc.filename = filename;
acc.sr = NULL;
GNUNET_FS_GTK_mmap_and_scan (filename, &add_child, &acc);
- g_free (filename);
+ GNUNET_free (filename);
}
Modified: gnunet-gtk/src/gns/gnunet-gns-gtk.c
===================================================================
--- gnunet-gtk/src/gns/gnunet-gns-gtk.c 2012-03-12 17:38:42 UTC (rev 20466)
+++ gnunet-gtk/src/gns/gnunet-gns-gtk.c 2012-03-13 09:00:23 UTC (rev 20467)
@@ -61,7 +61,7 @@
*/
static char *zonefile_directory;
-GtkWidget *main_window;
+static GtkWidget *main_window;
/**
* Get cfg.
@@ -129,7 +129,39 @@
GNUNET_break (0); // FIXME, not implemented
}
+
/**
+ * Function called from the open-directory dialog upon completion.
+ *
+ * @param dialog the pseudonym selection dialog
+ * @param response_id response code from the dialog
+ * @param user_data the builder of the dialog
+ */
+void
+GNUNET_GNS_GTK_zone_open_dialog_response_cb (GtkDialog * dialog,
+ gint response_id,
+ gpointer user_data)
+{
+ GtkBuilder *builder = user_data;
+ char *filename;
+
+ if (GTK_RESPONSE_OK != response_id)
+ {
+ gtk_widget_destroy (GTK_WIDGET (dialog));
+ g_object_unref (G_OBJECT (builder));
+ return;
+ }
+ filename = GNUNET_GTK_filechooser_get_filename_utf8 (GTK_FILE_CHOOSER
(dialog));
+ gtk_widget_destroy (GTK_WIDGET (dialog));
+ g_object_unref (G_OBJECT (builder));
+
+ /* FIXME: move to new zone 'filename' */
+ fprintf (stderr, "Got zone `%s'\n", filename);
+ GNUNET_free (filename);
+}
+
+
+/**
* The user selected 'OPEN' in the menu. Open a dialog to select
* a different zonefile (for editing).
*
@@ -140,45 +172,23 @@
GNUNET_GNS_GTK_open_imagemenuitem_activate_cb (GtkMenuItem *menuitem,
gpointer user_data)
{
- GtkWidget *dialog;
- dialog = gtk_file_chooser_dialog_new ("Open zone file...",
- main_window,
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
- NULL);
- if (NULL != zonefile_directory)
- gtk_file_chooser_set_current_folder (dialog, zonefile_directory);
- if (gtk_dialog_run (GTK_DIALOG (dialog)) == GTK_RESPONSE_ACCEPT)
+ GtkWidget *ad;
+ GtkBuilder *builder;
+ GtkWidget *toplevel;
+
+ builder =
+ GNUNET_GTK_get_new_builder ("gnunet_gns_gtk_zone_open.glade", NULL);
+ if (NULL == builder)
{
- char *filename;
- filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (dialog));
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- _("Opening `%s'\n"), filename);
- if (NULL != zone_pkey)
- {
- GNUNET_CRYPTO_rsa_key_free(zone_pkey);
- zone_pkey = GNUNET_CRYPTO_rsa_key_create_from_file(filename);
- if (NULL == zone_pkey)
- {
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- _("Not a valid zone file `%s'\n"), filename);
-
- GtkWidget *err_dialog;
- err_dialog = gtk_message_dialog_new (main_window,
- GTK_DIALOG_DESTROY_WITH_PARENT,
- GTK_MESSAGE_ERROR,
- GTK_BUTTONS_CLOSE,
- _("Error loading file '%s':\n not a
valid zone file"),
- filename);
- gtk_dialog_run (GTK_DIALOG (err_dialog));
- gtk_widget_destroy (err_dialog);
- }
- //if (zone_pkey = GNUNET_CRYPTO_rsa_key_create_from_file (keyfile);)
- }
- g_free (filename);
+ GNUNET_break (0);
+ return;
}
- gtk_widget_destroy (dialog);
+ ad = GTK_WIDGET (gtk_builder_get_object
+ (builder, "GNUNET_GNS_GTK_zone_open_filechooserdialog"));
+ toplevel = gtk_widget_get_toplevel (menuitem);
+ if (GTK_IS_WINDOW (toplevel))
+ gtk_window_set_transient_for (GTK_WINDOW (ad), GTK_WINDOW (toplevel));
+ gtk_window_present (GTK_WINDOW (ad));
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r20467 - in gnunet-gtk: contrib src/fs src/gns,
gnunet <=