Name

Gtkplotcanvas - gtkplot canvas widget

Synopsis


GtkType
gtk_plot_canvas_get_type
(void); 
GtkType
gtk_plot_canvas_child_get_type
(void); 
GtkWidget* 
gtk_plot_canvas_new
(gint width, gint height,
gdouble magnification); 
void
gtk_plot_canvas_construct
(GtkPlotCanvas *canvas,
gint width, gint height,
gdouble magnification); 
void
gtk_plot_canvas_set_pc
(GtkPlotCanvas *canvas,
GtkPlotPC *pc); 
void
gtk_plot_canvas_paint
(GtkPlotCanvas *canvas); 
void
gtk_plot_canvas_refresh
(GtkPlotCanvas *canvas); 
void
gtk_plot_canvas_freeze
(GtkPlotCanvas *canvas); 
void
gtk_plot_canvas_thaw
(GtkPlotCanvas *canvas); 
void
gtk_plot_canvas_grid_set_visible
(GtkPlotCanvas *canvas,
gboolean visible); 
void
gtk_plot_canvas_grid_set_step
(GtkPlotCanvas *canvas,
gdouble step); 
void
gtk_plot_canvas_grid_set_attributes
(GtkPlotCanvas *canvas,
GtkPlotLineStyle style,
gint width,
const GdkColor *color); 
void
gtk_plot_canvas_add_plot
(GtkPlotCanvas *plot_canvas, 
GtkPlot *plot, 
gdouble x, gdouble y); 
void
gtk_plot_canvas_set_active_plot
(GtkPlotCanvas *plot_canvas,
GtkPlot *plot); 
void
gtk_plot_canvas_cancel_action
(GtkPlotCanvas *plot_canvas); 
void
gtk_plot_canvas_unselect
(GtkPlotCanvas *plot_canvas); 
GtkPlot *
gtk_plot_canvas_get_active_plot
(GtkPlotCanvas *canvas); 
GtkPlotData *
gtk_plot_canvas_get_active_data
(GtkPlotCanvas *canvas);
gint
gtk_plot_canvas_get_active_point
(GtkPlotCanvas *canvas,
gdouble *x, gdouble *y); 
GtkPlotCanvasChild *
gtk_plot_canvas_get_active_item
(GtkPlotCanvas *canvas); 
void
gtk_plot_canvas_set_size
(GtkPlotCanvas *canvas,
gint width, gint height); 
void
gtk_plot_canvas_set_magnification
(GtkPlotCanvas *canvas,
gdouble magnification); 
void
gtk_plot_canvas_set_background
(GtkPlotCanvas *canvas,
const GdkColor *background); 
void
gtk_plot_canvas_get_pixel
(GtkPlotCanvas *plot_canvas,
gdouble px, gdouble py,
gint *x, gint *y); 
void
gtk_plot_canvas_get_position
(GtkPlotCanvas *plot_canvas,
gint x, gint y,
gdouble *px, gdouble *py); 
GtkPlotCanvasChild *
gtk_plot_canvas_put_text
(GtkPlotCanvas *canvas,
gdouble x,
gdouble y,
const gchar *font,
gint height,
gint angle,
const GdkColor *fg,
const GdkColor *bg,
gboolean transparent,
GtkJustification justification, const gchar *text); 
gboolean
gtk_plot_canvas_remove_child
(GtkPlotCanvas *canvas,
GtkPlotCanvasChild *child); 
GtkPlotCanvasChild *
gtk_plot_canvas_put_line
(GtkPlotCanvas *canvas,
gdouble x1, gdouble y1,
gdouble x2, gdouble y2,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *color,
GtkPlotCanvasArrow arrow_mask); 
GtkPlotCanvasChild * 
gtk_plot_canvas_put_rectangle
(GtkPlotCanvas *canvas,
gdouble x1, gdouble y1,
gdouble x2, gdouble y2,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *fg,
const GdkColor *bg,
GtkPlotBorderStyle border,
gboolean fill); 
GtkPlotCanvasChild *
gtk_plot_canvas_put_ellipse
(GtkPlotCanvas *canvas,
gdouble x1, gdouble y1,
gdouble x2, gdouble y2,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *fg,
const GdkColor *bg,
gboolean fill); 
GtkPlotCanvasChild *
gtk_plot_canvas_put_pixmap
(GtkPlotCanvas *canvas,
GdkPixmap *pixmap,
gdouble x1, gdouble y1);
       
