[gnome-builder/editor-layout] stack: wire up close button



commit 2c09edb28efdd93c893dc0069ae6e96bef7ed3b2
Author: Christian Hergert <christian hergert me>
Date:   Wed Nov 26 02:18:16 2014 -0800

    stack: wire up close button

 src/tabs/gb-tab-stack.c |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)
---
diff --git a/src/tabs/gb-tab-stack.c b/src/tabs/gb-tab-stack.c
index 04825a4..39e1ea4 100644
--- a/src/tabs/gb-tab-stack.c
+++ b/src/tabs/gb-tab-stack.c
@@ -520,6 +520,23 @@ gb_tab_stack_do_move_right (GbTabStack *stack,
 }
 
 static void
+gb_tab_stack_do_close_tab (GbTabStack *stack,
+                           GdkEvent   *event,
+                           GtkButton  *button)
+{
+  GbTabGrid *grid;
+  GbTab *tab;
+
+  g_return_if_fail (GB_IS_TAB_STACK (stack));
+
+  grid = get_grid (stack);
+  tab = gb_tab_stack_get_active (stack);
+
+  if (grid && tab)
+    gb_tab_stack_remove_tab (stack, tab);
+}
+
+static void
 gb_tab_stack_class_init (GbTabStackClass *klass)
 {
   GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
@@ -585,6 +602,12 @@ gb_tab_stack_init (GbTabStack *stack)
                            stack,
                            G_CONNECT_SWAPPED);
 
+  g_signal_connect_object (stack->priv->close,
+                           "clicked",
+                           G_CALLBACK (gb_tab_stack_do_close_tab),
+                           stack,
+                           G_CONNECT_SWAPPED);
+
   layout = GTK_CELL_LAYOUT (stack->priv->combo);
   cell = gtk_cell_renderer_text_new ();
   gtk_cell_layout_pack_start (layout, cell, TRUE);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]