Gwyddion – Free SPM (AFM, SNOM/NSOM, STM, MFM, …) data analysis software

GwyGraphArea

GwyGraphArea — Layout for drawing graph curves

Functions

GtkWidget * gwy_graph_area_new ()
GtkWidget * gwy_graph_area_get_label ()
void gwy_graph_area_set_model ()
GwyGraphModel * gwy_graph_area_get_model ()
void gwy_graph_area_get_cursor ()
void gwy_graph_area_set_x_range ()
void gwy_graph_area_set_y_range ()
void gwy_graph_area_set_x_grid_data ()
void gwy_graph_area_set_y_grid_data ()
const gdouble * gwy_graph_area_get_x_grid_data ()
const gdouble * gwy_graph_area_get_y_grid_data ()
GwySelection * gwy_graph_area_get_selection ()
void gwy_graph_area_set_status ()
GwyGraphStatusType gwy_graph_area_get_status ()
void gwy_graph_area_draw_on_drawable ()
GString * gwy_graph_area_export_vector ()
void gwy_graph_area_enable_user_input ()
void gwy_graph_area_set_selection_editable ()
void gwy_graph_area_edit_curve ()

Properties

GwyGraphStatusType status Read / Write

Signals

void edit-curve Action

Types and Values

struct GwyGraphArea
struct GwyGraphAreaClass

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkObject
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkLayout
                        ╰── GwyGraphArea

Implemented Interfaces

GwyGraphArea implements AtkImplementorIface and GtkBuildable.

Includes

#include <libgwydgets/gwydgets.h>

Description

GwyGraphArea is the central part of GwyGraph widget. It plots a set of data curves with the given plot properties.

It is recommended to use it within GwyGraph, however, it can also be used separately.

Functions

gwy_graph_area_new ()

GtkWidget *
gwy_graph_area_new (void);

Creates a new graph area widget.

Returns

Newly created graph area as GtkWidget.

gwy_graph_area_get_label ()

GtkWidget *
gwy_graph_area_get_label (GwyGraphArea *area);

Gets the label inside a graph area.

Parameters

area

A graph area.

 

Returns

The graph label widget within the graph area.

gwy_graph_area_set_model ()

void
gwy_graph_area_set_model (GwyGraphArea *area,
                          GwyGraphModel *gmodel);

Sets the graph model of a graph area.

Parameters

area

A graph area.

 

gmodel

New graph model.

 

gwy_graph_area_get_model ()

GwyGraphModel *
gwy_graph_area_get_model (GwyGraphArea *area);

Gets the model of a graph area.

Parameters

area

A graph area.

 

Returns

The graph model this graph area widget displays.

gwy_graph_area_get_cursor ()

void
gwy_graph_area_get_cursor (GwyGraphArea *area,
                           gdouble *x_cursor,
                           gdouble *y_cursor);

Gets mouse cursor related values within a graph area.

Parameters

area

A graph area.

 

x_cursor

Location to store the x value corresponding to cursor position.

 

y_cursor

Location to store the y value corresponding to cursor position.

 

gwy_graph_area_set_x_range ()

void
gwy_graph_area_set_x_range (GwyGraphArea *area,
                            gdouble x_min,
                            gdouble x_max);

Sets the horizontal range a graph area displays.

Parameters

area

A graph area.

 

x_min

The minimum x value, in real coodrinates.

 

x_max

The maximum x value, in real coodrinates.

 

gwy_graph_area_set_y_range ()

void
gwy_graph_area_set_y_range (GwyGraphArea *area,
                            gdouble y_min,
                            gdouble y_max);

Sets the vertical range a graph area displays.

Parameters

area

A graph area.

 

y_min

The minimum y value, in real coodrinates.

 

y_max

The maximum y value, in real coodrinates.

 

gwy_graph_area_set_x_grid_data ()

void
gwy_graph_area_set_x_grid_data (GwyGraphArea *area,
                                guint ndata,
                                const gdouble *grid_data);

Sets the grid data on the x-axis of a graph area

Parameters

area

A graph area.

 

ndata

The number of points in grid_data .

 

grid_data

Array of grid line positions on the x-axis (in real values, not pixels).

 

gwy_graph_area_set_y_grid_data ()

void
gwy_graph_area_set_y_grid_data (GwyGraphArea *area,
                                guint ndata,
                                const gdouble *grid_data);

Sets the grid data on the y-axis of a graph area

Parameters

area

A graph area.

 

ndata

The number of points in grid_data .

 

grid_data

Array of grid line positions on the y-axis (in real values, not pixels).

 

gwy_graph_area_get_x_grid_data ()

const gdouble *
gwy_graph_area_get_x_grid_data (GwyGraphArea *area,
                                guint *ndata);

Gets the grid data on the x-axis of a graph area.

Parameters

area

A graph area.

 

ndata

Location to store the number of returned positions.

 

Returns

Array of grid line positions (in real values, not pixels) owned by the graph area.

gwy_graph_area_get_y_grid_data ()

const gdouble *
gwy_graph_area_get_y_grid_data (GwyGraphArea *area,
                                guint *ndata);