void
gtk_plot_canvas_line_set_attributes
(GtkPlotCanvasChild *child,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *color,
GtkPlotCanvasArrow mask); 
void
gtk_plot_canvas_rectangle_set_attributes
(GtkPlotCanvasChild *child,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *fg,
const GdkColor *bg,
GtkPlotBorderStyle border,
gboolean fill); 
void
gtk_plot_canvas_ellipse_set_attributes
(GtkPlotCanvasChild *child,
GtkPlotLineStyle style,
gfloat width,
const GdkColor *fg,
const GdkColor *bg,
gboolean fill); 
GtkPlotCanvasChild *
gtk_plot_canvas_child_new
(GtkPlotCanvasType type); 
void
gtk_plot_canvas_put_child
(GtkPlotCanvas *canvas,
GtkPlotCanvasChild *child,
gdouble x1, gdouble y1,
gdouble x2, gdouble y2); 
void
gtk_plot_canvas_child_move
(GtkPlotCanvas *canvas,
GtkPlotCanvasChild *child,
gdouble x1, gdouble y1); 
void
gtk_plot_canvas_child_move_resize
(GtkPlotCanvas *canvas,
GtkPlotCanvasChild *child,
gdouble x1, gdouble y1,
gdouble x2, gdouble y2); 
void
gtk_plot_canvas_child_set_selection
(GtkPlotCanvasChild *child,
GtkPlotCanvasSelection selection); 
void
gtk_plot_canvas_child_set_selection_mode
(GtkPlotCanvasChild *child,
GtkPlotCanvasSelectionMode mode);

Object Hierarchy

 


Args

 

Signal Prototypes

"select_item" signal;
"move_item" signal;
"resize_item" signal;
"delete_item" signal;
"select_region" signal;
"changed" signal;

Description

GtkPlotCanvas is a GtkFixed subclass and allows to DnD plots, points, and child objects (text, axis titles).
You can move them or resize your plots dragging with the mouse!


Details

struct GtkPlotCanvas;
struct GtkPlotCanvasChild;
struct GtkPlotCanvasLine;
struct GtkPlotCanvasRectangle;
struct GtkPlotCanvasEllipse; 


Screenshot


gtk_plot_canvas_get_type ()

GtkType gtk_plot_canvas_get_type (void); 


Returns  


gtk_plot_canvas_child_get_type ()

GtkType gtk_plot_canvas_child_get_type (void); 


Returns  

 


gtk_plot_canvas_new ()

GtkWidget* gtk_plot_canvas_new (gint width, gint height,
                                gdouble magnification); 

Create a new GtkPlotCanvas widget.

width,height width , height of the new canvas
magnification magnification of the canvas
Returns the canvas widget


gtk_plot_canvas_construct ()

void gtk_plot_canvas_construct (GtkPlotCanvas *canvas,
                                gint width, gint height,
                                gdouble magnification); 

Initialize a GtkPlotCanvas structure with the given arguments.

canvas a GtkPlotCanvas widget
width,height width,height of the canvas widget
magnification magnification of the canvas widget


gtk_plot_canvas_set_pc ()

void gtk_plot_canvas_set_pc (GtkPlotCanvas *canvas,
                            GtkPlotPC *pc); 

Set the printing context for the respective canvas widget

canvas a GtkPlotCanvas widget
pc printing context


