diff options
author | Marco Pesenti Gritti <marco@it.gnome.org> | 2003-05-20 01:25:12 +0800 |
---|---|---|
committer | Marco Pesenti Gritti <mpeseng@src.gnome.org> | 2003-05-20 01:25:12 +0800 |
commit | cc8f3060b3c57453f2128a573391add2a0bb47d4 (patch) | |
tree | a2f1965dfbadb7e8d0de464575abdf02ba6c3641 /lib/ephy-node.h | |
parent | f9f7a48a13d9e876cb641af773a2eb88a4a0aaf6 (diff) | |
download | gsoc2013-epiphany-cc8f3060b3c57453f2128a573391add2a0bb47d4.tar.gz gsoc2013-epiphany-cc8f3060b3c57453f2128a573391add2a0bb47d4.tar.zst gsoc2013-epiphany-cc8f3060b3c57453f2128a573391add2a0bb47d4.zip |
2003-05-19 Marco Pesenti Gritti <marco@it.gnome.org>
* lib/Makefile.am:
* lib/ephy-dnd.c: (ephy_dnd_node_list_extract_nodes):
* lib/ephy-node.c: (write_lock_to_read_lock),
(read_lock_to_write_lock), (lock_gdk), (unlock_gdk), (callback),
(ephy_node_emit_signal), (ephy_node_finalize), (real_remove_child),
(remove_child), (signal_object_weak_notify),
(unref_signal_objects), (ephy_node_dispose), (ephy_node_new),
(ephy_node_new_with_id), (ephy_node_get_id), (ephy_node_ref),
(ephy_node_unref), (ephy_node_freeze), (ephy_node_thaw),
(child_changed), (real_set_property), (ephy_node_set_property),
(ephy_node_get_property), (ephy_node_get_property_string),
(ephy_node_get_property_boolean), (ephy_node_get_property_long),
(ephy_node_get_property_int), (ephy_node_get_property_double),
(ephy_node_get_property_float), (ephy_node_get_property_node),
(save_parent), (ephy_node_save_to_xml), (real_add_child),
(ephy_node_new_from_xml), (ephy_node_add_child),
(ephy_node_remove_child), (ephy_node_has_child),
(ephy_node_real_get_child_index), (ephy_node_sort_children),
(ephy_node_reorder_children), (ephy_node_get_children),
(ephy_node_get_n_children), (ephy_node_get_nth_child),
(get_child_index_real), (ephy_node_get_child_index),
(ephy_node_get_next_child), (ephy_node_get_previous_child),
(ephy_node_signal_connect_object), (ephy_node_signal_disconnect):
* lib/ephy-node.h:
* lib/ephy-state.c: (ephy_states_load), (ensure_states),
(ephy_state_add_window), (ephy_state_add_paned), (ephy_state_save):
* lib/widgets/ephy-node-view.c: (ephy_node_view_class_init),
(ephy_node_view_selection_changed_cb),
(ephy_node_view_set_property), (ephy_node_view_get_property),
(ephy_node_view_remove):
* lib/widgets/ephy-tree-model-node.c:
(ephy_tree_model_node_class_init),
(ephy_tree_model_node_set_property),
(ephy_tree_model_node_get_property),
(ephy_tree_model_node_get_value), (ephy_tree_model_node_get_path),
(ephy_tree_model_node_iter_next),
(ephy_tree_model_node_node_from_iter):
* src/bookmarks/ephy-bookmark-action.c:
(ephy_bookmark_action_init), (ephy_bookmark_action_new):
* src/bookmarks/ephy-bookmark-properties.c:
(ephy_bookmark_properties_class_init),
(ephy_bookmark_properties_set_property):
* src/bookmarks/ephy-bookmarks-editor.c:
(cmd_show_in_bookmarks_bar), (cmd_open_bookmarks_in_tabs),
(cmd_open_bookmarks_in_browser), (cmd_delete),
(cmd_bookmark_properties), (cmd_copy),
(ephy_bookmarks_editor_node_activated_cb),
(ephy_bookmarks_editor_update_menu),
Diffstat (limited to 'lib/ephy-node.h')
-rw-r--r-- | lib/ephy-node.h | 72 |
1 files changed, 26 insertions, 46 deletions
diff --git a/lib/ephy-node.h b/lib/ephy-node.h index e7872400e..9fb3084a0 100644 --- a/lib/ephy-node.h +++ b/lib/ephy-node.h @@ -18,56 +18,38 @@ * $Id$ */ + #ifndef EPHY_NODE_H #define EPHY_NODE_H -#include <glib-object.h> - #include <libxml/tree.h> G_BEGIN_DECLS -#define EPHY_TYPE_NODE (ephy_node_get_type ()) -#define EPHY_NODE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EPHY_TYPE_NODE, EphyNode)) -#define EPHY_NODE_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), EPHY_TYPE_NODE, EphyNodeClass)) -#define EPHY_IS_NODE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EPHY_TYPE_NODE)) -#define EPHY_IS_NODE_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EPHY_TYPE_NODE)) -#define EPHY_NODE_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), EPHY_TYPE_NODE, EphyNodeClass)) - -typedef struct EphyNodePrivate EphyNodePrivate; - -typedef struct -{ - GObject parent; - - EphyNodePrivate *priv; -} EphyNode; +typedef struct EphyNode EphyNode; -typedef struct +typedef enum { - GObjectClass parent; + EPHY_NODE_DESTROYED, /* RBNode *node */ + EPHY_NODE_RESTORED, /* RBNode *node */ + EPHY_NODE_CHILD_ADDED, /* RBNode *node, RBNode *child */ + EPHY_NODE_CHILD_CHANGED, /* RBNode *node, RBNode *child */ + EPHY_NODE_CHILD_REMOVED, /* RBNode *node, RBNode *child */ + EPHY_NODE_CHILDREN_REORDERED /* RBNode *node, int *new_order */ +} EphyNodeSignalType; - /* signals */ - void (*destroyed) (EphyNode *node); - void (*restored) (EphyNode *node); +#include "ephy-node-db.h" - void (*child_added) (EphyNode *node, EphyNode *child); - void (*child_changed) (EphyNode *node, EphyNode *child); - void (*children_reordered) (EphyNode *node, int *new_order); - void (*child_removed) (EphyNode *node, EphyNode *child); -} EphyNodeClass; +typedef void (*EphyNodeCallback) (EphyNode *node, ...); -GType ephy_node_get_type (void); +EphyNode *ephy_node_new (EphyNodeDb *db); -EphyNode *ephy_node_new (void); - -EphyNode *ephy_node_new_with_id (gulong reserved_id); +EphyNode *ephy_node_new_with_id (EphyNodeDb *db, + gulong reserved_id); /* unique node ID */ long ephy_node_get_id (EphyNode *node); -EphyNode *ephy_node_get_from_id (gulong id); - /* refcounting */ void ephy_node_ref (EphyNode *node); void ephy_node_unref (EphyNode *node); @@ -76,13 +58,16 @@ void ephy_node_unref (EphyNode *node); void ephy_node_freeze (EphyNode *node); void ephy_node_thaw (EphyNode *node); -/* property interface */ -enum -{ - EPHY_NODE_PROP_NAME = 0, - EPHY_NODE_PROP_NAME_SORT_KEY = 1 -}; +/* signals */ +int ephy_node_signal_connect_object (EphyNode *node, + EphyNodeSignalType type, + EphyNodeCallback callback, + GObject *object); +void ephy_node_signal_disconnect (EphyNode *node, + int signal_id); + +/* properties */ void ephy_node_set_property (EphyNode *node, guint property_id, const GValue *value); @@ -111,7 +96,8 @@ char *ephy_node_get_property_time (EphyNode *node, /* xml storage */ void ephy_node_save_to_xml (EphyNode *node, xmlNodePtr parent_xml_node); -EphyNode *ephy_node_new_from_xml (xmlNodePtr xml_node); +EphyNode *ephy_node_new_from_xml (EphyNodeDb *db, + xmlNodePtr xml_node); /* DAG structure */ void ephy_node_add_child (EphyNode *node, @@ -139,12 +125,6 @@ EphyNode *ephy_node_get_next_child (EphyNode *node, EphyNode *ephy_node_get_previous_child (EphyNode *node, EphyNode *child); -/* node id services */ -void ephy_node_system_init (gulong reserved_ids); -void ephy_node_system_shutdown (void); - -long ephy_node_new_id (void); - G_END_DECLS #endif /* __EPHY_NODE_H */ |