[Goodies-commits] r5136 - xfburn/trunk/xfburn

Jean-Francois Wauthy pollux at xfce.org
Fri Jul 18 15:45:54 CEST 2008


Author: pollux
Date: 2008-07-18 13:45:53 +0000 (Fri, 18 Jul 2008)
New Revision: 5136

Modified:
   xfburn/trunk/xfburn/xfburn-compositions-notebook.c
   xfburn/trunk/xfburn/xfburn-compositions-notebook.h
   xfburn/trunk/xfburn/xfburn-main-window.c
   xfburn/trunk/xfburn/xfburn-welcome-tab.c
   xfburn/trunk/xfburn/xfburn-welcome-tab.h
Log:
* XfBurnWelcomeTab does not implement XfburnComposition anymore
* cleanup XfBurnWelcomeTab code a bit


Modified: xfburn/trunk/xfburn/xfburn-compositions-notebook.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-compositions-notebook.c	2008-07-18 12:36:59 UTC (rev 5135)
+++ xfburn/trunk/xfburn/xfburn-compositions-notebook.c	2008-07-18 13:45:53 UTC (rev 5136)
@@ -36,7 +36,7 @@
 /* private members */
 typedef struct
 {
-  gpointer gna;
+  gpointer dummy;
 } XfburnCompositionsNotebookPrivate;
 
 
@@ -160,11 +160,7 @@
   gchar *label_text = NULL;
   static guint i = 0;
   
-  switch (type) {
-    case XFBURN_WELCOME_TAB:
-      composition = xfburn_welcome_tab_new (window, notebook);
-      label_text = g_strdup (_("Welcome"));
-      break;
+  switch (type) {   
     case XFBURN_DATA_COMPOSITION:
       composition = xfburn_data_composition_new ();
       label_text = g_strdup_printf ("%s %d", _("Data composition"), ++i);
@@ -193,8 +189,7 @@
     gtk_notebook_set_tab_reorderable (GTK_NOTEBOOK (notebook), composition, 1);
 	
     g_object_set_data (G_OBJECT (tab), "composition", composition);
-    if (type != XFBURN_WELCOME_TAB)
-      g_signal_connect (G_OBJECT (tab), "button-close-clicked", G_CALLBACK (cb_composition_close), notebook);
+    g_signal_connect (G_OBJECT (tab), "button-close-clicked", G_CALLBACK (cb_composition_close), notebook);
     
     g_signal_connect (G_OBJECT (composition), "name-changed", G_CALLBACK (cb_composition_name_changed), notebook);
   }
@@ -220,15 +215,20 @@
 XfburnComposition *
 xfburn_compositions_notebook_add_composition (XfburnCompositionsNotebook *notebook, XfburnCompositionType type)
 {
-  g_assert (type != XFBURN_WELCOME_TAB);
-
   return add_composition_with_data (notebook, type, NULL);
 }
 
-XfburnWelcomeTab *
-xfburn_compositions_notebook_add_welcome_tab (XfburnCompositionsNotebook *notebook, XfburnMainWindow *window)
+void
+xfburn_compositions_notebook_add_welcome_tab (XfburnCompositionsNotebook *notebook, GtkActionGroup *action_group)
 {
-  return XFBURN_WELCOME_TAB (add_composition_with_data (notebook, XFBURN_WELCOME_TAB, window));
+  GtkWidget *welcome_tab = NULL;
+  GtkWidget *label;
+
+  welcome_tab = xfburn_welcome_tab_new (notebook, action_group);
+  label = gtk_label_new (_("Welcome"));
+
+  gtk_widget_show (welcome_tab);
+  gtk_notebook_append_page (GTK_NOTEBOOK (notebook), welcome_tab, label);
 }
 
 void

Modified: xfburn/trunk/xfburn/xfburn-compositions-notebook.h
===================================================================
--- xfburn/trunk/xfburn/xfburn-compositions-notebook.h	2008-07-18 12:36:59 UTC (rev 5135)
+++ xfburn/trunk/xfburn/xfburn-compositions-notebook.h	2008-07-18 13:45:53 UTC (rev 5136)
@@ -23,7 +23,6 @@
 #include <gtk/gtk.h>
 
 #include "xfburn-main-window.h"
-#include "xfburn-welcome-tab.h"
 #include "xfburn-composition.h"
 
 G_BEGIN_DECLS
@@ -46,7 +45,6 @@
 
 typedef enum
 {
-  XFBURN_WELCOME_TAB,
   XFBURN_DATA_COMPOSITION,
   XFBURN_AUDIO_COMPOSITION,
 } XfburnCompositionType;
@@ -56,7 +54,8 @@
 GtkWidget *xfburn_compositions_notebook_new ();
 
 XfburnComposition *xfburn_compositions_notebook_add_composition (XfburnCompositionsNotebook *notebook, XfburnCompositionType type);
-XfburnWelcomeTab *xfburn_compositions_notebook_add_welcome_tab (XfburnCompositionsNotebook *notebook, XfburnMainWindow *window);
+void xfburn_compositions_notebook_add_welcome_tab (XfburnCompositionsNotebook *notebook, GtkActionGroup *action_group);
+
 void xfburn_compositions_notebook_close_composition (XfburnCompositionsNotebook *notebook);
 
 void xfburn_compositions_notebook_load_composition (XfburnCompositionsNotebook *notebook, const gchar *file);

Modified: xfburn/trunk/xfburn/xfburn-main-window.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-main-window.c	2008-07-18 12:36:59 UTC (rev 5135)
+++ xfburn/trunk/xfburn/xfburn-main-window.c	2008-07-18 13:45:53 UTC (rev 5136)
@@ -58,7 +58,6 @@
 
   gboolean support_cdr;
   gboolean support_cdrw;
-  XfburnWelcomeTab *welcome_tab;
 } XfburnMainWindowPrivate;
 
 /* prototypes */