gtk_plot_canvas_paint ()

void gtk_plot_canvas_paint (GtkPlotCanvas *canvas); 

Paint the canvas(update the changes)

canvas a GtkPlotCanvas widget


gtk_plot_canvas_refresh ()

void gtk_plot_canvas_refresh (GtkPlotCanvas *canvas); 

Refresh the canvas

canvas a GtkPlotCanvas widget


gtk_plot_canvas_freeze ()

void gtk_plot_canvas_freeze (GtkPlotCanvas *canvas); 

Freeze the canvas(no more drawing on it)

canvas a GtkPlotCanvas widget


gtk_plot_canvas_thaw ()

void gtk_plot_canvas_thaw (GtkPlotCanvas *canvas); 

Thaw(unfreeze) the widget

canvas a GtkPlotCanvas widget


gtk_plot_canvas_grid_set_visible ()

void gtk_plot_canvas_grid_set_visible(GtkPlotCanvas *canvas,
                                      gboolean visible); 

Set the visibility of the canvas grid,

canvas a GtkPlotCanvas widget
visible TRUE or FALSE


gtk_plot_canvas_grid_set_step ()

void gtk_plot_canvas_grid_set_step (GtkPlotCanvas *canvas,
                                    gdouble step); 

Set the step of the canvas grid

canvas a GtkPlotCanvas widget
step step of the grid


gtk_plot_canvas_grid_set_attributes ()

void gtk_plot_canvas_grid_set_attributes(GtkPlotCanvas *canvas,
                                         GtkPlotLineStyle style,
                                         gint width,
                                         const GdkColor *color); 

Set the attributes of the canvas grid

canvas a GtkPlotCanvas widget
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width width of the grid line
color color of the grid line


gtk_plot_canvas_add_plot ()

void gtk_plot_canvas_add_plot (GtkPlotCanvas *plot_canvas, 
                               GtkPlot *plot, 
                               gdouble x, gdouble y); 

Add a plot to the canvas

plot_canvas a GtkPlotCanvas widget
plot plot to be added
x,y the coordinates of the plot


gtk_plot_canvas_set_active_plot ()

void gtk_plot_canvas_set_active_plot (GtkPlotCanvas *plot_canvas,
                                      GtkPlot *plot); 

Set the active(current) plot.

plot_canvas a GtkPlotCanvas widget
plot a GtkPlot widget


gtk_plot_canvas_cancel_action ()

void gtk_plot_canvas_cancel_action (GtkPlotCanvas *plot_canvas); 

 

plot_canvas  


gtk_plot_canvas_unselect ()

void gtk_plot_canvas_unselect (GtkPlotCanvas *plot_canvas); 

Unselect the current plot in the canvas.

plot_canvas a GtkPlotCanvas widget


gtk_plot_canvas_get_active_plot ()

GtkPlot * gtk_plot_canvas_get_active_plot (GtkPlotCanvas *canvas); 

Get the active plot in the canvas

canvas a GtkPlotCanvas widget
Return a GtkPlot widget


gtk_plot_canvas_get_active_data ()

GtkPlotData * gtk_plot_canvas_get_active_data (GtkPlotCanvas *canvas); 

 

canvas  
Return  


gtk_plot_canvas_get_active_point ()

gint gtk_plot_canvas_get_active_point (GtkPlotCanvas *canvas,
                                       gdouble *x, gdouble *y); 

 

canvas  
x,y  
Return  


gtk_plot_canvas_get_active_item ()

GtkPlotCanvasChild * gtk_plot_canvas_get_active_item (GtkPlotCanvas *canvas);                    

 

canvas  
Return  


gtk_plot_canvas_set_size ()

void gtk_plot_canvas_set_size (GtkPlotCanvas *canvas,
                               gint width, gint height); 

Set the size of the canvas

canvas a GtkPlotCanvas widget
width,height width,height of the canvas


