cally/actor: Use macros for subclassing boilerplate
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3387>
This commit is contained in:
parent
105c8583ee
commit
4483d3ee96
@ -222,7 +222,7 @@ cally_actor_initialize (AtkObject *obj,
|
|||||||
ATK_OBJECT_CLASS (cally_actor_parent_class)->initialize (obj, data);
|
ATK_OBJECT_CLASS (cally_actor_parent_class)->initialize (obj, data);
|
||||||
|
|
||||||
self = CALLY_ACTOR(obj);
|
self = CALLY_ACTOR(obj);
|
||||||
priv = self->priv;
|
priv = cally_actor_get_instance_private (self);
|
||||||
actor = CLUTTER_ACTOR (data);
|
actor = CLUTTER_ACTOR (data);
|
||||||
|
|
||||||
g_signal_connect (actor,
|
g_signal_connect (actor,
|
||||||
@ -284,8 +284,6 @@ cally_actor_init (CallyActor *cally_actor)
|
|||||||
{
|
{
|
||||||
CallyActorPrivate *priv = cally_actor_get_instance_private (cally_actor);
|
CallyActorPrivate *priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
cally_actor->priv = priv;
|
|
||||||
|
|
||||||
priv->action_queue = NULL;
|
priv->action_queue = NULL;
|
||||||
priv->action_idle_handler = 0;
|
priv->action_idle_handler = 0;
|
||||||
|
|
||||||
@ -301,7 +299,7 @@ cally_actor_finalize (GObject *obj)
|
|||||||
CallyActorPrivate *priv = NULL;
|
CallyActorPrivate *priv = NULL;
|
||||||
|
|
||||||
cally_actor = CALLY_ACTOR (obj);
|
cally_actor = CALLY_ACTOR (obj);
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
_cally_actor_clean_action_list (cally_actor);
|
_cally_actor_clean_action_list (cally_actor);
|
||||||
|
|
||||||
@ -561,7 +559,7 @@ cally_actor_real_add_actor (ClutterActor *container,
|
|||||||
AtkObject *atk_parent = ATK_OBJECT (data);
|
AtkObject *atk_parent = ATK_OBJECT (data);
|
||||||
AtkObject *atk_child = clutter_actor_get_accessible (actor);
|
AtkObject *atk_child = clutter_actor_get_accessible (actor);
|
||||||
CallyActor *cally_actor = CALLY_ACTOR (atk_parent);
|
CallyActor *cally_actor = CALLY_ACTOR (atk_parent);
|
||||||
CallyActorPrivate *priv = cally_actor->priv;
|
CallyActorPrivate *priv = cally_actor_get_instance_private (cally_actor);
|
||||||
gint index;
|
gint index;
|
||||||
|
|
||||||
g_return_val_if_fail (CLUTTER_IS_ACTOR (container), 0);
|
g_return_val_if_fail (CLUTTER_IS_ACTOR (container), 0);
|
||||||
@ -611,7 +609,7 @@ cally_actor_real_remove_actor (ClutterActor *container,
|
|||||||
g_object_unref (atk_child);
|
g_object_unref (atk_child);
|
||||||
}
|
}
|
||||||
|
|
||||||
priv = CALLY_ACTOR (atk_parent)->priv;
|
priv = cally_actor_get_instance_private (CALLY_ACTOR (atk_parent));
|
||||||
index = g_list_index (priv->children, actor);
|
index = g_list_index (priv->children, actor);
|
||||||
g_list_free (priv->children);
|
g_list_free (priv->children);
|
||||||
|
|
||||||
@ -733,7 +731,7 @@ cally_actor_action_do_action (AtkAction *action,
|
|||||||
gboolean did_action = FALSE;
|
gboolean did_action = FALSE;
|
||||||
|
|
||||||
cally_actor = CALLY_ACTOR (action);
|
cally_actor = CALLY_ACTOR (action);
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
set = atk_object_ref_state_set (ATK_OBJECT (cally_actor));
|
set = atk_object_ref_state_set (ATK_OBJECT (cally_actor));
|
||||||
|
|
||||||
@ -776,7 +774,7 @@ idle_do_action (gpointer data)
|
|||||||
ClutterActor *actor = NULL;
|
ClutterActor *actor = NULL;
|
||||||
|
|
||||||
cally_actor = CALLY_ACTOR (data);
|
cally_actor = CALLY_ACTOR (data);
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
|
actor = CALLY_GET_CLUTTER_ACTOR (cally_actor);
|
||||||
priv->action_idle_handler = 0;
|
priv->action_idle_handler = 0;
|
||||||
|
|
||||||
@ -804,7 +802,7 @@ cally_actor_action_get_n_actions (AtkAction *action)
|
|||||||
g_return_val_if_fail (CALLY_IS_ACTOR (action), 0);
|
g_return_val_if_fail (CALLY_IS_ACTOR (action), 0);
|
||||||
|
|
||||||
cally_actor = CALLY_ACTOR (action);
|
cally_actor = CALLY_ACTOR (action);
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
return g_list_length (priv->action_list);
|
return g_list_length (priv->action_list);
|
||||||
}
|
}
|
||||||
@ -953,7 +951,7 @@ _cally_actor_clean_action_list (CallyActor *cally_actor)
|
|||||||
{
|
{
|
||||||
CallyActorPrivate *priv = NULL;
|
CallyActorPrivate *priv = NULL;
|
||||||
|
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
if (priv->action_list)
|
if (priv->action_list)
|
||||||
{
|
{
|
||||||
@ -972,7 +970,7 @@ _cally_actor_get_action_info (CallyActor *cally_actor,
|
|||||||
|
|
||||||
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), NULL);
|
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), NULL);
|
||||||
|
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
if (priv->action_list == NULL)
|
if (priv->action_list == NULL)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -1041,7 +1039,7 @@ cally_actor_add_action_full (CallyActor *cally_actor,
|
|||||||
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), -1);
|
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), -1);
|
||||||
g_return_val_if_fail (callback != NULL, -1);
|
g_return_val_if_fail (callback != NULL, -1);
|
||||||
|
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
info = g_new0 (CallyActorActionInfo, 1);
|
info = g_new0 (CallyActorActionInfo, 1);
|
||||||
info->name = g_strdup (action_name);
|
info->name = g_strdup (action_name);
|
||||||
@ -1073,7 +1071,7 @@ cally_actor_remove_action (CallyActor *cally_actor,
|
|||||||
CallyActorPrivate *priv = NULL;
|
CallyActorPrivate *priv = NULL;
|
||||||
|
|
||||||
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), FALSE);
|
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), FALSE);
|
||||||
priv = cally_actor->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
list_node = g_list_nth (priv->action_list, action_id - 1);
|
list_node = g_list_nth (priv->action_list, action_id - 1);
|
||||||
|
|
||||||
@ -1106,7 +1104,7 @@ cally_actor_remove_action_by_name (CallyActor *cally_actor,
|
|||||||
CallyActorPrivate *priv = NULL;
|
CallyActorPrivate *priv = NULL;
|
||||||
|
|
||||||
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), FALSE);
|
g_return_val_if_fail (CALLY_IS_ACTOR (cally_actor), FALSE);
|
||||||
priv = CALLY_ACTOR (cally_actor)->priv;
|
priv = cally_actor_get_instance_private (cally_actor);
|
||||||
|
|
||||||
for (node = priv->action_list; node && !action_found;
|
for (node = priv->action_list; node && !action_found;
|
||||||
node = node->next)
|
node = node->next)
|
||||||
|
@ -35,11 +35,13 @@
|
|||||||
G_BEGIN_DECLS
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
#define CALLY_TYPE_ACTOR (cally_actor_get_type ())
|
#define CALLY_TYPE_ACTOR (cally_actor_get_type ())
|
||||||
#define CALLY_ACTOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CALLY_TYPE_ACTOR, CallyActor))
|
|
||||||
#define CALLY_ACTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), CALLY_TYPE_ACTOR, CallyActorClass))
|
CLUTTER_EXPORT
|
||||||
#define CALLY_IS_ACTOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CALLY_TYPE_ACTOR))
|
G_DECLARE_DERIVABLE_TYPE (CallyActor,
|
||||||
#define CALLY_IS_ACTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), CALLY_TYPE_ACTOR))
|
cally_actor,
|
||||||
#define CALLY_ACTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), CALLY_TYPE_ACTOR, CallyActorClass))
|
CALLY,
|
||||||
|
ACTOR,
|
||||||
|
AtkGObjectAccessible)
|
||||||
|
|
||||||
typedef struct _CallyActor CallyActor;
|
typedef struct _CallyActor CallyActor;
|
||||||
typedef struct _CallyActorClass CallyActorClass;
|
typedef struct _CallyActorClass CallyActorClass;
|
||||||
@ -68,14 +70,6 @@ typedef void (* CallyActionFunc) (CallyActor *cally_actor);
|
|||||||
typedef void (* CallyActionCallback) (CallyActor *cally_actor,
|
typedef void (* CallyActionCallback) (CallyActor *cally_actor,
|
||||||
gpointer user_data);
|
gpointer user_data);
|
||||||
|
|
||||||
struct _CallyActor
|
|
||||||
{
|
|
||||||
/*< private >*/
|
|
||||||
AtkGObjectAccessible parent;
|
|
||||||
|
|
||||||
CallyActorPrivate *priv;
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* CallyActorClass:
|
* CallyActorClass:
|
||||||
* @notify_clutter: Signal handler for notify signal on Clutter actor
|
* @notify_clutter: Signal handler for notify signal on Clutter actor
|
||||||
@ -100,9 +94,6 @@ struct _CallyActorClass
|
|||||||
gpointer data);
|
gpointer data);
|
||||||
};
|
};
|
||||||
|
|
||||||
CLUTTER_EXPORT
|
|
||||||
GType cally_actor_get_type (void) G_GNUC_CONST;
|
|
||||||
|
|
||||||
CLUTTER_EXPORT
|
CLUTTER_EXPORT
|
||||||
AtkObject* cally_actor_new (ClutterActor *actor);
|
AtkObject* cally_actor_new (ClutterActor *actor);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user