@@ -316,7 +315,6 @@
   priv->compositions_notebook = xfburn_compositions_notebook_new ();
   gtk_widget_show (priv->compositions_notebook);
   gtk_paned_add2 (GTK_PANED (priv->vpaned), priv->compositions_notebook);
-  priv->welcome_tab = xfburn_compositions_notebook_add_welcome_tab (XFBURN_COMPOSITIONS_NOTEBOOK (priv->compositions_notebook), mainwin);
   
   gtk_paned_set_position (GTK_PANED (priv->vpaned), xfburn_settings_get_int ("vpaned-position", 200));
 
@@ -678,7 +676,8 @@
       gtk_action_set_sensitive (action, FALSE);
     }
 
-    g_object_set (priv->welcome_tab, "action_group", priv->action_group, NULL);
+    /* show welcome tab */
+    xfburn_compositions_notebook_add_welcome_tab (XFBURN_COMPOSITIONS_NOTEBOOK (priv->compositions_notebook), priv->action_group);
   }
 
   return obj;

Modified: xfburn/trunk/xfburn/xfburn-welcome-tab.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-welcome-tab.c	2008-07-18 12:36:59 UTC (rev 5135)
+++ xfburn/trunk/xfburn/xfburn-welcome-tab.c	2008-07-18 13:45:53 UTC (rev 5136)
@@ -43,15 +43,12 @@
 static void xfburn_welcome_tab_class_init (XfburnWelcomeTabClass * klass);
 static void xfburn_welcome_tab_init (XfburnWelcomeTab * sp);
 static void xfburn_welcome_tab_finalize (GObject * object);
-static void composition_interface_init (XfburnCompositionInterface *composition, gpointer iface_data);
 
 #define XFBURN_WELCOME_TAB_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), XFBURN_TYPE_WELCOME_TAB, XfburnWelcomeTabPrivate))
 
 typedef struct {
-  XfburnMainWindow *mainwin;
   XfburnCompositionsNotebook *notebook;
 
-  GtkActionGroup *action_group;
   GtkWidget *button_image;
   GtkWidget *button_data_comp;
   GtkWidget *button_blank;
@@ -59,9 +56,7 @@
 
 /* internals */
 static GtkWidget* create_welcome_button (const gchar *stock, const gchar *text, const gchar *secondary);
-static void update_buttons_from_action_group (XfburnWelcomeTabPrivate *priv);
-static void show_custom_controls (XfburnComposition *composition);
-static void hide_custom_controls (XfburnComposition *composition);
+
 static void burn_image (GtkButton *button, XfburnWelcomeTab *tab);
 static void new_data_composition (GtkButton *button, XfburnWelcomeTab *tab);
 static void blank_disc (GtkButton *button, XfburnWelcomeTab *tab);
@@ -90,15 +85,7 @@
       (GInstanceInitFunc) xfburn_welcome_tab_init,
     };
 
-    static const GInterfaceInfo composition_info = {
-      (GInterfaceInitFunc) composition_interface_init,    /* interface_init */
-      NULL,                                               /* interface_finalize */
-      NULL                                                /* interface_data */
-    };
-    
     type = g_type_register_static (GTK_TYPE_VBOX, "XfburnWelcomeTab", &our_info, 0);
-
-    g_type_add_interface_static (type, XFBURN_TYPE_COMPOSITION, &composition_info);
   }
 
   return type;
@@ -117,15 +104,6 @@
 }
 
 static void