Gets the grid data on the y-axis of a graph area.

Parameters

area

A graph area.

 

ndata

Location to store the number of returned positions.

 

Returns

Array of grid line positions (in real values, not pixels) owned by the graph area.

gwy_graph_area_get_selection ()

GwySelection *
gwy_graph_area_get_selection (GwyGraphArea *area,
                              GwyGraphStatusType status_type);

Gets the selection object corresponding to a status of a graph area.

A selection object exists even for inactive status types (selection modes), therefore also selections for other modes than the currently active one can be requested.

Parameters

area

A graph area.

 

status_type

Graph status. Value GWY_GRAPH_STATUS_PLAIN mode (which has no selection associated) stands for the currentl selection mode.

 

Returns

The requested selection. It is NULL only if status_type is GWY_GRAPH_STATUS_PLAIN and the current selection mode is GWY_GRAPH_STATUS_PLAIN.

gwy_graph_area_set_status ()

void
gwy_graph_area_set_status (GwyGraphArea *area,
                           GwyGraphStatusType status_type);

Sets the status of a graph area.

When the area is inside a GwyGraph, use gwy_graph_set_status() instead (also see this function for details).

Parameters

area

A graph area.

 

status_type

New graph area status.

 

gwy_graph_area_get_status ()

GwyGraphStatusType
gwy_graph_area_get_status (GwyGraphArea *area);

Gets the status of a grap area.

See gwy_graph_area_set_status().

Parameters

area

A graph area.

 

Returns

The current graph area status.

gwy_graph_area_draw_on_drawable ()

void
gwy_graph_area_draw_on_drawable (GwyGraphArea *area,
                                 GdkDrawable *drawable,
                                 GdkGC *gc,
                                 gint x,
                                 gint y,
                                 gint width,
                                 gint height);

Draws a graph area to a Gdk drawable.

Parameters

area

A graph area.

 

drawable

a GdkDrawable (destination for graphics operations)

 

gc

Graphics context. It is modified by this function unpredictably.

 

x

X position in drawable where the graph area should be drawn

 

y

Y position in drawable where the graph area should be drawn

 

width

width of the graph area on the drawable

 

height

height of the graph area on the drawable

 

gwy_graph_area_export_vector ()

GString *
gwy_graph_area_export_vector (GwyGraphArea *area,
                              gint x,
                              gint y,
                              gint width,
                              gint height);

Creates PostScript representation of a graph area.

Parameters

area

A graph area.

 

x

Bounding box origin X-coordinate.

 

y

Bounding box origin Y-coordinate.

 

width

Bounding box width.

 

height

Bounding box height.

 

Returns

A fragment of PostScript code representing the the graph area as a newly allocated GString.

gwy_graph_area_enable_user_input ()

void
gwy_graph_area_enable_user_input (GwyGraphArea *area,
                                  gboolean enable);

Enables/disables auxiliary graph area dialogs (invoked by clicking the mouse).

Note, however, that this setting does not control editability of selections. Use gwy_graph_area_set_selection_editable() for that.

Parameters

area

A graph area.

 

enable

TRUE to enable user interaction, FALSE to disable it.

 

gwy_graph_area_set_selection_editable ()

void
gwy_graph_area_set_selection_editable (GwyGraphArea *area,
                                       gboolean setting);

Enables/disables selection editing using mouse.

When selection editing is disabled the graph area status type determines the selection type that can be drawn on the area. However, the user cannot modify it.

Parameters

area

A graph area.

 

setting

TRUE to enable selection editing, FALSE to disable it.

 

Since: 2.45

gwy_graph_area_edit_curve ()

void
gwy_graph_area_edit_curve (GwyGraphArea *area,
                           gint id);

Invokes the curve property dialog for a curve.

If the dialog is already displayed, it is switched to the requested curve.

Parameters

area

A graph area.

 

id

The index of the curve to edit properties of.

 

Since: 2.5

Types and Values

struct GwyGraphArea

struct GwyGraphArea;

struct GwyGraphAreaClass

struct GwyGraphAreaClass {
    GtkLayoutClass parent_class;

    void (*edit_curve)(GwyGraphArea *area,
                       gint id);
    void (*reserved2)(void);
};

Property Details

The “status” property

  “status”                   GwyGraphStatusType

The type of reaction to mouse events (zoom, selections).

Flags: Read / Write

Default value: GWY_GRAPH_STATUS_PLAIN

Signal Details

The “edit-curve” signal

void
user_function (GwyGraphArea *gwygraphcurvemodel,
               gint          arg1,
               gpointer      user_data)

The ::data-changed signal is emitted when a curve properties are to be edited.

Parameters

gwygraphcurvemodel

The GwyGraphArea which received the signal.

 

arg1

The index of the curve to edit.

 

user_data

user data set when the signal handler was connected.

 

Flags: Action

Since: 2.5

© David Nečas and Petr Klapetek

Home Download News Features Screenshots Documentation Communicate Participate Resources Publications Applications Site Map

Valid XHTML 1.0 Valid CSS