aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ephy-node.h
diff options
context:
space:
mode:
authorMarco Pesenti Gritti <marco@it.gnome.org>2003-05-20 01:25:12 +0800
committerMarco Pesenti Gritti <mpeseng@src.gnome.org>2003-05-20 01:25:12 +0800
commitcc8f3060b3c57453f2128a573391add2a0bb47d4 (patch)
treea2f1965dfbadb7e8d0de464575abdf02ba6c3641 /lib/ephy-node.h
parentf9f7a48a13d9e876cb641af773a2eb88a4a0aaf6 (diff)
downloadgsoc2013-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.h72
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 */