2013-10-13 07:47:53 -04:00
|
|
|
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
|
|
|
|
|
|
|
|
#ifndef META_SURFACE_ACTOR_PRIVATE_H
|
|
|
|
#define META_SURFACE_ACTOR_PRIVATE_H
|
|
|
|
|
|
|
|
#include <config.h>
|
|
|
|
|
|
|
|
#include <meta/meta-shaped-texture.h>
|
2014-01-22 09:16:56 -05:00
|
|
|
#include "meta-wayland-types.h"
|
2013-10-13 07:47:53 -04:00
|
|
|
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
|
|
|
#define META_TYPE_SURFACE_ACTOR (meta_surface_actor_get_type())
|
|
|
|
#define META_SURFACE_ACTOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), META_TYPE_SURFACE_ACTOR, MetaSurfaceActor))
|
|
|
|
#define META_SURFACE_ACTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), META_TYPE_SURFACE_ACTOR, MetaSurfaceActorClass))
|
|
|
|
#define META_IS_SURFACE_ACTOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), META_TYPE_SURFACE_ACTOR))
|
|
|
|
#define META_IS_SURFACE_ACTOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), META_TYPE_SURFACE_ACTOR))
|
|
|
|
#define META_SURFACE_ACTOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), META_TYPE_SURFACE_ACTOR, MetaSurfaceActorClass))
|
|
|
|
|
|
|
|
typedef struct _MetaSurfaceActor MetaSurfaceActor;
|
|
|
|
typedef struct _MetaSurfaceActorClass MetaSurfaceActorClass;
|
|
|
|
typedef struct _MetaSurfaceActorPrivate MetaSurfaceActorPrivate;
|
|
|
|
|
|
|
|
struct _MetaSurfaceActorClass
|
|
|
|
{
|
|
|
|
/*< private >*/
|
|
|
|
ClutterActorClass parent_class;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct _MetaSurfaceActor
|
|
|
|
{
|
|
|
|
ClutterActor parent;
|
|
|
|
|
|
|
|
MetaSurfaceActorPrivate *priv;
|
|
|
|
};
|
|
|
|
|
|
|
|
GType meta_surface_actor_get_type (void);
|
|
|
|
|
2014-02-18 21:27:20 -05:00
|
|
|
MetaSurfaceActor *meta_surface_actor_new (MetaWaylandSurface *surface);
|
2014-01-22 09:16:56 -05:00
|
|
|
|
2013-10-13 07:47:53 -04:00
|
|
|
cairo_surface_t *meta_surface_actor_get_image (MetaSurfaceActor *self,
|
|
|
|
cairo_rectangle_int_t *clip);
|
|
|
|
|
|
|
|
MetaShapedTexture *meta_surface_actor_get_texture (MetaSurfaceActor *self);
|
|
|
|
|
2014-02-05 14:06:32 -05:00
|
|
|
gboolean meta_surface_actor_damage_all (MetaSurfaceActor *self);
|
2014-01-22 09:16:56 -05:00
|
|
|
gboolean meta_surface_actor_damage_area (MetaSurfaceActor *self,
|
|
|
|
int x,
|
|
|
|
int y,
|
|
|
|
int width,
|
2014-02-05 14:06:32 -05:00
|
|
|
int height);
|
|
|
|
|
|
|
|
gboolean meta_surface_actor_is_obscured (MetaSurfaceActor *self);
|
|
|
|
gboolean meta_surface_actor_get_unobscured_bounds (MetaSurfaceActor *self,
|
|
|
|
cairo_rectangle_int_t *unobscured_bounds);
|
2013-10-13 07:47:53 -04:00
|
|
|
|
2014-01-22 09:16:56 -05:00
|
|
|
void meta_surface_actor_set_texture (MetaSurfaceActor *self,
|
|
|
|
CoglTexture *texture);
|
|
|
|
void meta_surface_actor_attach_wayland_buffer (MetaSurfaceActor *self,
|
|
|
|
MetaWaylandBuffer *buffer);
|
2013-11-21 17:45:05 -05:00
|
|
|
void meta_surface_actor_set_input_region (MetaSurfaceActor *self,
|
|
|
|
cairo_region_t *region);
|
|
|
|
void meta_surface_actor_set_opaque_region (MetaSurfaceActor *self,
|
|
|
|
cairo_region_t *region);
|
2013-10-13 07:47:53 -04:00
|
|
|
|
2014-02-18 21:27:20 -05:00
|
|
|
MetaWaylandSurface *meta_surface_actor_get_surface (MetaSurfaceActor *surface);
|
|
|
|
|
2013-10-13 07:47:53 -04:00
|
|
|
G_END_DECLS
|
|
|
|
|
|
|
|
#endif /* META_SURFACE_ACTOR_PRIVATE_H */
|