1 #include "ephy-history-visit-node.h"
3 G_DEFINE_TYPE(EphyHistoryVisitNode
, ephy_history_visit_node
, EPHY_TYPE_HISTORY_NODE
)
4 #define EPHY_HISTORY_VISIT_NODE_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE ((object), EPHY_TYPE_HISTORY_VISIT_NODE, EphyHistoryVisitNodePrivate))
6 static void ephy_history_visit_node_finalize (GObject
*object
);
8 struct _EphyHistoryVisitNodePrivate
17 ephy_history_visit_node_set_property (GObject
*object
,
22 EphyHistoryVisitNode
*self
= EPHY_HISTORY_VISIT_NODE (object
);
26 case EPHY_HISTORY_VISIT_NODE_PROP_DATE
:
27 self
->priv
->date
= g_value_get_uint64 (value
);
29 case EPHY_HISTORY_VISIT_NODE_PROP_TYPE
:
30 self
->priv
->type
= g_value_get_uchar (value
);
32 case EPHY_HISTORY_VISIT_NODE_PROP_DURATION
:
33 self
->priv
->duration
= g_value_get_uint (value
);
35 case EPHY_HISTORY_VISIT_NODE_PROP_REF_ID
:
36 self
->priv
->ref_id
= g_value_get_uint64 (value
);
39 /* We don't have any other property... */
40 G_OBJECT_WARN_INVALID_PROPERTY_ID (object
, prop_id
, pspec
);
46 ephy_history_visit_node_get_property (GObject
*object
,
51 EphyHistoryVisitNode
*self
= EPHY_HISTORY_VISIT_NODE (object
);
55 case EPHY_HISTORY_VISIT_NODE_PROP_DATE
:
56 g_value_set_uint64 (value
, self
->priv
->date
);
58 case EPHY_HISTORY_VISIT_NODE_PROP_TYPE
:
59 g_value_set_uchar (value
, self
->priv
->type
);
61 case EPHY_HISTORY_VISIT_NODE_PROP_DURATION
:
62 g_value_set_uint (value
, self
->priv
->duration
);
64 case EPHY_HISTORY_VISIT_NODE_PROP_REF_ID
:
65 g_value_set_uint64 (value
, self
->priv
->ref_id
);
68 /* We don't have any other property... */
69 G_OBJECT_WARN_INVALID_PROPERTY_ID (object
, prop_id
, pspec
);
75 ephy_history_visit_node_class_init (EphyHistoryVisitNodeClass
*klass
)
77 GObjectClass
*object_class
= G_OBJECT_CLASS (klass
);
79 object_class
->finalize
= ephy_history_visit_node_finalize
;
81 object_class
->get_property
= ephy_history_visit_node_get_property
;
82 object_class
->set_property
= ephy_history_visit_node_set_property
;
84 g_object_class_install_property (object_class
,
85 EPHY_HISTORY_VISIT_NODE_PROP_DATE
,
86 g_param_spec_uint64 ("date",
89 0 /* minimum value */,
90 G_MAXUINT64
/* maximum value */,
91 0 /* default value */,
92 G_PARAM_CONSTRUCT_ONLY
| G_PARAM_READWRITE
| G_PARAM_STATIC_NAME
| G_PARAM_STATIC_NICK
| G_PARAM_STATIC_BLURB
));
94 g_object_class_install_property (object_class
,
95 EPHY_HISTORY_VISIT_NODE_PROP_TYPE
,
96 g_param_spec_uchar ("type",
99 0 /* minimum value */,
100 G_MAXUINT8
/* maximum value */,
101 0 /* default value */,
102 G_PARAM_CONSTRUCT_ONLY
| G_PARAM_READWRITE
| G_PARAM_STATIC_NAME
| G_PARAM_STATIC_NICK
| G_PARAM_STATIC_BLURB
));
104 g_object_class_install_property (object_class
,
105 EPHY_HISTORY_VISIT_NODE_PROP_DURATION
,
106 g_param_spec_uint ("duration",
108 "Duration of Visit in Seconds",
109 0 /* minimum value */,
110 G_MAXUINT32
/* maximum value */,
111 0 /* default value */,
112 G_PARAM_CONSTRUCT_ONLY
| G_PARAM_READWRITE
| G_PARAM_STATIC_NAME
| G_PARAM_STATIC_NICK
| G_PARAM_STATIC_BLURB
));
114 g_object_class_install_property (object_class
,
115 EPHY_HISTORY_VISIT_NODE_PROP_REF_ID
,
116 g_param_spec_uint64 ("ref_id",
118 "ID of Referring visit",
119 0 /* minimum value */,
120 G_MAXUINT64
/* maximum value */,
121 0 /* default value */,
122 G_PARAM_CONSTRUCT_ONLY
| G_PARAM_READWRITE
| G_PARAM_STATIC_NAME
| G_PARAM_STATIC_NICK
| G_PARAM_STATIC_BLURB
));
124 g_type_class_add_private (object_class
, sizeof (EphyHistoryVisitNodePrivate
));
128 ephy_history_visit_node_init (EphyHistoryVisitNode
*node
)
130 node
->priv
= EPHY_HISTORY_VISIT_NODE_GET_PRIVATE (node
);
134 ephy_history_visit_node_finalize (GObject
*object
)
136 EphyHistoryVisitNode
*node
= EPHY_HISTORY_VISIT_NODE (object
);
138 G_OBJECT_CLASS (ephy_history_visit_node_parent_class
)->finalize (object
);