gtk_plot_canvas_set_magnification ()

void gtk_plot_canvas_set_magnification (GtkPlotCanvas *canvas,
                                        gdouble magnification); 

Set the magnification factor of the standard.

canvas a GtkPlotCanvas widget
magnification magnification factor


gtk_plot_canvas_set_background ()

void gtk_plot_canvas_set_background (GtkPlotCanvas *canvas,
                                     const GdkColor *background); 

Set the background color of the canvas

canvas a GtkPlotCanvas widget
background background color of the canvas


gtk_plot_canvas_get_pixel ()

void gtk_plot_canvas_get_pixel (GtkPlotCanvas *plot_canvas,
                                gdouble px, gdouble py,
                                gint *x, gint *y); 

 

plot_canvas  
px,py  
x,y  


gtk_plot_canvas_get_position ()

void gtk_plot_canvas_get_position (GtkPlotCanvas *plot_canvas,
                                   gint x, gint y,
                                   gdouble *px, gdouble *py); 

 

plot_canvas  
x,y  
px,py  


gtk_plot_canvas_put_text ()

GtkPlotCanvasChild *  gtk_plot_canvas_put_text (GtkPlotCanvas *canvas,
                                                gdouble x,
                                                gdouble y,
                                                const gchar *font,
                                                gint height,
                                                gint angle,
                                                const GdkColor *fg,
                                                const GdkColor *bg,
                                                gboolean transparent,
                                                GtkJustification justification, 
const gchar *text);

Insert text in the canvas

canvas a GtkPlotCanvas widget
x,y coordinates where text is inserted
font text font
height font height
angle font angle
fg,bg foregound(text),background color
transparent TRUE otr FALSE
justification GTK_JUSTIFY_LEFT, RIGHT, CENTER
text text string


gtk_plot_canvas_remove_child ()

gboolean gtk_plot_canvas_remove_child (GtkPlotCanvas *canvas,
                                       GtkPlotCanvasChild *child); 

Remove a child widget from canvas

canvas a GtkPlotCanvas widget
child a GtkPlotCanvas child widget
Return TRUE or FALSE


gtk_plot_canvas_put_line ()

GtkPlotCanvasChild * gtk_plot_canvas_put_line (GtkPlotCanvas *canvas,
                                               gdouble x1, gdouble y1, 
                                               gdouble x2, gdouble y2,
                                               GtkPlotLineStyle style,
                                               gfloat width,
                                               const GdkColor *color,
                                               GtkPlotCanvasArrow arrow_mask); 

Draw a line in the canvas.

canvas a GtkPlotCanvas widget
x1,y1 initial point
x2,y2 final point
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width width of the line
color color of the line
arrow_mask GTK_PLOT_ARROW_NONE
GTK_PLOT_ARROW_ORIGIN
GTK_PLOT_ARROW_END


gtk_plot_canvas_put_rectangle ()

GtkPlotCanvasChild * gtk_plot_canvas_put_rectangle (GtkPlotCanvas *canvas,
                                                    gdouble x1, gdouble y1,
                                                    gdouble x2, gdouble y2,
                                                    GtkPlotLineStyle style,
                                                    gfloat width,
                                                    const GdkColor *fg,
                                                    const GdkColor *bg,
                                                    GtkPlotBorderStyle border,
                                                    gboolean fill); 

Insert a rectangle in canvas

canvas a GtkPlotCanvas widget
x1,y1 up-left point
x2,y2 right-bottom point
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width width of the rectangle line
border GTK_PLOT_BORDER_NONE ,
GTK_PLOT_BORDER_LINE ,
GTK_PLOT_BORDER_SHADOW ,
fill TRUE or FALSE
fg,bg foreground,backfround color of the rectangle


gtk_plot_canvas_put_ellipse ()