-composition_interface_init (XfburnCompositionInterface *composition, gpointer iface_data)
-{
-  composition->show_custom_controls = show_custom_controls;
-  composition->hide_custom_controls = hide_custom_controls;
-  composition->load = NULL;
-  composition->save = NULL;
-}
-
-static void
 xfburn_welcome_tab_init (XfburnWelcomeTab * obj)
 {
   XfburnWelcomeTabPrivate *priv = XFBURN_WELCOME_TAB_GET_PRIVATE (obj);
@@ -218,41 +196,13 @@
   return button;
 }
 
-static void 
-update_buttons_from_action_group (XfburnWelcomeTabPrivate *priv)
-{
-  GtkAction *action;
-
-  action = gtk_action_group_get_action (priv->action_group, "burn-image");
-  gtk_widget_set_sensitive (priv->button_image, gtk_action_is_sensitive (action));
-
-  action = gtk_action_group_get_action (priv->action_group, "new-composition");
-  gtk_widget_set_sensitive (priv->button_data_comp, gtk_action_is_sensitive (action));
-
-  action = gtk_action_group_get_action (priv->action_group, "blank-disc");
-  gtk_widget_set_sensitive (priv->button_blank, gtk_action_is_sensitive (action));
-}
-
 static void
-show_custom_controls (XfburnComposition *composition)
-{
-  DBG ("show");
-}
-
-static void
-hide_custom_controls (XfburnComposition *composition)
-{
-  DBG ("hide");
-}
-
-static void
 burn_image (GtkButton *button, XfburnWelcomeTab *tab)
 {
-  XfburnWelcomeTabPrivate *priv = XFBURN_WELCOME_TAB_GET_PRIVATE (tab);
   GtkWidget *dialog;
 
   dialog = xfburn_burn_image_dialog_new ();
-  gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (priv->mainwin));
+  gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (xfburn_main_window_get_instance ()));
   gtk_dialog_run (GTK_DIALOG (dialog));
   gtk_widget_destroy (dialog);
 }
@@ -260,11 +210,10 @@
 static void
 blank_disc (GtkButton *button, XfburnWelcomeTab *tab)
 {
-  XfburnWelcomeTabPrivate *priv = XFBURN_WELCOME_TAB_GET_PRIVATE (tab);
   GtkWidget *dialog;
 
   dialog = xfburn_blank_dialog_new ();
-  gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (priv->mainwin));
+  gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (xfburn_main_window_get_instance ()));
   gtk_dialog_run (GTK_DIALOG (dialog));
   gtk_widget_destroy (dialog);
 }
@@ -282,16 +231,26 @@
 /*        */
 
 GtkWidget *
-xfburn_welcome_tab_new (XfburnMainWindow *window, XfburnCompositionsNotebook *notebook)
+xfburn_welcome_tab_new (XfburnCompositionsNotebook *notebook, GtkActionGroup *action_group)
 {
   GtkWidget *obj;
 
   obj = g_object_new (XFBURN_TYPE_WELCOME_TAB, NULL);
   if (obj) {
     XfburnWelcomeTabPrivate *priv = XFBURN_WELCOME_TAB_GET_PRIVATE (obj);
+    GtkAction *action;
 
-    priv->mainwin = window;
     priv->notebook = notebook;
+
+    /* FIXME retrieve action group from UI Manager */
+    action = gtk_action_group_get_action (action_group, "burn-image");
+    gtk_widget_set_sensitive (priv->button_image, gtk_action_is_sensitive (action));
+    
+    action = gtk_action_group_get_action (action_group, "new-composition");
+    gtk_widget_set_sensitive (priv->button_data_comp, gtk_action_is_sensitive (action));
+    
+    action = gtk_action_group_get_action (action_group, "blank-disc");
+    gtk_widget_set_sensitive (priv->button_blank, gtk_action_is_sensitive (action));
   }
 
   return obj;

Modified: xfburn/trunk/xfburn/xfburn-welcome-tab.h
===================================================================
--- xfburn/trunk/xfburn/xfburn-welcome-tab.h	2008-07-18 12:36:59 UTC (rev 5135)
+++ xfburn/trunk/xfburn/xfburn-welcome-tab.h	2008-07-18 13:45:53 UTC (rev 5136)
@@ -27,6 +27,8 @@
 
 #include <gtk/gtk.h>
 
+#include "xfburn-compositions-notebook.h"
+
 G_BEGIN_DECLS
 
 #define XFBURN_TYPE_WELCOME_TAB         (xfburn_welcome_tab_get_type ())
@@ -47,7 +49,7 @@
 } XfburnWelcomeTabClass;
 
 GtkType xfburn_welcome_tab_get_type ();
-GtkWidget *xfburn_welcome_tab_new ();
+GtkWidget *xfburn_welcome_tab_new (XfburnCompositionsNotebook *notebook, GtkActionGroup *action_group);
 
 G_END_DECLS
 




More information about the Goodies-commits mailing list