gtk_curveWidget

gtk_curveWidget — A specialised curve widget to draw distance distribution for pairs.

Synopsis

enum                CurveFrameStyle;
#define             CURVE_FRAME_TYPE
#define             CURVE_FRAME                         (obj)
#define             CURVE_FRAME_CLASS                   (obj)
#define             IS_CURVE_FRAME                      (obj)
#define             IS_CURVE_FRAME_CLASS                (obj)
#define             CURVE_FRAME_GET_CLASS
                    CurveFrame;
                    CurveFrameClass;
GType               curveFrame_get_type                 (void);
GtkWidget *         curveFrameNew                       (float distMin,
                                                         float distMax);
void                curveFrameRedraw                    (CurveFrame *curve);
gboolean            curveFrameSet_span                  (CurveFrame *curve,
                                                         float span[2]);
void                curveFrameGet_span                  (CurveFrame *curve,
                                                         float span[2]);
gboolean            curveFrameHas_data                  (CurveFrame *curve);
void                curveFrameSet_data                  (CurveFrame *curve,
                                                         float step,
                                                         float min,
                                                         float max);
void                curveFrameAdd_data                  (CurveFrame *curve,
                                                         const gchar *eleName,
                                                         const gchar *lkName,
                                                         const guint *data,
                                                         guint nSteps,
                                                         float init,
                                                         float step);
gboolean            curveFrameSet_style                 (CurveFrame *curve,
                                                         CurveFrameStyle style);
gboolean            curveFrameSet_filter                (CurveFrame *curve,
                                                         const gchar *filter);
gboolean            curveFrameSet_highlightRange        (CurveFrame *curve,
                                                         float range[2]);
gboolean            curveFrameGet_highlightRange        (CurveFrame *curve,
                                                         float range[2]);
void                curveFrameSet_nNodes                (CurveFrame *curve,
                                                         const gchar *ele,
                                                         guint n);
float               curveFrameGet_integralInRange       (CurveFrame *curve,
                                                         gchar **label);
float               curveFrameGet_meanInRange           (CurveFrame *curve,
                                                         gchar **label);

Object Hierarchy

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkDrawingArea
                           +----CurveFrame

Implemented Interfaces

CurveFrame implements AtkImplementorIface and GtkBuildable.

Description

Details

enum CurveFrameStyle

typedef enum
{
  CURVE_LINEAR,
  CURVE_BAR,
  CURVE_GAUSS
} CurveFrameStyle;

Possible styles for the curve rendering, see curveFrameSet_style().

CURVE_LINEAR

the curve is drawn with lines ;

CURVE_BAR

the curve is drawn with bars ;

CURVE_GAUSS

the curve is convoluted with gaussians (not implemented yet).

CURVE_FRAME_TYPE

#define CURVE_FRAME_TYPE          (curveFrame_get_type())

Return the associated GType to the CurveFrame objects.

Since 3.6


CURVE_FRAME()

#define CURVE_FRAME(obj)          (G_TYPE_CHECK_INSTANCE_CAST((obj), CURVE_FRAME_TYPE, CurveFrame))

Cast the given object to a CurveFrame object.

obj :

the widget to cast.

Since 3.6


CURVE_FRAME_CLASS()

#define CURVE_FRAME_CLASS(obj)    (G_TYPE_CHECK_CLASS_CAST((obj), CURVE_FRAME, CurveFrameClass))

Cast the given class to a CurveFrame object.

obj :

the class to cast.

Since 3.6


IS_CURVE_FRAME()

#define IS_CURVE_FRAME(obj)       (G_TYPE_CHECK_INSTANCE_TYPE((obj), CURVE_FRAME_TYPE))

Return if the given object is a valid CurveFrame object.

obj :

the object to test.

Since 3.6


IS_CURVE_FRAME_CLASS()

#define IS_CURVE_FRAME_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE((obj), CURVE_FRAME_TYPE))

Return if the given class is a valid CurveFrameClass class.

obj :

the class to test.

Since 3.6


CURVE_FRAME_GET_CLASS

#define CURVE_FRAME_GET_CLASS     (G_TYPE_INSTANCE_GET_CLASS((obj), CURVE_FRAME_TYPE, CurveFrameClass))

Get the class of the given object.

obj :

the widget to get the class of.

Since 3.6


CurveFrame

typedef struct _CurveFrame CurveFrame;

An opaque structure defining a CurveFrame widget.

Since 3.6


CurveFrameClass

typedef struct _CurveFrameClass CurveFrameClass;

An opaque structure defining the class of a CurveFrame widget.

Since 3.6


curveFrame_get_type ()

GType               curveFrame_get_type                 (void);

Internal routine to get CURVE_FRAME_TYPE value.

Since 3.6


curveFrameNew ()

GtkWidget *         curveFrameNew                       (float distMin,
                                                         float distMax);