GtkPlotCanvasChild * gtk_plot_canvas_put_ellipse (GtkPlotCanvas *canvas,
                                                  gdouble x1, gdouble y1,
                                                  gdouble x2, gdouble y2,
                                                  GtkPlotLineStyle style,
                                                  gfloat width,
                                                  const GdkColor *fg,
                                                  const GdkColor *bg,
                                                  gboolean fill); 

Insert an ellipse in the canvas

canvas a GtkPlotCanvas widget
x1,y1 Initial point
x2,y2 final point
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width width of the ellipse line
fg,bg foreground,background color of the ellipse
fill TRUE or FALSE


gtk_plot_canvas_put_pixmap ()

GtkPlotCanvasChild * gtk_plot_canvas_put_pixmap (GtkPlotCanvas *canvas,
                                                 GdkPixmap *pixmap,
                                                 gdouble x1, gdouble y1);
                   

Insert a pixmap in the canvas

canvas a GtkPlotCanvas widget
pixmap pixmap widget
x1,y1 corrdinates of insertion


gtk_plot_canvas_line_set_attributes ()

void gtk_plot_canvas_line_set_attributes (GtkPlotCanvasChild *child,
                                          GtkPlotLineStyle style,
                                          gfloat width,
                                          const GdkColor *color,
                                          GtkPlotCanvasArrow mask); 

Set the attributes of the lines inserted in the canvas

canvas a GtkPlotCanvasChild widget
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width line width
color line color
mask GTK_PLOT_ARROW_NONE
GTK_PLOT_ARROW_ORIGIN
GTK_PLOT_ARROW_END


gtk_plot_canvas_rectangle_set_attributes ()

void gtk_plot_canvas_rectangle_set_attributes (GtkPlotCanvasChild *child,
                                               GtkPlotLineStyle style,
                                               gfloat width,
                                               const GdkColor *fg,
                                               const GdkColor *bg,
                                               GtkPlotBorderStyle border,
                                               gboolean fill); 

Set the attributes of the rectangles inserted in the canvas

child a GtkPlotCanvasChild widget
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width rectangle line width
fg,bg foreground,background color of the rectangle
border GTK_PLOT_BORDER_NONE ,
GTK_PLOT_BORDER_LINE ,
GTK_PLOT_BORDER_SHADOW ,
fill TRUE or FALSE


gtk_plot_canvas_ellipse_set_attributes ()

void gtk_plot_canvas_ellipse_set_attributes (GtkPlotCanvasChild *child,
                                             GtkPlotLineStyle style,
                                             gfloat width,
                                             const GdkColor *fg,
                                             const GdkColor *bg,
                                             gboolean fill); 

Set the attributes of the ellipses inserted in the canvas

child a GtkPlotCanvasChild widget
style GTK_PLOT_LINE_NONE ,
GTK_PLOT_LINE_SOLID ,
GTK_PLOT_LINE_DOTTED ,
GTK_PLOT_LINE_DASHED ,
GTK_PLOT_LINE_DOT_DASH ,
GTK_PLOT_LINE_DOT_DOT_DASH ,
GTK_PLOT_LINE_DOT_DASH_DASH
width ellipse "line" width
fg,bg foreground,background color of the ellipse
fill TRUE or FALSE


gtk_plot_canvas_child_new ()

GtkPlotCanvasChild * gtk_plot_canvas_child_new (GtkPlotCanvasType type); 

 

type  
Return  


gtk_plot_canvas_put_child ()

void gtk_plot_canvas_put_child (GtkPlotCanvas *canvas,
                                GtkPlotCanvasChild *child,
                                gdouble x1, gdouble y1,
                                gdouble x2, gdouble y2); 

 

canvas  
child  
x1,y1  
x2,y2  


gtk_plot_canvas_child_move ()

void gtk_plot_canvas_child_move (GtkPlotCanvas *canvas,
                                 GtkPlotCanvasChild *child,
                                 gdouble x1, gdouble y1); 

 

canvas  
child  
x1,y1  


