#include <string.h>
#include <sys/stat.h>
-#include <glib/gi18n.h>
+#include <glib/gi18n-lib.h>
#include <gtk/gtk.h>
-#include <glade/glade.h>
-
-#include <libmissioncontrol/mc-account.h>
-#include <libmissioncontrol/mc-protocol.h>
#include <libempathy/empathy-utils.h>
-#include <libempathy/empathy-debug.h>
#include <libempathy/empathy-irc-network-manager.h>
#include "empathy-ui-utils.h"
#include "empathy-irc-network-dialog.h"
-#define DEBUG_DOMAIN "AccountWidgetIRC"
-
typedef struct {
EmpathyIrcNetwork *network;
can_remove = TRUE;
can_move_up = selected > 0;
- can_move_down =
+ can_move_down =
selected < gtk_tree_model_iter_n_children (model, NULL) - 1;
gtk_tree_path_free (path);
GtkWidget *parent)
{
static EmpathyIrcNetworkDialog *dialog = NULL;
- GladeXML *glade;
+ GtkBuilder *gui;
GtkListStore *store;
GtkCellRenderer *renderer;
GtkAdjustment *adjustment;
GtkTreeSelection *selection;
GtkTreeViewColumn *column;
gchar *filename;
+ GtkWidget *sw, *toolbar;
+ GtkStyleContext *context;
g_return_val_if_fail (network != NULL, NULL);
dialog->network = network;
g_object_ref (dialog->network);
- filename = empathy_file_lookup ("empathy-account-widget-irc.glade",
+ filename = empathy_file_lookup ("empathy-account-widget-irc.ui",
"libempathy-gtk");
- glade = empathy_glade_get_file (filename,
- "irc_network_dialog",
- NULL,
+ gui = empathy_builder_get_file (filename,
"irc_network_dialog", &dialog->dialog,
"button_close", &dialog->button_close,
"entry_network", &dialog->entry_network,
"button_remove", &dialog->button_remove,
"button_up", &dialog->button_up,
"button_down", &dialog->button_down,
+ "scrolledwindow_network_server", &sw,
+ "toolbar_network_server", &toolbar,
NULL);
g_free (filename);
GTK_TREE_VIEW (dialog->treeview_servers),
-1, _("Server"), renderer, "text", COL_ADR,
NULL);
+ column = gtk_tree_view_get_column (GTK_TREE_VIEW (dialog->treeview_servers),
+ 0);
+
+ gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
+ gtk_tree_view_column_set_expand (column, TRUE);
/* port */
adjustment = (GtkAdjustment *) gtk_adjustment_new (6667, 1, G_MAXUINT16,
1, 10, 0);
renderer = gtk_cell_renderer_spin_new ();
g_object_set (renderer,
- "editable", TRUE,
+ "editable", TRUE,
"adjustment", adjustment,
NULL);
g_signal_connect (renderer, "edited",
G_CALLBACK (irc_network_dialog_port_edited_cb), dialog);
+
gtk_tree_view_insert_column_with_attributes (
GTK_TREE_VIEW (dialog->treeview_servers),
-1, _("Port"), renderer, "text", COL_PORT,
NULL);
+
column = gtk_tree_view_get_column (GTK_TREE_VIEW (dialog->treeview_servers),
1);
+ gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
gtk_tree_view_column_set_expand (column, TRUE);
/* SSL */
GTK_TREE_VIEW (dialog->treeview_servers));
gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
+ column = gtk_tree_view_get_column (GTK_TREE_VIEW (dialog->treeview_servers),
+ 2);
+ gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
+
+ gtk_tree_view_column_set_expand (column, TRUE);
/* charset */
totem_subtitle_encoding_init (GTK_COMBO_BOX (dialog->combobox_charset));
irc_network_dialog_setup (dialog);
- empathy_glade_connect (glade, dialog,
+ empathy_builder_connect (gui, dialog,
"irc_network_dialog", "destroy", irc_network_dialog_destroy_cb,
"button_close", "clicked", irc_network_dialog_close_clicked_cb,
"entry_network", "focus-out-event", irc_network_dialog_network_focus_cb,
"combobox_charset", "changed", irc_network_dialog_combobox_charset_changed_cb,
NULL);
- g_object_unref (glade);
+ g_object_unref (gui);
g_object_add_weak_pointer (G_OBJECT (dialog->dialog),
(gpointer) &dialog);
GTK_WINDOW (parent));
gtk_window_set_modal (GTK_WINDOW (dialog->dialog), TRUE);
+ /* join the add/remove toolbar to the treeview */
+ context = gtk_widget_get_style_context (sw);
+ gtk_style_context_set_junction_sides (context, GTK_JUNCTION_BOTTOM);
+
+ context = gtk_widget_get_style_context (toolbar);
+ gtk_style_context_set_junction_sides (context, GTK_JUNCTION_TOP);
+
irc_network_dialog_network_update_buttons (dialog);
+ gtk_widget_show_all (dialog->dialog);
+
+ gtk_window_set_resizable (GTK_WINDOW (dialog->dialog), FALSE);
return dialog->dialog;
}