| Goffice Reference Manual | ||||
|---|---|---|---|---|
GocItem;
GocItemClass;
GocItem* goc_item_new (GocGroup *parent,
GType type,
const gchar *first_arg_name,
...);
void goc_item_destroy (GocItem *item);
void goc_item_set (GocItem *item,
const gchar *first_arg_name,
...);
double goc_item_distance (GocItem *item,
double x,
double y,
GocItem **near_item);
void goc_item_draw (GocItem const *item,
cairo_t *cr);
gboolean goc_item_draw_region (GocItem const *item,
cairo_t *cr,
double x0,
double y0,
double x1,
double y1);
void goc_item_invalidate (GocItem *item);
void goc_item_show (GocItem *item);
void goc_item_hide (GocItem *item);
gboolean goc_item_is_visible (GocItem *item);
void goc_item_get_bounds (GocItem const *item,
double *x0,
double *y0,
double *x1,
double *y1);
void goc_item_update_bounds (GocItem *item);
void goc_item_bounds_changed (GocItem *item);
void goc_item_parent_changed (GocItem *item);
void goc_item_grab (GocItem *item);
void goc_item_ungrab (GocItem *item);
void goc_item_raise (GocItem *item,
int n);
void goc_item_lower (GocItem *item,
int n);
void goc_item_lower_to_bottom (GocItem *item);
void goc_item_raise_to_top (GocItem *item);
typedef struct {
GObjectClass base;
double (*distance) (GocItem *item,
double x, double y, GocItem **near_item);
void (*draw) (GocItem const *item, cairo_t *cr);
gboolean (*draw_region) (GocItem const *item, cairo_t *cr,
double x0, double y0, double x1, double y1);
void (*update_bounds) (GocItem *item);
void (*parent_changed) (GocItem *item);
/* events related functions */
gboolean (*button_pressed) (GocItem *item, int button, double x, double y);
gboolean (*button2_pressed) (GocItem *item, int button, double x, double y);
gboolean (*button_released) (GocItem *item, int button, double x, double y);
gboolean (*motion) (GocItem *item, double x, double y);
gboolean (*enter_notify) (GocItem *item, double x, double y);
gboolean (*leave_notify) (GocItem *item, double x, double y);
void (*realize) (GocItem *item);
void (*unrealize) (GocItem *item);
gboolean (*key_pressed) (GocItem *item, GdkEventKey* ev);
gboolean (*key_released) (GocItem *item, GdkEventKey* ev);
void (*notify_scrolled) (GocItem *item);
} GocItemClass;
The base class for all canvas items.
GObjectClass |
the parent class |
|
returns the distance between the item and the point defined by
x and y. When the distance is larger than a few pixels, the result is not
relevant, so an approximate value or even G_MAXDOUBLE might be returned.
|
|
draws the item to the cairo context. |
|
draws the item in the region defined by x0, y0, x1 and y1.
Should return TRUE when successfull. If FALSE is returned, draw will be
called. There is no need to implement both methods for an item. Large items
should implement draw_region.
|
|
updates the bounds stored in GocItem as fields x0, y0, x1,and y1. |
|
callback for a parent changed event. |
|
callback for a button press event. |
|
callback for a double click event. |
|
callback for a button release event. |
|
callback for a motion event. |
|
callback for an enter notify event. |
|
callback for a leave notify event. |
|
callback for a realizes event. |
|
callback for an unrealize event. |
|
callback for a key press event. |
|
callback for a key release event. |
|
callback for a notify scrolled event. This is useful to reposition children of the GtkLayout parent of the canvas to their new position. |
GocItem* goc_item_new (GocGroup *parent, GType type, const gchar *first_arg_name, ...);
|
|
|
|
|
|
|
|
Returns : |
void goc_item_set (GocItem *item, const gchar *first_arg_name, ...);
|
|
|
|
|
double goc_item_distance (GocItem *item, double x, double y, GocItem **near_item);
|
|
|
|
|
|
|
|
Returns : |
gboolean goc_item_draw_region (GocItem const *item, cairo_t *cr, double x0, double y0, double x1, double y1);
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
void goc_item_get_bounds (GocItem const *item, double *x0, double *y0, double *x1, double *y1);
|
|
|
|
|
|
|
|
|