It creates a graph that can display distances distribution for VisuElement pairing. The display span is given by distMin and distMax.

distMin :

a float.

distMax :

a float (bigger than distMin).

Returns :

a newly craeted CurveFrame widget.

Since 3.6


curveFrameRedraw ()

void                curveFrameRedraw                    (CurveFrame *curve);

Forces to redraw the widget.

curve :

a CurveFrame widget.

Since 3.6


curveFrameSet_span ()

gboolean            curveFrameSet_span                  (CurveFrame *curve,
                                                         float span[2]);

Changes the distance range that is displayed on the curve.

curve :

a CurveFrame widget.

span :

two floats.

Returns :

TRUE if the distance displayed is actually changed.

Since 3.6


curveFrameGet_span ()

void                curveFrameGet_span                  (CurveFrame *curve,
                                                         float span[2]);

Retrieves the distances inside which the distribution is displayed.

curve :

a CurveFrame widget.

span :

a location for two floats.

Since 3.6


curveFrameHas_data ()

gboolean            curveFrameHas_data                  (CurveFrame *curve);

Retrieve if some distance data have been added to the curve.

curve :

a CurveFrame widget.

Returns :

TRUE if the curve has some data associated.

Since 3.6


curveFrameSet_data ()

void                curveFrameSet_data                  (CurveFrame *curve,
                                                         float step,
                                                         float min,
                                                         float max);

Compute and allocate the required size to store distributions, see curveFrameAdd_data() to actually setup the distribution values.

curve :

a CurveFrame widget.

step :

the stepping distance.

min :

the minimum distance for the distribution.

max :

the maximum distance for the distribution.

Since 3.6


curveFrameAdd_data ()

void                curveFrameAdd_data                  (CurveFrame *curve,
                                                         const gchar *eleName,
                                                         const gchar *lkName,
                                                         const guint *data,
                                                         guint nSteps,
                                                         float init,
                                                         float step);

This routine changes the distribution for element eleName, with respect to element lkName. data is an array that gives the number data[i] of pairs eleName - lkName which distance is in (init + step * i).

curve :

a CurveFrame widget.

eleName :

a string.

lkName :

a string.

data :

an array of frequencies.

nSteps :

the size of data.

init :

the initial x value for array data.

step :

the step value to increase x for array data.

Since 3.6


curveFrameSet_style ()

gboolean            curveFrameSet_style                 (CurveFrame *curve,
                                                         CurveFrameStyle style);

Modify the rendering style of the graph.

curve :

a CurveFrame object.

style :

a style id.

Returns :

TRUE if the style is actually changed.

Since 3.5


curveFrameSet_filter ()

gboolean            curveFrameSet_filter                (CurveFrame *curve,
                                                         const gchar *filter);

Modify the filter used to draw all or single VisuElement distribution.

curve :

a CurveFrame widget.

filter :

a string.

Returns :

TRUE if filter is actually changed.

Since 3.6


curveFrameSet_highlightRange ()

gboolean            curveFrameSet_highlightRange        (CurveFrame *curve,
                                                         float range[2]);

Modify the distance span that is used for highlight rendering and calculation, see curveFrameGet_meanInRange().

curve :

a CurveFrame widget.

range :

two floats.

Returns :

TRUE if range is actually changed.

Since 3.6


curveFrameGet_highlightRange ()

gboolean            curveFrameGet_highlightRange        (CurveFrame *curve,
                                                         float range[2]);

Retrieves the distance span that is used for highlight rendering and calculation, see curveFrameSet_highlightRange().

curve :

a CurveFrame widget.

range :

a location for two floats.

Returns :

TRUE if range has been set already.

Since 3.6


curveFrameSet_nNodes ()

void                curveFrameSet_nNodes                (CurveFrame *curve,
                                                         const gchar *ele,
                                                         guint n);

Modify the number of ... TODO

curve :

a CurveFrame widget.

ele :

a string.

n :

a number.

Since 3.6


curveFrameGet_integralInRange ()

float               curveFrameGet_integralInRange       (CurveFrame *curve,
                                                         gchar **label);

Calculates the integral of the displayed distribution (see curveFrameSet_filter()) in the given range (see curveFrameSet_highlightRange()). If label is present, it will points on a string labeling the displayed distribution. The string is owned by V_Sim.

curve :

a CurveFrame widget.

label :

a location to a string.

Returns :

the integral.

Since 3.6


curveFrameGet_meanInRange ()

float               curveFrameGet_meanInRange           (CurveFrame *curve,
                                                         gchar **label);

Calculates the average distance value of the displayed distribution (see curveFrameSet_filter()) in the given range (see curveFrameSet_highlightRange()). If label is present, it will points on a string labeling the displayed distribution. The string is owned by V_Sim.

curve :

a CurveFrame widget.

label :

a location to a string.

Returns :

the average distance value.

Since 3.6