GwyRuler

GwyRuler — Base class for GwyHRuler and GwyVRuler

Synopsis




                    GwyRuler;
                    GwyRulerClass;
void                gwy_ruler_set_range                 (GwyRuler *ruler,
                                                         gdouble lower,
                                                         gdouble upper,
                                                         gdouble position,
                                                         gdouble max_size);
void                gwy_ruler_draw_pos                  (GwyRuler *ruler);
void                gwy_ruler_get_range                 (GwyRuler *ruler,
                                                         gdouble *lower,
                                                         gdouble *upper,
                                                         gdouble *position,
                                                         gdouble *max_size);
void                gwy_ruler_set_si_unit               (GwyRuler *ruler,
                                                         GwySIUnit *units);
GwySIUnit*          gwy_ruler_get_si_unit               (GwyRuler *ruler);
GwyUnitsPlacement   gwy_ruler_get_units_placement       (GwyRuler *ruler);
void                gwy_ruler_set_units_placement       (GwyRuler *ruler,
                                                         GwyUnitsPlacement placement);

Object Hierarchy


  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GwyRuler
                           +----GwyHRuler
                           +----GwyVRuler

Implemented Interfaces

GwyRuler implements AtkImplementorIface.

Properties


  "lower"                    gdouble               : Read / Write
  "max-size"                 gdouble               : Read / Write
  "position"                 gdouble               : Read / Write
  "units-placement"          GwyUnitsPlacement     : Read / Write
  "upper"                    gdouble               : Read / Write

Description

GwyRuler is a ruler similar to GtkRuler, but it is more suited for a scientific application. It is scale-independent and thus has no arbitrary limits on the ranges or interpretation of displayed values. It can display units on the ruler (this can be controlled with gwy_ruler_set_units_placement()) and cooperates with GwySIUnit (see gwy_ruler_set_si_unit()). It also better follows Gtk+ theme than GtkRuler.

Details

GwyRuler

typedef struct _GwyRuler GwyRuler;


GwyRulerClass

typedef struct {
    GtkWidgetClass parent_class;

    /* Virtual methods */
    void (*prepare_sizes) (GwyRuler *ruler);
    void (*draw_frame) (GwyRuler *ruler);
    void (*draw_layout) (GwyRuler *ruler,
                         gint hpos,
                         gint vpos);
    void (*draw_tick) (GwyRuler *ruler,
                       gint pos,
                       gint length);
    void (*draw_pos)   (GwyRuler *ruler);

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


gwy_ruler_set_range ()

void                gwy_ruler_set_range                 (GwyRuler *ruler,
                                                         gdouble lower,
                                                         gdouble upper,
                                                         gdouble position,
                                                         gdouble max_size);

Sets range and current value of a ruler.

ruler : A GwyRuler
lower : Lower limit of the ruler.
upper : Upper limit of the ruler.
position : Current position of the mark on the ruler.
max_size : Maximum value used for calculating size of text labels.

gwy_ruler_draw_pos ()

void                gwy_ruler_draw_pos                  (GwyRuler *ruler);

Draws a position marker.

This method is intended primarily for subclass implementation.

ruler : A GwyRuler.

gwy_ruler_get_range ()

void                gwy_ruler_get_range                 (GwyRuler *ruler,
                                                         gdouble *lower,
                                                         gdouble *upper,
                                                         gdouble *position,
                                                         gdouble *max_size);

Retrieves values indicating the range and current position of a GwyRuler. See gwy_ruler_set_range().

ruler : A GwyRuler
lower : Location to store lower limit of the ruler, or NULL
upper : Location to store upper limit of the ruler, or NULL
position : Location to store the current position of the mark on the ruler, or NULL
max_size : Location to store the maximum size of the ruler used when calculating the space to leave for the text, or NULL.

gwy_ruler_set_si_unit ()

void                gwy_ruler_set_si_unit               (GwyRuler *ruler,
                                                         GwySIUnit *units);

Sets the base units a ruler displays.

Setting units to NULL effectively disables them.

ruler : A GwyRuler.
units : The base units this ruler should display.

gwy_ruler_get_si_unit ()

GwySIUnit*          gwy_ruler_get_si_unit               (GwyRuler *ruler);

Returns the base units a ruler uses.

ruler : A GwyRuler.
Returns : The units the rules uses.

gwy_ruler_get_units_placement ()

GwyUnitsPlacement   gwy_ruler_get_units_placement       (GwyRuler *ruler);

Gets current units placement of ruler ruler.

ruler : A GwyRuler
Returns : The units placement.

gwy_ruler_set_units_placement ()

void                gwy_ruler_set_units_placement       (GwyRuler *ruler,
                                                         GwyUnitsPlacement placement);

Sets whether and where units should be placed on the ruler.

ruler : A GwyRuler
placement : Units placement specification.

Property Details

The "lower" property

  "lower"                    gdouble               : Read / Write

Lower limit of ruler.

Default value: 0


The "max-size" property

  "max-size"                 gdouble               : Read / Write

Maximum size of the ruler.

Default value: 0


The "position" property

  "position"                 gdouble               : Read / Write

Position of mark on the ruler.

Default value: 0


The "units-placement" property

  "units-placement"          GwyUnitsPlacement     : Read / Write

The placement of units on the ruler, if any.

Default value: GWY_UNITS_PLACEMENT_NONE


The "upper" property

  "upper"                    gdouble               : Read / Write

Upper limit of ruler.

Default value: 0