diff options
Diffstat (limited to 'lib/toolbar/ephy-toolbar-bonobo-view.c')
-rw-r--r-- | lib/toolbar/ephy-toolbar-bonobo-view.c | 193 |
1 files changed, 0 insertions, 193 deletions
diff --git a/lib/toolbar/ephy-toolbar-bonobo-view.c b/lib/toolbar/ephy-toolbar-bonobo-view.c deleted file mode 100644 index a22356e1e..000000000 --- a/lib/toolbar/ephy-toolbar-bonobo-view.c +++ /dev/null @@ -1,193 +0,0 @@ -/* - * Copyright (C) 2002 Ricardo Fernández Pascual - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - */ - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include <libgnome/gnome-i18n.h> - -#include "ephy-gobject-misc.h" -#include "ephy-marshal.h" -#include "ephy-toolbar-bonobo-view.h" -#include "ephy-bonobo-extensions.h" - -#define NOT_IMPLEMENTED g_warning ("not implemented: " G_STRLOC); -//#define DEBUG_MSG(x) g_print x -#define DEBUG_MSG(x) - -/** - * Private data - */ -struct _EphyTbBonoboViewPrivate -{ - EphyToolbar *tb; - BonoboUIComponent *ui; - gchar *path; -}; - -/** - * Private functions, only availble from this file - */ -static void ephy_tb_bonobo_view_class_init (EphyTbBonoboViewClass *klass); -static void ephy_tb_bonobo_view_init (EphyTbBonoboView *tb); -static void ephy_tb_bonobo_view_finalize_impl (GObject *o); -static void ephy_tb_bonobo_view_rebuild (EphyTbBonoboView *tbv); -static void ephy_tb_bonobo_view_tb_changed (EphyToolbar *tb, EphyTbBonoboView *tbv); - -static gpointer g_object_class; - -/** - * TbBonoboView object - */ - -MAKE_GET_TYPE (ephy_tb_bonobo_view, "EphyTbBonoboView", EphyTbBonoboView, ephy_tb_bonobo_view_class_init, - ephy_tb_bonobo_view_init, G_TYPE_OBJECT); - -static void -ephy_tb_bonobo_view_class_init (EphyTbBonoboViewClass *klass) -{ - G_OBJECT_CLASS (klass)->finalize = ephy_tb_bonobo_view_finalize_impl; - - g_object_class = g_type_class_peek_parent (klass); -} - -static void -ephy_tb_bonobo_view_init (EphyTbBonoboView *tb) -{ - EphyTbBonoboViewPrivate *p = g_new0 (EphyTbBonoboViewPrivate, 1); - tb->priv = p; -} - -static void -ephy_tb_bonobo_view_finalize_impl (GObject *o) -{ - EphyTbBonoboView *tbv = EPHY_TB_BONOBO_VIEW (o); - EphyTbBonoboViewPrivate *p = tbv->priv; - - if (p->tb) - { - g_signal_handlers_disconnect_matched (p->tb, G_SIGNAL_MATCH_DATA, 0, 0, - NULL, NULL, tbv); - g_object_unref (p->tb); - } - if (p->ui) - { - g_object_unref (p->ui); - } - if (p->path) - { - g_free (p->path); - } - - g_free (p); - - DEBUG_MSG (("EphyTbBonoboView finalized\n")); - - G_OBJECT_CLASS (g_object_class)->finalize (o); -} - -EphyTbBonoboView * -ephy_tb_bonobo_view_new (void) -{ - EphyTbBonoboView *ret = g_object_new (EPHY_TYPE_TB_BONOBO_VIEW, NULL); - return ret; -} - -void -ephy_tb_bonobo_view_set_toolbar (EphyTbBonoboView *tbv, EphyToolbar *tb) -{ - EphyTbBonoboViewPrivate *p = tbv->priv; - - if (p->tb) - { - g_signal_handlers_disconnect_matched (p->tb, G_SIGNAL_MATCH_DATA, 0, 0, - NULL, NULL, tbv); - g_object_unref (p->tb); - } - - p->tb = g_object_ref (tb); - g_signal_connect (p->tb, "changed", G_CALLBACK (ephy_tb_bonobo_view_tb_changed), tbv); - - if (p->ui) - { - ephy_tb_bonobo_view_rebuild (tbv); - } -} - -static void -ephy_tb_bonobo_view_tb_changed (EphyToolbar *tb, EphyTbBonoboView *tbv) -{ - EphyTbBonoboViewPrivate *p = tbv->priv; - if (p->ui) - { - ephy_tb_bonobo_view_rebuild (tbv); - } -} - -void -ephy_tb_bonobo_view_set_path (EphyTbBonoboView *tbv, - BonoboUIComponent *ui, - const gchar *path) -{ - EphyTbBonoboViewPrivate *p = tbv->priv; - - if (p->ui) - { - g_object_unref (p->ui); - } - - if (p->path) - { - g_free (p->path); - } - - p->ui = g_object_ref (ui); - p->path = g_strdup (path); - - if (p->tb) - { - ephy_tb_bonobo_view_rebuild (tbv); - } -} - -static void -ephy_tb_bonobo_view_rebuild (EphyTbBonoboView *tbv) -{ - EphyTbBonoboViewPrivate *p = tbv->priv; - GSList *items; - GSList *li; - uint index = 0; - - g_return_if_fail (EPHY_IS_TOOLBAR (p->tb)); - g_return_if_fail (BONOBO_IS_UI_COMPONENT (p->ui)); - g_return_if_fail (p->path); - - DEBUG_MSG (("Rebuilding EphyTbBonoboView\n")); - - ephy_bonobo_clear_path (p->ui, p->path); - - items = (GSList *) ephy_toolbar_get_item_list (p->tb); - for (li = items; li; li = li->next) - { - ephy_tb_item_add_to_bonobo_tb (li->data, p->ui, p->path, index++); - } - - DEBUG_MSG (("Rebuilt EphyTbBonoboView\n")); -} - |