diff options
author | Christian Persch <chpe@cvs.gnome.org> | 2006-02-09 21:52:45 +0800 |
---|---|---|
committer | Christian Persch <chpe@src.gnome.org> | 2006-02-09 21:52:45 +0800 |
commit | a6c15fb7c0718216ea3950324fd6465f334d16dc (patch) | |
tree | 14ac97b90d9fe663f1af63d0ab4e011a474b2975 /src/bookmarks/ephy-bookmark-action-group.c | |
parent | 119a3c3c65eee95efaa155ba06635f693e79ecfc (diff) | |
download | gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar.gz gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar.bz2 gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar.lz gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar.xz gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.tar.zst gsoc2013-epiphany-a6c15fb7c0718216ea3950324fd6465f334d16dc.zip |
Misc code cleanups: fewer gobject casts, disconnect handlers, save a few
2006-02-09 Christian Persch <chpe@cvs.gnome.org>
* src/bookmarks/ephy-bookmark-action-group.c: (node_changed_cb),
(node_added_cb), (node_removed_cb), (ephy_bookmark_group_new):
* src/bookmarks/ephy-bookmark-action.c:
(ephy_bookmark_action_sync_smart_url),
(ephy_bookmark_action_sync_icon), (connect_proxy),
(ephy_bookmark_action_set_bookmark),
(ephy_bookmark_action_get_property), (ephy_bookmark_action_init),
(ephy_bookmark_action_dispose), (ephy_bookmark_action_class_init),
(ephy_bookmark_action_get_type):
* src/bookmarks/ephy-bookmark-action.h:
* src/bookmarks/ephy-bookmarks-ui.c:
(ephy_bookmarks_ui_attach_window):
* src/bookmarks/ephy-open-tabs-action.c: (activate_cb),
(node_added_cb), (node_removed_cb), (ephy_open_tabs_group_new),
(ephy_open_tabs_action_name):
* src/bookmarks/ephy-related-action.c: (node_changed),
(node_destroyed), (open_link), (ephy_related_action_new):
* src/bookmarks/ephy-topics-entry.c:
* src/bookmarks/ephy-topics-entry.h:
Misc code cleanups: fewer gobject casts, disconnect handlers,
save a few strdups etc.
Diffstat (limited to 'src/bookmarks/ephy-bookmark-action-group.c')
-rw-r--r-- | src/bookmarks/ephy-bookmark-action-group.c | 72 |
1 files changed, 39 insertions, 33 deletions
diff --git a/src/bookmarks/ephy-bookmark-action-group.c b/src/bookmarks/ephy-bookmark-action-group.c index 85598df94..05630bd85 100644 --- a/src/bookmarks/ephy-bookmark-action-group.c +++ b/src/bookmarks/ephy-bookmark-action-group.c @@ -87,13 +87,14 @@ node_changed_cb (EphyNode *parent, char *name; name = ephy_bookmark_action_name (child); - g_return_if_fail (name); + g_assert (name != NULL); + action = gtk_action_group_get_action (actions, name); if (action) { ephy_bookmark_action_updated - (EPHY_BOOKMARK_ACTION (action)); + (EPHY_BOOKMARK_ACTION (action)); } g_free (name); @@ -102,7 +103,7 @@ node_changed_cb (EphyNode *parent, static void node_added_cb (EphyNode *parent, EphyNode *child, - GtkActionGroup *actions) + GtkActionGroup *action_group) { GtkAction *action; char *name, *accel; @@ -110,72 +111,77 @@ node_added_cb (EphyNode *parent, name = ephy_bookmark_action_name (child); action = ephy_bookmark_action_new (child, name); accel = g_strjoin ("/", "<Actions>", - gtk_action_group_get_name (actions), + gtk_action_group_get_name (action_group), name, NULL); gtk_action_set_accel_path (action, accel); - gtk_action_group_add_action (actions, action); + gtk_action_group_add_action (action_group, action); g_object_unref (action); + g_free (accel); g_free (name); ephy_bookmark_action_updated (EPHY_BOOKMARK_ACTION (action)); - g_signal_connect_swapped (G_OBJECT(action), "open-link", - G_CALLBACK (ephy_link_open), actions); + g_signal_connect_swapped (action, "open-link", + G_CALLBACK (ephy_link_open), action_group); } static void node_removed_cb (EphyNode *parent, EphyNode *child, guint index, - GtkActionGroup *actions) + GtkActionGroup *action_group) { GtkAction *action; - char *name; - - name = ephy_bookmark_action_name (child); - g_return_if_fail (name); - action = gtk_action_group_get_action (actions, name); + char name[EPHY_BOOKMARK_ACTION_NAME_BUFFER_SIZE]; + + EPHY_BOOKMARK_ACTION_NAME_PRINTF (name, child); + + action = gtk_action_group_get_action (action_group, name); if (action) { - gtk_action_group_remove_action (actions, action); + gtk_action_group_remove_action (action_group, action); } - - g_free (name); } GtkActionGroup * ephy_bookmark_group_new (EphyNode *node) { - EphyBookmarks *bookmarks = ephy_shell_get_bookmarks (ephy_shell); - EphyNode *smart = ephy_bookmarks_get_smart_bookmarks (bookmarks); - - GPtrArray *children = ephy_node_get_children (node); - GObject *actions = (GObject *) ephy_link_action_group_new ("BA"); + EphyBookmarks *bookmarks; + EphyNode *smart; + GPtrArray *children; + GtkActionGroup *action_group; guint i; + bookmarks = ephy_shell_get_bookmarks (ephy_shell); + smart = ephy_bookmarks_get_smart_bookmarks (bookmarks); + + action_group = (GtkActionGroup *) ephy_link_action_group_new ("BA"); + + children = ephy_node_get_children (node); for (i = 0; i < children->len; i++) { - node_added_cb (node, g_ptr_array_index (children, i), (GtkActionGroup *) actions); + node_added_cb (node, g_ptr_array_index (children, i), + action_group); } ephy_node_signal_connect_object (node, EPHY_NODE_CHILD_ADDED, - (EphyNodeCallback)node_added_cb, - actions); + (EphyNodeCallback) node_added_cb, + (GObject *) action_group); ephy_node_signal_connect_object (node, EPHY_NODE_CHILD_REMOVED, - (EphyNodeCallback)node_removed_cb, - actions); + (EphyNodeCallback) node_removed_cb, + (GObject *) action_group); ephy_node_signal_connect_object (node, EPHY_NODE_CHILD_CHANGED, - (EphyNodeCallback)node_changed_cb, - actions); + (EphyNodeCallback) node_changed_cb, + (GObject *) action_group); ephy_node_signal_connect_object (smart, EPHY_NODE_CHILD_ADDED, - (EphyNodeCallback)smart_added_cb, - actions); + (EphyNodeCallback) smart_added_cb, + (GObject *) action_group); ephy_node_signal_connect_object (smart, EPHY_NODE_CHILD_REMOVED, - (EphyNodeCallback)smart_removed_cb, - actions); + (EphyNodeCallback) smart_removed_cb, + (GObject *) action_group); - return GTK_ACTION_GROUP (actions); + return action_group; } |