static void pnl_tab_set_property (GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec) { PnlTab *self = PNL_TAB (object); switch (prop_id) { case PROP_EDGE: pnl_tab_set_edge (self, g_value_get_enum (value)); break; case PROP_TITLE: pnl_tab_set_title (self, g_value_get_string (value)); break; case PROP_WIDGET: pnl_tab_set_widget (self, g_value_get_object (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); } }
static void pnl_tab_strip_update_edge (GtkWidget *widget, gpointer user_data) { GtkPositionType edge = GPOINTER_TO_INT (user_data); g_assert (GTK_IS_WIDGET (widget)); if (PNL_IS_TAB (widget)) pnl_tab_set_edge (PNL_TAB (widget), edge); }
static void pnl_tab_strip_add (GtkContainer *container, GtkWidget *widget) { PnlTabStrip *self = (PnlTabStrip *)container; PnlTabStripPrivate *priv = pnl_tab_strip_get_instance_private (self); g_assert (PNL_IS_TAB_STRIP (self)); g_assert (GTK_IS_WIDGET (widget)); if (PNL_IS_TAB (widget)) pnl_tab_set_edge (PNL_TAB (widget), priv->edge); GTK_CONTAINER_CLASS (pnl_tab_strip_parent_class)->add (container, widget); }