GtkPlotPC
3
GTKEXTRA Library

# GtkPlotPC

## Synopsis

    #include <gtkextra.h>

                        GtkPlotPC;
    enum                GtkPlotPageSize;
    enum                GtkPlotPageOrientation;
    enum                GtkPlotUnits;
                        GtkPlotPoint;
    GtkObject *         gtk_plot_pc_new                     (void);
    gboolean            gtk_plot_pc_init                    (GtkPlotPC *pc);
    void                gtk_plot_pc_leave                   (GtkPlotPC *pc);
    void                gtk_plot_pc_set_viewport            (GtkPlotPC *pc,
                                                             gdouble w,
                                                             gdouble h);
    void                gtk_plot_pc_gsave                   (GtkPlotPC *pc);
    void                gtk_plot_pc_grestore                (GtkPlotPC *pc);
    void                gtk_plot_pc_clip                    (GtkPlotPC *pc,
                                                             GdkRectangle *area);
    void                gtk_plot_pc_clip_mask               (GtkPlotPC *pc,
                                                             gdouble x,
                                                             gdouble y,
                                                             GdkBitmap *mask);
    void                gtk_plot_pc_set_color               (GtkPlotPC *pc,
                                                             GdkColor *color);
    void                gtk_plot_pc_set_lineattr            (GtkPlotPC *pc,
                                                             gfloat line_width,
                                                             GdkLineStyle line_style,
                                                             GdkCapStyle cap_style,
                                                             GdkJoinStyle join_style);
    void                gtk_plot_pc_set_dash                (GtkPlotPC *pc,
                                                             gdouble offset_,
                                                             gdouble *values,
                                                             gint num_values);
    void                gtk_plot_pc_draw_point              (GtkPlotPC *pc,
                                                             gdouble x,
                                                             gdouble y);
    void                gtk_plot_pc_draw_line               (GtkPlotPC *pc,
                                                             gdouble x1,
                                                             gdouble y1,
                                                             gdouble x2,
                                                             gdouble y2);
    void                gtk_plot_pc_draw_lines              (GtkPlotPC *pc,
                                                             GtkPlotPoint *points,
                                                             gint numpoints);
    void                gtk_plot_pc_draw_rectangle          (GtkPlotPC *pc,
                                                             gboolean filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble width,
                                                             gdouble height);
    void                gtk_plot_pc_draw_polygon            (GtkPlotPC *pc,
                                                             gint filled,
                                                             GtkPlotPoint *points,
                                                             gint numpoints);
    void                gtk_plot_pc_draw_ellipse            (GtkPlotPC *pc,
                                                             gboolean filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble width,
                                                             gdouble height);
    void                gtk_plot_pc_draw_circle             (GtkPlotPC *pc,
                                                             gint filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble size);
    void                gtk_plot_pc_set_font                (GtkPlotPC *pc,
                                                             GtkPSFont *psfont,
                                                             gint height);
    void                gtk_plot_pc_draw_string             (GtkPlotPC *pc,
                                                             gint x,
                                                             gint y,
                                                             gint angle,
                                                             const GdkColor *fg,
                                                             const GdkColor *bg,
                                                             gboolean transparent,
                                                             gint border,
                                                             gint border_space,
                                                             gint border_width,
                                                             gint shadow_width,
                                                             const gchar *font,
                                                             gint height,
                                                             GtkJustification just,
                                                             const gchar *text);
    void                gtk_plot_pc_draw_pixmap             (GtkPlotPC *pc,
                                                             GdkPixmap *pixmap,
                                                             GdkBitmap *mask,
                                                             gint xsrc,
                                                             gint ysrc,
                                                             gint xdest,
                                                             gint ydest,
                                                             gint width,
                                                             gint height,
                                                             gdouble scale_x,
                                                             gdouble scale_y);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkPlotPC
                         +----GtkPlotCairo
                         +----GtkPlotGdk
                         +----GtkPlotPS

## Description

FIXME:: Need long description.

## Details

### GtkPlotPC

    typedef struct _GtkPlotPC GtkPlotPC;

### enum GtkPlotPageSize

    typedef enum{
         GTK_PLOT_LETTER	,
         GTK_PLOT_LEGAL	,
         GTK_PLOT_A4	,
         GTK_PLOT_EXECUTIVE	,
         GTK_PLOT_CUSTOM
    } GtkPlotPageSize;

### enum GtkPlotPageOrientation

    typedef enum{
         GTK_PLOT_PORTRAIT	,
         GTK_PLOT_LANDSCAPE
    } GtkPlotPageOrientation;

### enum GtkPlotUnits

    typedef enum{
         GTK_PLOT_PSPOINTS	,
         GTK_PLOT_MM	,
         GTK_PLOT_CM	,
         GTK_PLOT_INCHES
    } GtkPlotUnits;

### GtkPlotPoint

    typedef struct {
    } GtkPlotPoint;

The GtkPlotPoint struct contains only private data. It should only be accessed through the functions described below.

### gtk_plot_pc_new ()

    GtkObject *         gtk_plot_pc_new                     (void);

Returns :

### gtk_plot_pc_init ()

    gboolean            gtk_plot_pc_init                    (GtkPlotPC *pc);

`pc` :

Returns :

### gtk_plot_pc_leave ()

    void                gtk_plot_pc_leave                   (GtkPlotPC *pc);

`pc` :

