diff options
Diffstat (limited to 'backend/ev-render-context.c')
-rw-r--r-- | backend/ev-render-context.c | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/backend/ev-render-context.c b/backend/ev-render-context.c new file mode 100644 index 0000000..2d09d44 --- /dev/null +++ b/backend/ev-render-context.c @@ -0,0 +1,79 @@ +#include "ev-render-context.h" + +static void ev_render_context_init (EvRenderContext *rc); +static void ev_render_context_class_init (EvRenderContextClass *class); + + +G_DEFINE_TYPE (EvRenderContext, ev_render_context, G_TYPE_OBJECT); + +static void ev_render_context_init (EvRenderContext *rc) { /* Do Nothing */ } + +static void +ev_render_context_dispose (GObject *object) +{ + EvRenderContext *rc; + + rc = (EvRenderContext *) object; + + if (rc->destroy) { + (*rc->destroy) (rc->data); + rc->destroy = NULL; + } + + (* G_OBJECT_CLASS (ev_render_context_parent_class)->dispose) (object); +} + +static void +ev_render_context_class_init (EvRenderContextClass *class) +{ + GObjectClass *oclass; + + oclass = G_OBJECT_CLASS (class); + + oclass->dispose = ev_render_context_dispose; +} + + +EvRenderContext * +ev_render_context_new (EvOrientation orientation, + gint page, + gdouble scale) +{ + EvRenderContext *rc; + + rc = (EvRenderContext *) g_object_new (EV_TYPE_RENDER_CONTEXT, NULL); + + rc->orientation = orientation; + rc->page = page; + rc->scale = scale; + + return rc; +} + +void +ev_render_context_set_page (EvRenderContext *rc, + gint page) +{ + g_return_if_fail (rc != NULL); + + rc->page = page; +} + +void +ev_render_context_set_orientation (EvRenderContext *rc, + EvOrientation orientation) +{ + g_return_if_fail (rc != NULL); + + rc->orientation = orientation; +} + +void +ev_render_context_set_scale (EvRenderContext *rc, + gdouble scale) +{ + g_return_if_fail (rc != NULL); + + rc->scale = scale; +} + |