gtk_plot_canvas_child_move_resize ()

void gtk_plot_canvas_child_move_resize (GtkPlotCanvas *canvas,
                                        GtkPlotCanvasChild *child,
                                        gdouble x1, gdouble y1,
                                        gdouble x2, gdouble y2); 

 

canvas  
child  
x1,y1  
x2,y2  


gtk_plot_canvas_child_set_selection ()

void gtk_plot_canvas_child_set_selection (GtkPlotCanvasChild  *child,
                                          GtkPlotCanvasSelection selection); 

 

child  
selection  


gtk_plot_canvas_child_set_selection_mode ()

void gtk_plot_canvas_child_set_selection_mode (GtkPlotCanvasChild *child,
                                               GtkPlotCanvasSelectionMode mode); 

 

child  
mode  

 

Signals

The "select_item" signal

gboolean (*select_item) (GtkPlotCanvas *canvas,
                         GdkEventButton *event,
                         GtkPlotCanvasChild *item); 

 

canvas  
event  
item  


The "move_item" signal

gboolean (*move_item) (GtkPlotCanvas *canvas,
                       GtkPlotCanvasChild *item,
                       gdouble new_x, gdouble new_y); 

 

canvas  
item  
new_x,new_y  


The "resize_item" signal

gboolean (*resize_item) (GtkPlotCanvas *canvas,
                         GtkPlotCanvasChild *item,
                         gdouble new_width, gdouble new_height); 

 

canvas  
item  
new_width,new_height  


The "delete_item" signal

gboolean (*delete_item) (GtkPlotCanvas *canvas,
                        GtkPlotCanvasChild *item);

 

canvas  
item  


The "select_region" signal

void (*select_region) (GtkPlotCanvas *canvas,
                       gdouble xmin, gdouble ymin, 
                       gdouble xmax, gdouble ymax); 

 

canvas  
xmin,ymin  
xmax,ymax  

The "changed" signal

void (*changed) (GtkPlotCanvas *canvas); 

 

canvas  


DETAILS

struct _GtkPlotCanvas
{
GtkFixed fixed;
guint16 flags;
guint state;
guint freeze_count;
gint pixmap_width, pixmap_height;
gint width, height;
gdouble magnification;

gboolean show_grid;
gdouble grid_step;
GtkPlotLine grid;
GtkPlotCanvasAction action;
GdkPixmap *pixmap;
GdkColor background;
GtkPlot *active_plot;
GtkPlotData *active_data;
gint active_point;
gint active_lpoint, active_rpoint;
gdouble active_x, active_y;
GtkPlotCanvasChild active_item;
GtkPlotCanvasPos drag_point;
gint drag_x, drag_y;
gint pointer_x, pointer_y;
GdkRectangle drag_area;
GList *plots;
GList *childs;
gint num_plots;
GdkCursor *cursor;
GtkPlotPC *pc;
}
struct _GtkPlotCanvasChild
 {
gdouble rx1, rx2, ry1, ry2;
gint min_width, min_height;
GdkRectangle allocation;
guint state;
GtkPlotCanvasType type;
GtkPlotCanvasFlag flags;
GtkPlotCanvasSelection selection;
GtkPlotCanvasSelectionMode mode;
gpointer data;
void (*draw_child) (GtkPlotCanvas *canvas, GtkPlotCanvasChild *child);
};
struct _GtkPlotCanvasLine
{
GtkPlotLine line;
GtkPlotCanvasArrow arrow_mask;
gint arrow_length;
gint arrow_width;
GtkPlotSymbolStyle arrow_style;
}; 
struct _GtkPlotCanvasRectangle
{
GtkPlotLine line;
gboolean filled;
GtkPlotBorderStyle border;
gint shadow_width;
GdkColor bg;
}; 
struct _GtkPlotCanvasEllipse
{
GtkPlotLine line;
gboolean filled;
GdkColor bg;
};