diff options
author | matt <mattdangerw@gmail.com> | 2013-05-15 11:08:30 -0700 |
---|---|---|
committer | P. F. Chimento <philip.chimento@gmail.com> | 2013-05-17 15:16:48 +0200 |
commit | 93e4f588a80713cebce33b7a1682c502c4835870 (patch) | |
tree | e21340db8210700dd1ce25c1987fbf145f0b3957 /endless/eospagemanager.c | |
parent | ab5921b74431197b63f8b4be432560c9e01b7425 (diff) |
Use independent replacement for GtkStack in page manager
Replacement is at https://github.com/ptomato/pstack
(Matt & Philip)
[endlessm/eos-sdk#69]
Diffstat (limited to 'endless/eospagemanager.c')
-rw-r--r-- | endless/eospagemanager.c | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/endless/eospagemanager.c b/endless/eospagemanager.c index 051ccce..f3d98a8 100644 --- a/endless/eospagemanager.c +++ b/endless/eospagemanager.c @@ -4,6 +4,7 @@ #include "eospagemanager.h" #include <gtk/gtk.h> +#include <pstack.h> #include <string.h> @@ -208,11 +209,8 @@ set_visible_page_from_info (EosPageManager *self, EosPageManagerPageInfo *info) { /* FIXME when porting to GtkStack */ - GtkNotebook *stack_notebook = GTK_NOTEBOOK (self->priv->stack); - int page_pos = gtk_notebook_page_num (stack_notebook, info->page); - /* Invariant: if info is not NULL, then page must be in stack */ - g_assert (page_pos != -1); - gtk_notebook_set_current_page (stack_notebook, page_pos); + PStack *stack = P_STACK (self->priv->stack); + p_stack_set_visible_child (stack, info->page); self->priv->visible_page_info = info; @@ -582,11 +580,9 @@ eos_page_manager_init (EosPageManager *self) gtk_widget_set_has_window (self_widget, FALSE); /* TODO replace with GtkStack */ - self->priv->stack = gtk_notebook_new (); - g_object_set (self->priv->stack, - "show-tabs", FALSE, - "show-border", FALSE, - NULL); + self->priv->stack = p_stack_new (); + p_stack_set_transition_type (P_STACK (self->priv->stack), + P_STACK_TRANSITION_TYPE_CROSSFADE); gtk_widget_set_parent (self->priv->stack, self_widget); } @@ -815,4 +811,4 @@ eos_page_manager_remove_page_by_name (EosPageManager *self, g_signal_emit_by_name (self, "remove", info->page); assert_internal_state (self); -}
\ No newline at end of file +} |