mirror of
https://github.com/Ryujinx/GtkSharp.git
synced 2025-04-29 05:16:31 +00:00
2002-08-17 Duncan Mak <duncan@ximian.com>
* glue/canvas-proxy.c: * glue/canvas-proxy.h: New files. Glue for subclassing CanvasItem from C#. * glue/canvas-proxy-marshal.c: * glue/canvas-proxy-marshal.h: * glue/canvas-proxy-marshal.list: Added to handle marshaling signals used by CanvasProxy. svn path=/trunk/gtk-sharp/; revision=6682
This commit is contained in:
parent
64addd90b9
commit
40dd8134e3
11
ChangeLog
11
ChangeLog
|
@ -1,3 +1,14 @@
|
||||||
|
2002-08-17 Duncan Mak <duncan@ximian.com>
|
||||||
|
|
||||||
|
* glue/canvas-proxy.c:
|
||||||
|
* glue/canvas-proxy.h: New files. Glue for subclassing CanvasItem
|
||||||
|
from C#.
|
||||||
|
|
||||||
|
* glue/canvas-proxy-marshal.c:
|
||||||
|
* glue/canvas-proxy-marshal.h:
|
||||||
|
* glue/canvas-proxy-marshal.list: Added to handle marshaling
|
||||||
|
signals used by CanvasProxy.
|
||||||
|
|
||||||
2002-08-15 Mike Kestner <mkestner@speakeasy.net>
|
2002-08-15 Mike Kestner <mkestner@speakeasy.net>
|
||||||
|
|
||||||
* sample/Makefile.in : add some art-sharp refs
|
* sample/Makefile.in : add some art-sharp refs
|
||||||
|
|
|
@ -12,7 +12,9 @@ BASESOURCES = \
|
||||||
paned.c \
|
paned.c \
|
||||||
style.c \
|
style.c \
|
||||||
type.c \
|
type.c \
|
||||||
widget.c
|
widget.c \
|
||||||
|
canvas-proxy.c \
|
||||||
|
canvas-proxy.h
|
||||||
|
|
||||||
GNOMESOURCES = \
|
GNOMESOURCES = \
|
||||||
canvasitem.c \
|
canvasitem.c \
|
||||||
|
|
225
glue/canvas-proxy-marshal.c
Normal file
225
glue/canvas-proxy-marshal.c
Normal file
|
@ -0,0 +1,225 @@
|
||||||
|
|
||||||
|
#include <glib-object.h>
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef G_ENABLE_DEBUG
|
||||||
|
#define g_marshal_value_peek_boolean(v) g_value_get_boolean (v)
|
||||||
|
#define g_marshal_value_peek_char(v) g_value_get_char (v)
|
||||||
|
#define g_marshal_value_peek_uchar(v) g_value_get_uchar (v)
|
||||||
|
#define g_marshal_value_peek_int(v) g_value_get_int (v)
|
||||||
|
#define g_marshal_value_peek_uint(v) g_value_get_uint (v)
|
||||||
|
#define g_marshal_value_peek_long(v) g_value_get_long (v)
|
||||||
|
#define g_marshal_value_peek_ulong(v) g_value_get_ulong (v)
|
||||||
|
#define g_marshal_value_peek_int64(v) g_value_get_int64 (v)
|
||||||
|
#define g_marshal_value_peek_uint64(v) g_value_get_uint64 (v)
|
||||||
|
#define g_marshal_value_peek_enum(v) g_value_get_enum (v)
|
||||||
|
#define g_marshal_value_peek_flags(v) g_value_get_flags (v)
|
||||||
|
#define g_marshal_value_peek_float(v) g_value_get_float (v)
|
||||||
|
#define g_marshal_value_peek_double(v) g_value_get_double (v)
|
||||||
|
#define g_marshal_value_peek_string(v) (char*) g_value_get_string (v)
|
||||||
|
#define g_marshal_value_peek_param(v) g_value_get_param (v)
|
||||||
|
#define g_marshal_value_peek_boxed(v) g_value_get_boxed (v)
|
||||||
|
#define g_marshal_value_peek_pointer(v) g_value_get_pointer (v)
|
||||||
|
#define g_marshal_value_peek_object(v) g_value_get_object (v)
|
||||||
|
#else /* !G_ENABLE_DEBUG */
|
||||||
|
/* WARNING: This code accesses GValues directly, which is UNSUPPORTED API.
|
||||||
|
* Do not access GValues directly in your code. Instead, use the
|
||||||
|
* g_value_get_*() functions
|
||||||
|
*/
|
||||||
|
#define g_marshal_value_peek_boolean(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_char(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uchar(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_int(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_uint(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_long(v) (v)->data[0].v_long
|
||||||
|
#define g_marshal_value_peek_ulong(v) (v)->data[0].v_ulong
|
||||||
|
#define g_marshal_value_peek_int64(v) (v)->data[0].v_int64
|
||||||
|
#define g_marshal_value_peek_uint64(v) (v)->data[0].v_uint64
|
||||||
|
#define g_marshal_value_peek_enum(v) (v)->data[0].v_int
|
||||||
|
#define g_marshal_value_peek_flags(v) (v)->data[0].v_uint
|
||||||
|
#define g_marshal_value_peek_float(v) (v)->data[0].v_float
|
||||||
|
#define g_marshal_value_peek_double(v) (v)->data[0].v_double
|
||||||
|
#define g_marshal_value_peek_string(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_param(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_boxed(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_pointer(v) (v)->data[0].v_pointer
|
||||||
|
#define g_marshal_value_peek_object(v) (v)->data[0].v_pointer
|
||||||
|
#endif /* !G_ENABLE_DEBUG */
|
||||||
|
|
||||||
|
|
||||||
|
/* VOID:OBJECT,DOUBLE,POINTER,INT (canvas-proxy-marshal.list:1) */
|
||||||
|
void
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_DOUBLE_POINTER_INT (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data)
|
||||||
|
{
|
||||||
|
typedef void (*GMarshalFunc_VOID__OBJECT_DOUBLE_POINTER_INT) (gpointer data1,
|
||||||
|
gpointer arg_1,
|
||||||
|
gdouble arg_2,
|
||||||
|
gpointer arg_3,
|
||||||
|
gint arg_4,
|
||||||
|
gpointer data2);
|
||||||
|
register GMarshalFunc_VOID__OBJECT_DOUBLE_POINTER_INT callback;
|
||||||
|
register GCClosure *cc = (GCClosure*) closure;
|
||||||
|
register gpointer data1, data2;
|
||||||
|
|
||||||
|
g_return_if_fail (n_param_values == 5);
|
||||||
|
|
||||||
|
if (G_CCLOSURE_SWAP_DATA (closure))
|
||||||
|
{
|
||||||
|
data1 = closure->data;
|
||||||
|
data2 = g_value_peek_pointer (param_values + 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
data1 = g_value_peek_pointer (param_values + 0);
|
||||||
|
data2 = closure->data;
|
||||||
|
}
|
||||||
|
callback = (GMarshalFunc_VOID__OBJECT_DOUBLE_POINTER_INT) (marshal_data ? marshal_data : cc->callback);
|
||||||
|
|
||||||
|
callback (data1,
|
||||||
|
g_marshal_value_peek_object (param_values + 1),
|
||||||
|
g_marshal_value_peek_double (param_values + 2),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 3),
|
||||||
|
g_marshal_value_peek_int (param_values + 4),
|
||||||
|
data2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* DOUBLE:OBJECT,DOUBLE,DOUBLE,INT,INT,POINTER (canvas-proxy-marshal.list:2) */
|
||||||
|
void
|
||||||
|
g_cclosure_user_marshal_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data)
|
||||||
|
{
|
||||||
|
typedef gdouble (*GMarshalFunc_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER) (gpointer data1,
|
||||||
|
gpointer arg_1,
|
||||||
|
gdouble arg_2,
|
||||||
|
gdouble arg_3,
|
||||||
|
gint arg_4,
|
||||||
|
gint arg_5,
|
||||||
|
gpointer arg_6,
|
||||||
|
gpointer data2);
|
||||||
|
register GMarshalFunc_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER callback;
|
||||||
|
register GCClosure *cc = (GCClosure*) closure;
|
||||||
|
register gpointer data1, data2;
|
||||||
|
gdouble v_return;
|
||||||
|
|
||||||
|
g_return_if_fail (return_value != NULL);
|
||||||
|
g_return_if_fail (n_param_values == 7);
|
||||||
|
|
||||||
|
if (G_CCLOSURE_SWAP_DATA (closure))
|
||||||
|
{
|
||||||
|
data1 = closure->data;
|
||||||
|
data2 = g_value_peek_pointer (param_values + 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
data1 = g_value_peek_pointer (param_values + 0);
|
||||||
|
data2 = closure->data;
|
||||||
|
}
|
||||||
|
callback = (GMarshalFunc_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER) (marshal_data ? marshal_data : cc->callback);
|
||||||
|
|
||||||
|
v_return = callback (data1,
|
||||||
|
g_marshal_value_peek_object (param_values + 1),
|
||||||
|
g_marshal_value_peek_double (param_values + 2),
|
||||||
|
g_marshal_value_peek_double (param_values + 3),
|
||||||
|
g_marshal_value_peek_int (param_values + 4),
|
||||||
|
g_marshal_value_peek_int (param_values + 5),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 6),
|
||||||
|
data2);
|
||||||
|
|
||||||
|
g_value_set_double (return_value, v_return);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* VOID:OBJECT,POINTER,POINTER,POINTER,POINTER (canvas-proxy-marshal.list:3) */
|
||||||
|
void
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data)
|
||||||
|
{
|
||||||
|
typedef void (*GMarshalFunc_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER) (gpointer data1,
|
||||||
|
gpointer arg_1,
|
||||||
|
gpointer arg_2,
|
||||||
|
gpointer arg_3,
|
||||||
|
gpointer arg_4,
|
||||||
|
gpointer arg_5,
|
||||||
|
gpointer data2);
|
||||||
|
register GMarshalFunc_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER callback;
|
||||||
|
register GCClosure *cc = (GCClosure*) closure;
|
||||||
|
register gpointer data1, data2;
|
||||||
|
|
||||||
|
g_return_if_fail (n_param_values == 6);
|
||||||
|
|
||||||
|
if (G_CCLOSURE_SWAP_DATA (closure))
|
||||||
|
{
|
||||||
|
data1 = closure->data;
|
||||||
|
data2 = g_value_peek_pointer (param_values + 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
data1 = g_value_peek_pointer (param_values + 0);
|
||||||
|
data2 = closure->data;
|
||||||
|
}
|
||||||
|
callback = (GMarshalFunc_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER) (marshal_data ? marshal_data : cc->callback);
|
||||||
|
|
||||||
|
callback (data1,
|
||||||
|
g_marshal_value_peek_object (param_values + 1),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 2),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 3),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 4),
|
||||||
|
g_marshal_value_peek_pointer (param_values + 5),
|
||||||
|
data2);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* VOID:OBJECT,INT,INT,INT,INT (canvas-proxy-marshal.list:4) */
|
||||||
|
void
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_INT_INT_INT_INT (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data)
|
||||||
|
{
|
||||||
|
typedef void (*GMarshalFunc_VOID__OBJECT_INT_INT_INT_INT) (gpointer data1,
|
||||||
|
gpointer arg_1,
|
||||||
|
gint arg_2,
|
||||||
|
gint arg_3,
|
||||||
|
gint arg_4,
|
||||||
|
gint arg_5,
|
||||||
|
gpointer data2);
|
||||||
|
register GMarshalFunc_VOID__OBJECT_INT_INT_INT_INT callback;
|
||||||
|
register GCClosure *cc = (GCClosure*) closure;
|
||||||
|
register gpointer data1, data2;
|
||||||
|
|
||||||
|
g_return_if_fail (n_param_values == 6);
|
||||||
|
|
||||||
|
if (G_CCLOSURE_SWAP_DATA (closure))
|
||||||
|
{
|
||||||
|
data1 = closure->data;
|
||||||
|
data2 = g_value_peek_pointer (param_values + 0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
data1 = g_value_peek_pointer (param_values + 0);
|
||||||
|
data2 = closure->data;
|
||||||
|
}
|
||||||
|
callback = (GMarshalFunc_VOID__OBJECT_INT_INT_INT_INT) (marshal_data ? marshal_data : cc->callback);
|
||||||
|
|
||||||
|
callback (data1,
|
||||||
|
g_marshal_value_peek_object (param_values + 1),
|
||||||
|
g_marshal_value_peek_int (param_values + 2),
|
||||||
|
g_marshal_value_peek_int (param_values + 3),
|
||||||
|
g_marshal_value_peek_int (param_values + 4),
|
||||||
|
g_marshal_value_peek_int (param_values + 5),
|
||||||
|
data2);
|
||||||
|
}
|
||||||
|
|
44
glue/canvas-proxy-marshal.h
Normal file
44
glue/canvas-proxy-marshal.h
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
|
||||||
|
#ifndef __g_cclosure_user_marshal_MARSHAL_H__
|
||||||
|
#define __g_cclosure_user_marshal_MARSHAL_H__
|
||||||
|
|
||||||
|
#include <glib-object.h>
|
||||||
|
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
/* VOID:OBJECT,DOUBLE,POINTER,INT (canvas-proxy-marshal.list:1) */
|
||||||
|
extern void g_cclosure_user_marshal_VOID__OBJECT_DOUBLE_POINTER_INT (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data);
|
||||||
|
|
||||||
|
/* DOUBLE:OBJECT,DOUBLE,DOUBLE,INT,INT,POINTER (canvas-proxy-marshal.list:2) */
|
||||||
|
extern void g_cclosure_user_marshal_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data);
|
||||||
|
|
||||||
|
/* VOID:OBJECT,POINTER,POINTER,POINTER,POINTER (canvas-proxy-marshal.list:3) */
|
||||||
|
extern void g_cclosure_user_marshal_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data);
|
||||||
|
|
||||||
|
/* VOID:OBJECT,INT,INT,INT,INT (canvas-proxy-marshal.list:4) */
|
||||||
|
extern void g_cclosure_user_marshal_VOID__OBJECT_INT_INT_INT_INT (GClosure *closure,
|
||||||
|
GValue *return_value,
|
||||||
|
guint n_param_values,
|
||||||
|
const GValue *param_values,
|
||||||
|
gpointer invocation_hint,
|
||||||
|
gpointer marshal_data);
|
||||||
|
|
||||||
|
G_END_DECLS
|
||||||
|
|
||||||
|
#endif /* __g_cclosure_user_marshal_MARSHAL_H__ */
|
||||||
|
|
4
glue/canvas-proxy-marshal.list
Normal file
4
glue/canvas-proxy-marshal.list
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
VOID:OBJECT,DOUBLE,POINTER,INT
|
||||||
|
DOUBLE:OBJECT,DOUBLE,DOUBLE,INT,INT,POINTER
|
||||||
|
VOID:OBJECT,POINTER,POINTER,POINTER,POINTER
|
||||||
|
VOID:OBJECT,INT,INT,INT,INT
|
133
glue/canvas-proxy.c
Normal file
133
glue/canvas-proxy.c
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
/*
|
||||||
|
* canvasproxy.c - glue functions for creating C# CanvasItems
|
||||||
|
*
|
||||||
|
* Author: Duncan Mak (duncan@ximian.com)
|
||||||
|
*
|
||||||
|
* Copyright (C), 2002. Ximian, Inc.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <gtk/gtkobject.h>
|
||||||
|
|
||||||
|
#include "canvas-proxy.h"
|
||||||
|
#include "canvas-proxy-marshal.h"
|
||||||
|
|
||||||
|
enum {
|
||||||
|
UPDATE,
|
||||||
|
REALIZE,
|
||||||
|
UNREALIZE,
|
||||||
|
MAP,
|
||||||
|
UNMAP,
|
||||||
|
COVERAGE,
|
||||||
|
DRAW,
|
||||||
|
RENDER,
|
||||||
|
POINT,
|
||||||
|
BOUNDS,
|
||||||
|
LAST_SIGNAL,
|
||||||
|
};
|
||||||
|
|
||||||
|
static GnomeCanvasItemClass *parent_class;
|
||||||
|
|
||||||
|
static guint proxy_signals [LAST_SIGNAL];
|
||||||
|
|
||||||
|
/* Class initialization */
|
||||||
|
static void
|
||||||
|
gtksharp_canvas_proxy_class_init (CanvasProxyClass *class)
|
||||||
|
{
|
||||||
|
GObjectClass *gobject_class;
|
||||||
|
GtkObjectClass *object_class;
|
||||||
|
GnomeCanvasItemClass *item_class;
|
||||||
|
|
||||||
|
gobject_class = (GObjectClass *) class;
|
||||||
|
object_class = (GtkObjectClass *) class;
|
||||||
|
item_class = (GnomeCanvasItemClass *) class;
|
||||||
|
|
||||||
|
parent_class = g_type_class_peek_parent (class);
|
||||||
|
|
||||||
|
/* void (* update) (GnomeCanvasItem *item, double *affine, ArtSVP *clip_path, int flags); */
|
||||||
|
proxy_signals [UPDATE] = g_signal_new ("update",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, update),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_DOUBLE_POINTER_INT,
|
||||||
|
G_TYPE_NONE, 3, G_TYPE_DOUBLE,
|
||||||
|
G_TYPE_POINTER, G_TYPE_INT);
|
||||||
|
|
||||||
|
/* void (* realize) (GnomeCanvasItem *item); */
|
||||||
|
proxy_signals [REALIZE] = g_signal_new ("realize",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, realize),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_marshal_VOID__OBJECT,
|
||||||
|
G_TYPE_NONE, 0);
|
||||||
|
|
||||||
|
/* void (* unrealize) (GnomeCanvasItem *item); */
|
||||||
|
proxy_signals [UNREALIZE] = g_signal_new ("unrealize",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, unrealize),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_marshal_VOID__OBJECT,
|
||||||
|
G_TYPE_NONE, 0);
|
||||||
|
|
||||||
|
/* void (* map) (GnomeCanvasItem *item); */
|
||||||
|
proxy_signals [MAP] = g_signal_new ("map",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, map),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_marshal_VOID__OBJECT,
|
||||||
|
G_TYPE_NONE, 0);
|
||||||
|
|
||||||
|
/* void (* unmap) (GnomeCanvasItem *item); */
|
||||||
|
proxy_signals [UNMAP] = g_signal_new ("unmap",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, unmap),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_marshal_VOID__OBJECT,
|
||||||
|
G_TYPE_NONE, 0);
|
||||||
|
|
||||||
|
/* void (* draw) (GnomeCanvasItem *item, GdkDrawable *drawable, */
|
||||||
|
/* int x, int y, int width, int height); */
|
||||||
|
proxy_signals [DRAW] = g_signal_new ("draw",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, draw),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_INT_INT_INT_INT,
|
||||||
|
G_TYPE_NONE, 5, GDK_TYPE_DRAWABLE,
|
||||||
|
G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT);
|
||||||
|
|
||||||
|
/* void (* render) (GnomeCanvasItem *item, GnomeCanvasBuf *buf); */
|
||||||
|
proxy_signals [RENDER] = g_signal_new ("render",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, render),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_marshal_VOID__POINTER,
|
||||||
|
G_TYPE_NONE, 1, G_TYPE_POINTER);
|
||||||
|
|
||||||
|
/* double (* point) (GnomeCanvasItem *item, double x, double y, int cx, int cy, */
|
||||||
|
/* GnomeCanvasItem **actual_item); */
|
||||||
|
proxy_signals [POINT] = g_signal_new ("point",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, point),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_user_marshal_DOUBLE__OBJECT_DOUBLE_DOUBLE_INT_INT_POINTER,
|
||||||
|
G_TYPE_DOUBLE, 5, G_TYPE_DOUBLE, G_TYPE_DOUBLE,
|
||||||
|
G_TYPE_INT, G_TYPE_INT, G_TYPE_POINTER);
|
||||||
|
|
||||||
|
/* void (* bounds) (GnomeCanvasItem *item, double *x1, double *y1, double *x2, double *y2); */
|
||||||
|
proxy_signals [BOUNDS] = g_signal_new ("bounds",
|
||||||
|
G_TYPE_FROM_CLASS (object_class),
|
||||||
|
G_SIGNAL_RUN_LAST,
|
||||||
|
G_STRUCT_OFFSET (GnomeCanvasItemClass, bounds),
|
||||||
|
NULL, NULL,
|
||||||
|
g_cclosure_user_marshal_VOID__OBJECT_POINTER_POINTER_POINTER_POINTER,
|
||||||
|
G_TYPE_NONE, 4, G_TYPE_POINTER, G_TYPE_POINTER,
|
||||||
|
G_TYPE_POINTER, G_TYPE_POINTER);
|
||||||
|
}
|
30
glue/canvas-proxy.h
Normal file
30
glue/canvas-proxy.h
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
/*
|
||||||
|
* canvasproxy.h
|
||||||
|
*
|
||||||
|
* Author: Duncan Mak (duncan@ximian.com)
|
||||||
|
*
|
||||||
|
* Copyright (C), 2002. Ximian, Inc.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef CANVAS_PROXY_H
|
||||||
|
#define CANVAS_PROXY_H
|
||||||
|
|
||||||
|
#include <libgnomecanvas/gnome-canvas.h>
|
||||||
|
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
typedef struct _CanvasProxy CanvasProxy;
|
||||||
|
typedef struct _CanvasProxyClass CanvasProxyClass;
|
||||||
|
|
||||||
|
struct _CanvasProxy {
|
||||||
|
GnomeCanvasItem item;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct _CanvasProxyClass {
|
||||||
|
GnomeCanvasItemClass parent;
|
||||||
|
};
|
||||||
|
|
||||||
|
G_END_DECLS
|
||||||
|
|
||||||
|
#endif
|
Loading…
Reference in a new issue