[totem] main: Add API to add page to the main window



commit c7f739fbad2c982f1ec98b379b202bd93fb1a49e
Author: Bastien Nocera <hadess hadess net>
Date:   Fri May 3 13:20:58 2013 +0200

    main: Add API to add page to the main window

 src/totem-object.c  |   14 ++++++++++++++
 src/totem-private.h |    4 ++++
 src/totem.c         |    1 +
 3 files changed, 19 insertions(+), 0 deletions(-)
---
diff --git a/src/totem-object.c b/src/totem-object.c
index 79495f2..675ce69 100644
--- a/src/totem-object.c
+++ b/src/totem-object.c
@@ -770,6 +770,20 @@ totem_object_remove_sidebar_page (TotemObject *totem,
        totem_sidebar_remove_page (totem, page_id);
 }
 
+void
+totem_object_add_main_page (TotemObject *totem,
+                           const char  *page_id,
+                           GtkWidget   *widget)
+{
+       g_return_if_fail (page_id != NULL);
+       g_return_if_fail (g_str_equal (page_id, "grilo"));
+
+       gtk_stack_add_named (GTK_STACK (totem->stack),
+                            widget,
+                            page_id);
+       gtk_stack_set_visible_child_name (GTK_STACK (totem->stack), page_id);
+}
+
 /**
  * totem_file_opened:
  * @totem: a #TotemObject
diff --git a/src/totem-private.h b/src/totem-private.h
index 6fbf5e5..8ed75cd 100644
--- a/src/totem-private.h
+++ b/src/totem-private.h
@@ -73,6 +73,7 @@ struct _TotemObject {
        /* Control window */
        GtkBuilder *xml;
        GtkWidget *win;
+       GtkWidget *stack;
        BaconVideoWidget *bvw;
        GtkWidget *prefs;
        GtkBuilder *prefs_xml;
@@ -186,6 +187,9 @@ void    totem_object_plugins_shutdown               (TotemObject *totem);
 void   totem_action_fullscreen                 (TotemObject *totem, gboolean state);
 void   totem_action_volume_relative            (TotemObject *totem, double off_pct);
 void   totem_action_volume_toggle_mute         (TotemObject *totem);
+void   totem_object_add_main_page              (TotemObject *totem,
+                                                const char  *page_id,
+                                                GtkWidget   *widget);
 
 /* Signal emission */
 void   totem_file_opened                       (TotemObject *totem,
diff --git a/src/totem.c b/src/totem.c
index ca317d0..2c0ae53 100644
--- a/src/totem.c
+++ b/src/totem.c
@@ -97,6 +97,7 @@ app_init (Totem *totem, char **argv)
                                G_BINDING_INVERT_BOOLEAN);
 
        /* Menubar */
+       totem->stack = GTK_WIDGET (gtk_builder_get_object (totem->xml, "tmw_main_stack"));
        totem_ui_manager_setup (totem);
 
        /* The sidebar */


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