### gtk_plot_pc_set_viewport ()

    void                gtk_plot_pc_set_viewport            (GtkPlotPC *pc,
                                                             gdouble w,
                                                             gdouble h);

`pc` :

`w` :

`h` :

### gtk_plot_pc_gsave ()

    void                gtk_plot_pc_gsave                   (GtkPlotPC *pc);

`pc` :

### gtk_plot_pc_grestore ()

    void                gtk_plot_pc_grestore                (GtkPlotPC *pc);

`pc` :

### gtk_plot_pc_clip ()

    void                gtk_plot_pc_clip                    (GtkPlotPC *pc,
                                                             GdkRectangle *area);

`pc` :

`area` :

### gtk_plot_pc_clip_mask ()

    void                gtk_plot_pc_clip_mask               (GtkPlotPC *pc,
                                                             gdouble x,
                                                             gdouble y,
                                                             GdkBitmap *mask);

`pc` :

`x` :

`y` :

`mask` :

### gtk_plot_pc_set_color ()

    void                gtk_plot_pc_set_color               (GtkPlotPC *pc,
                                                             GdkColor *color);

`pc` :

`color` :

### gtk_plot_pc_set_lineattr ()

    void                gtk_plot_pc_set_lineattr            (GtkPlotPC *pc,
                                                             gfloat line_width,
                                                             GdkLineStyle line_style,
                                                             GdkCapStyle cap_style,
                                                             GdkJoinStyle join_style);

`pc` :

`line_width` :

`line_style` :

`cap_style` :

`join_style` :

### gtk_plot_pc_set_dash ()

    void                gtk_plot_pc_set_dash                (GtkPlotPC *pc,
                                                             gdouble offset_,
                                                             gdouble *values,
                                                             gint num_values);

`pc` :

`offset_` :

`values` :

`num_values` :

### gtk_plot_pc_draw_point ()

    void                gtk_plot_pc_draw_point              (GtkPlotPC *pc,
                                                             gdouble x,
                                                             gdouble y);

`pc` :

`x` :

`y` :

### gtk_plot_pc_draw_line ()

    void                gtk_plot_pc_draw_line               (GtkPlotPC *pc,
                                                             gdouble x1,
                                                             gdouble y1,
                                                             gdouble x2,
                                                             gdouble y2);

`pc` :

`x1` :

`y1` :

`x2` :

`y2` :

### gtk_plot_pc_draw_lines ()

    void                gtk_plot_pc_draw_lines              (GtkPlotPC *pc,
                                                             GtkPlotPoint *points,
                                                             gint numpoints);

`pc` :

`points` :

`numpoints` :

### gtk_plot_pc_draw_rectangle ()

    void                gtk_plot_pc_draw_rectangle          (GtkPlotPC *pc,
                                                             gboolean filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble width,
                                                             gdouble height);

`pc` :

`filled` :

`x` :

`y` :

`width` :

`height` :

### gtk_plot_pc_draw_polygon ()

    void                gtk_plot_pc_draw_polygon            (GtkPlotPC *pc,
                                                             gint filled,
                                                             GtkPlotPoint *points,
                                                             gint numpoints);

`pc` :

`filled` :

`points` :

`numpoints` :

### gtk_plot_pc_draw_ellipse ()

    void                gtk_plot_pc_draw_ellipse            (GtkPlotPC *pc,
                                                             gboolean filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble width,
                                                             gdouble height);

`pc` :

`filled` :

`x` :

`y` :

`width` :

`height` :

### gtk_plot_pc_draw_circle ()

    void                gtk_plot_pc_draw_circle             (GtkPlotPC *pc,
                                                             gint filled,
                                                             gdouble x,
                                                             gdouble y,
                                                             gdouble size);

`pc` :

`filled` :

`x` :

`y` :

`size` :

### gtk_plot_pc_set_font ()

    void                gtk_plot_pc_set_font                (GtkPlotPC *pc,
                                                             GtkPSFont *psfont,
                                                             gint height);

`pc` :

`psfont` :

`height` :

### gtk_plot_pc_draw_string ()

    void                gtk_plot_pc_draw_string             (GtkPlotPC *pc,
                                                             gint x,
                                                             gint y,
                                                             gint angle,
                                                             const GdkColor *fg,
                                                             const GdkColor *bg,
                                                             gboolean transparent,
                                                             gint border,
                                                             gint border_space,
                                                             gint border_width,
                                                             gint shadow_width,
                                                             const gchar *font,
                                                             gint height,
                                                             GtkJustification just,
                                                             const gchar *text);

`pc` :

`x` :

`y` :

`angle` :

`fg` :

`bg` :

`transparent` :

`border` :

`border_space` :

`border_width` :

`shadow_width` :

`font` :

`height` :

`just` :

`text` :

### gtk_plot_pc_draw_pixmap ()

    void                gtk_plot_pc_draw_pixmap             (GtkPlotPC *pc,
                                                             GdkPixmap *pixmap,
                                                             GdkBitmap *mask,
                                                             gint xsrc,
                                                             gint ysrc,
                                                             gint xdest,
                                                             gint ydest,
                                                             gint width,
                                                             gint height,
                                                             gdouble scale_x,
                                                             gdouble scale_y);

`pc` :

`pixmap` :

`mask` :

`xsrc` :

`ysrc` :

`xdest` :

`ydest` :

`width` :

`height` :

`scale_x` :

`scale_y` :