diff options
| author | MenTaLguY <mental@rydia.net> | 2006-01-16 02:36:01 +0000 |
|---|---|---|
| committer | mental <mental@users.sourceforge.net> | 2006-01-16 02:36:01 +0000 |
| commit | 179fa413b047bede6e32109e2ce82437c5fb8d34 (patch) | |
| tree | a5a6ac2c1708bd02288fbd8edb2ff500ff2e0916 /src/display/gnome-canvas-acetate.cpp | |
| download | inkscape-179fa413b047bede6e32109e2ce82437c5fb8d34.tar.gz inkscape-179fa413b047bede6e32109e2ce82437c5fb8d34.zip | |
moving trunk for module inkscape
(bzr r1)
Diffstat (limited to 'src/display/gnome-canvas-acetate.cpp')
| -rw-r--r-- | src/display/gnome-canvas-acetate.cpp | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/src/display/gnome-canvas-acetate.cpp b/src/display/gnome-canvas-acetate.cpp new file mode 100644 index 000000000..1a58c4b19 --- /dev/null +++ b/src/display/gnome-canvas-acetate.cpp @@ -0,0 +1,100 @@ +#define __SP_CANVAS_ACETATE_C__ + +/* + * Infinite invisible canvas item + * + * Author: + * Federico Mena <federico@nuclecu.unam.mx> + * Raph Levien <raph@acm.org> + * Lauris Kaplinski <lauris@kaplinski.com> + * + * Copyright (C) 1998-1999 The Free Software Foundation + * Copyright (C) 2002 Lauris Kaplinski + * + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#include "display-forward.h" +#include "gnome-canvas-acetate.h" + +static void sp_canvas_acetate_class_init (SPCanvasAcetateClass *klass); +static void sp_canvas_acetate_init (SPCanvasAcetate *acetate); +static void sp_canvas_acetate_destroy (GtkObject *object); + +static void sp_canvas_acetate_update (SPCanvasItem *item, NR::Matrix const &affine, unsigned int flags); +static double sp_canvas_acetate_point (SPCanvasItem *item, NR::Point p, SPCanvasItem **actual_item); + +static SPCanvasItemClass *parent_class; + +GtkType +sp_canvas_acetate_get_type (void) +{ + static GtkType acetate_type = 0; + if (!acetate_type) { + GtkTypeInfo acetate_info = { + "SPCanvasAcetate", + sizeof (SPCanvasAcetate), + sizeof (SPCanvasAcetateClass), + (GtkClassInitFunc) sp_canvas_acetate_class_init, + (GtkObjectInitFunc) sp_canvas_acetate_init, + NULL, NULL, NULL + }; + acetate_type = gtk_type_unique (sp_canvas_item_get_type (), &acetate_info); + } + return acetate_type; +} + +static void +sp_canvas_acetate_class_init (SPCanvasAcetateClass *klass) +{ + GtkObjectClass *object_class; + SPCanvasItemClass *item_class; + + object_class = (GtkObjectClass *) klass; + item_class = (SPCanvasItemClass *) klass; + + parent_class = (SPCanvasItemClass*)gtk_type_class (sp_canvas_item_get_type ()); + + object_class->destroy = sp_canvas_acetate_destroy; + + item_class->update = sp_canvas_acetate_update; + item_class->point = sp_canvas_acetate_point; +} + +static void +sp_canvas_acetate_init (SPCanvasAcetate *acetate) +{ + /* Nothing here */ +} + +static void +sp_canvas_acetate_destroy (GtkObject *object) +{ + SPCanvasAcetate *acetate; + + g_return_if_fail (object != NULL); + g_return_if_fail (GNOME_IS_CANVAS_ACETATE (object)); + + acetate = SP_CANVAS_ACETATE (object); + + if (GTK_OBJECT_CLASS (parent_class)->destroy) + (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); +} + +static void +sp_canvas_acetate_update (SPCanvasItem *item, NR::Matrix const &affine, unsigned int flags) +{ + item->x1 = -G_MAXINT; + item->y1 = -G_MAXINT; + item->x2 = G_MAXINT; + item->y2 = G_MAXINT; +} + +static double +sp_canvas_acetate_point (SPCanvasItem *item, NR::Point p, SPCanvasItem **actual_item) +{ + *actual_item = item; + + return 0.0; +} + |
