GwyVectorLayer

GwyVectorLayer — Base class for GwyDataView vector (interactive) layers

Synopsis




            GwyVectorLayer;
            GwyVectorLayerClass;
GwySelection* gwy_vector_layer_get_selection
                                            (GwyVectorLayer *layer);
void        gwy_vector_layer_set_selection_key
                                            (GwyVectorLayer *layer,
                                             const gchar *key);
const gchar* gwy_vector_layer_get_selection_key
                                            (GwyVectorLayer *layer);
void        gwy_vector_layer_draw           (GwyVectorLayer *layer,
                                             GdkDrawable *drawable,
                                             GwyRenderingTarget target);
gboolean    gwy_vector_layer_button_press   (GwyVectorLayer *layer,
                                             GdkEventButton *event);
gboolean    gwy_vector_layer_button_release (GwyVectorLayer *layer,
                                             GdkEventButton *event);
gboolean    gwy_vector_layer_motion_notify  (GwyVectorLayer *layer,
                                             GdkEventMotion *event);
gboolean    gwy_vector_layer_key_press      (GwyVectorLayer *layer,
                                             GdkEventKey *event);
gboolean    gwy_vector_layer_key_release    (GwyVectorLayer *layer,
                                             GdkEventKey *event);

Object Hierarchy


  GObject
   +----GtkObject
         +----GwyDataViewLayer
               +----GwyVectorLayer

Properties


  "selection-key"        gchararray            : Read / Write

Description

GwyVectorLayer is a base class for GwyDataViewLayer's displaying selections and handling user input. It is a GwyDataView component and it is not normally usable outside of it.

The layer takes the selection to display from its parent GwyDataView. The key under which the selection is found must be set with gwy_vector_layer_set_selection_key(). The selection object currently in use can be obtained with gwy_vector_layer_get_selection().

The other methods are rarely useful outside GwyDataView implementation.

Details

GwyVectorLayer

typedef struct _GwyVectorLayer GwyVectorLayer;


GwyVectorLayerClass

typedef struct {
    GwyDataViewLayerClass parent_class;

    GType selection_type;

    /* Virtual table */
    void (*draw)(GwyVectorLayer *layer,
                 GdkDrawable *drawable,
                 GwyRenderingTarget target);
    gboolean (*button_press)(GwyVectorLayer *layer,
                             GdkEventButton *event);
    gboolean (*button_release)(GwyVectorLayer *layer,
                               GdkEventButton *event);
    gboolean (*motion_notify)(GwyVectorLayer *layer,
                              GdkEventMotion *event);
    gboolean (*key_press)(GwyVectorLayer *layer,
                          GdkEventKey *event);
    gboolean (*key_release)(GwyVectorLayer *layer,
                            GdkEventKey *event);

    gpointer reserved1;
    gpointer reserved2;
} GwyVectorLayerClass;


gwy_vector_layer_get_selection ()

GwySelection* gwy_vector_layer_get_selection
                                            (GwyVectorLayer *layer);

Gets the selection objects a vector layer currently uses.

layer : A vector data view layer.
Returns : A GwySelection.

gwy_vector_layer_set_selection_key ()

void        gwy_vector_layer_set_selection_key
                                            (GwyVectorLayer *layer,
                                             const gchar *key);

Sets the selection object to use by a vector layer.

layer : A vector layer.
key : Container string key identifying the selection object.

gwy_vector_layer_get_selection_key ()

const gchar* gwy_vector_layer_get_selection_key
                                            (GwyVectorLayer *layer);

Gets the key identifying selection this vector layer displays.

layer : A vector layer.
Returns : The string key, or NULL if it isn't set.

gwy_vector_layer_draw ()

void        gwy_vector_layer_draw           (GwyVectorLayer *layer,
                                             GdkDrawable *drawable,
                                             GwyRenderingTarget target);

Draws layer on given drawable (which should be a GwyDataView window).

layer : A vector data view layer.
drawable : A drawable to draw on.
target : Rendering target.

gwy_vector_layer_button_press ()

gboolean    gwy_vector_layer_button_press   (GwyVectorLayer *layer,
                                             GdkEventButton *event);

Sends a mouse button press event to a layer.

This method primarily exists for GwyDataView to forward events to layers. You should rarely need it.

layer : A vector data view layer.
event : A Gdk mouse button event.
Returns : TRUE if the event was handled. In practice, it returns FALSE.

gwy_vector_layer_button_release ()

gboolean    gwy_vector_layer_button_release (GwyVectorLayer *layer,
                                             GdkEventButton *event);

Sends a mouse button release event to a layer.

This method primarily exists for GwyDataView to forward events to layers. You should rarely need it.

layer : A vector data view layer.
event : A Gdk mouse button event.
Returns : TRUE if the event was handled. In practice, it returns FALSE.

gwy_vector_layer_motion_notify ()

gboolean    gwy_vector_layer_motion_notify  (GwyVectorLayer *layer,
                                             GdkEventMotion *event);

Sends a mouse pointer motion notification event to a layer.

This method primarily exists for GwyDataView to forward events to layers. You should rarely need it.

layer : A vector data view layer.
event : A Gdk mouse pointer motion notification event. It can be a hint.
Returns : TRUE if the event was handled. In practice, it returns FALSE.

gwy_vector_layer_key_press ()

gboolean    gwy_vector_layer_key_press      (GwyVectorLayer *layer,
                                             GdkEventKey *event);

Sends a key press event to a layer.

This method primarily exists for GwyDataView to forward events to layers. You should rarely need it.

layer : A vector data view layer.
event : A Gdk key event.
Returns : TRUE if the event was handled. In practice, it returns FALSE.

gwy_vector_layer_key_release ()

gboolean    gwy_vector_layer_key_release    (GwyVectorLayer *layer,
                                             GdkEventKey *event);

Sends a key release event to a layer.

This method primarily exists for GwyDataView to forward events to layers. You should rarely need it.

layer : A vector data view layer.
event : A Gdk key event.
Returns : TRUE if the event was handled. In practice, it returns FALSE.

Properties

The "selection-key" property

  "selection-key"        gchararray            : Read / Write

The :selection-key property is the container key used to identify displayed GwySelection in container.

Default value: NULL

See Also

Standard vector layers