## GwyGraphLabel

GwyGraphLabel — Graph curve key

## Synopsis

    #include <libgwydgets/gwydgets.h>

                        GwyGraphLabel;
                        GwyGraphLabelClass;
    GtkWidget*          gwy_graph_label_new                 (void);
    void                gwy_graph_label_set_model           (GwyGraphLabel *label,
                                                             GwyGraphModel *gmodel);
    GwyGraphModel*      gwy_graph_label_get_model           (GwyGraphLabel *label);
    void                gwy_graph_label_enable_user_input   (GwyGraphLabel *label,
                                                             gboolean enable);
    void                gwy_graph_label_draw_on_drawable    (GwyGraphLabel *label,
                                                             GdkDrawable *drawable,
                                                             GdkGC *gc,
                                                             PangoLayout *layout,
                                                             gint x,
                                                             gint y,
                                                             gint width,
                                                             gint height);
    GString*            gwy_graph_label_export_vector       (GwyGraphLabel *label,
                                                             gint x,
                                                             gint y,
                                                             gint width,
                                                             gint height,
                                                             gint fontsize);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GwyGraphLabel

## Implemented Interfaces

GwyGraphLabel implements AtkImplementorIface and GtkBuildable.

## Description

GwyGraphLabel is a part of GwyGraph, it renders frame with graph curve key.

## Details

### GwyGraphLabel

    typedef struct _GwyGraphLabel GwyGraphLabel;

### GwyGraphLabelClass

    typedef struct {
        GtkWidgetClass parent_class;

        void (*reserved1)(void);
        void (*reserved2)(void);
    } GwyGraphLabelClass;

### gwy_graph_label_new ()

    GtkWidget*          gwy_graph_label_new                 (void);

Creates a new graph label.

Returns : | A new graph label widget as a GtkWidget.

### gwy_graph_label_set_model ()

    void                gwy_graph_label_set_model           (GwyGraphLabel *label,
                                                             GwyGraphModel *gmodel);

Sets new model of a graph label.

`label` : | A graph label.
`gmodel` : | New graph model.

### gwy_graph_label_get_model ()

    GwyGraphModel*      gwy_graph_label_get_model           (GwyGraphLabel *label);

Gets the model of a graph key.

`label` : | A graph label.
Returns : | The graph model this graph label takes curve properties and descriptions from.

### gwy_graph_label_enable_user_input ()

    void                gwy_graph_label_enable_user_input   (GwyGraphLabel *label,
                                                             gboolean enable);

Enables or disables user input to a graph label.

`label` : | A graph label.
`enable` : | Whether to enable the user input.

### gwy_graph_label_draw_on_drawable ()

    void                gwy_graph_label_draw_on_drawable    (GwyGraphLabel *label,
                                                             GdkDrawable *drawable,
                                                             GdkGC *gc,
                                                             PangoLayout *layout,
                                                             gint x,
                                                             gint y,
                                                             gint width,
                                                             gint height);

draws a graph label on a drawable

`label` : | graph label
`drawable` : | the GdkDrawable
`gc` : | Graphics context. It is modified by this function unpredictably.
`layout` : | pango layout
`x` : | x position where label is to be drawn
`y` : | y position where label is to be drawn
`width` : | width of the label
`height` : | hieght of the label

### gwy_graph_label_export_vector ()

    GString*            gwy_graph_label_export_vector       (GwyGraphLabel *label,
                                                             gint x,
                                                             gint y,
                                                             gint width,
                                                             gint height,
                                                             gint fontsize);

Creates PostScript representation of a graph label.

`label` : | A graph label.
`x` : | x position of the graph label
`y` : | y position of the graph label
`width` : | width of the graph label
`height` : | hieght of the graph label
`fontsize` : | fontsize of the label
Returns : | A fragment of PostScript code representing the the graph label as a newly allocated GString.