VikLayer

VikLayer

Functions

gpointer (*VikToolConstructorFunc) ()
void (*VikToolDestructorFunc) ()
VikLayerToolFuncStatus (*VikToolMouseFunc) ()
VikLayerToolFuncStatus (*VikToolMouseMoveFunc) ()
void (*VikToolActivationFunc) ()
gboolean (*VikToolKeyFunc) ()
VikLayer * (*VikLayerFuncCreate) ()
void (*VikLayerFuncRealize) ()
void (*VikLayerFuncPostRead) ()
void (*VikLayerFuncFree) ()
gboolean (*VikLayerFuncProperties) ()
void (*VikLayerFuncDraw) ()
void (*VikLayerFuncChangeCoordMode) ()
void (*VikLayerFuncSetMenuItemsSelection) ()
guint16 (*VikLayerFuncGetMenuItemsSelection) ()
void (*VikLayerFuncAddMenuItems) ()
gboolean (*VikLayerFuncSublayerAddMenuItems) ()
const gchar * (*VikLayerFuncSublayerRenameRequest) ()
gboolean (*VikLayerFuncSublayerToggleVisible) ()
const gchar * (*VikLayerFuncSublayerTooltip) ()
const gchar * (*VikLayerFuncLayerTooltip) ()
gboolean (*VikLayerFuncLayerSelected) ()
void (*VikLayerFuncMarshall) ()
VikLayer * (*VikLayerFuncUnmarshall) ()
gboolean (*VikLayerFuncSetParam) ()
VikLayerParamData (*VikLayerFuncGetParam) ()
void (*VikLayerFuncChangeParam) ()
gboolean (*VikLayerFuncReadFileData) ()
void (*VikLayerFuncWriteFileData) ()
void (*VikLayerFuncDeleteItem) ()
void (*VikLayerFuncCutItem) ()
void (*VikLayerFuncCopyItem) ()
gboolean (*VikLayerFuncPasteItem) ()
void (*VikLayerFuncFreeCopiedItem) ()
void (*VikLayerFuncDragDropRequest) ()
gboolean (*VikLayerFuncSelectClick) ()
gboolean (*VikLayerFuncSelectMove) ()
gboolean (*VikLayerFuncSelectRelease) ()
gboolean (*VikLayerFuncSelectedViewportMenu) ()
double (*VikLayerFuncGetTimestamp) ()
VikLayerInterface * vik_layer_get_interface ()
void vik_layer_set_type ()
void vik_layer_draw ()
void vik_layer_change_coord_mode ()
void vik_layer_rename ()
void vik_layer_rename_no_copy ()
const gchar * vik_layer_get_name ()
gdouble vik_layer_get_timestamp ()
gboolean vik_layer_set_param ()
void vik_layer_set_defaults ()
void vik_layer_emit_update ()
void vik_layer_set_menu_items_selection ()
guint16 vik_layer_get_menu_items_selection ()
void vik_layer_add_menu_items ()
VikLayer * vik_layer_create ()
gboolean vik_layer_properties ()
void vik_layer_realize ()
void vik_layer_post_read ()
gboolean vik_layer_sublayer_add_menu_items ()
void vik_layer_marshall ()
VikLayer * vik_layer_unmarshall ()
void vik_layer_marshall_params ()
void vik_layer_unmarshall_params ()
const gchar * vik_layer_sublayer_rename_request ()
gboolean vik_layer_sublayer_toggle_visible ()
const gchar * vik_layer_sublayer_tooltip ()
const gchar * vik_layer_layer_tooltip ()
gboolean vik_layer_selected ()
GdkPixbuf * vik_layer_load_icon ()
VikLayer * vik_layer_get_and_reset_trigger ()
void vik_layer_emit_update_secondary ()
void vik_layer_emit_update_although_invisible ()
VikLayerTypeEnum vik_layer_type_from_string ()
void vik_layer_typed_param_data_free ()
VikLayerTypedParamData * vik_layer_typed_param_data_copy_from_data ()
VikLayerTypedParamData * vik_layer_data_typed_param_copy_from_string ()

Signals

void update Action

Types and Values

Object Hierarchy

    GObject
    ╰── VikLayer
        ├── VikAggregateLayer
        ├── VikCoordLayer
        ├── VikDEMLayer
        ├── VikGeorefLayer
        ├── VikGpsLayer
        ├── VikMapnikLayer
        ├── VikMapsLayer
        ╰── VikTrwLayer

Description

Functions

VikToolConstructorFunc ()

gpointer
(*VikToolConstructorFunc) (VikWindow *Param1,
                           VikViewport *Param2);

VikToolDestructorFunc ()

void
(*VikToolDestructorFunc) (gpointer Param1);

VikToolMouseFunc ()

VikLayerToolFuncStatus
(*VikToolMouseFunc) (VikLayer *Param1,
                     GdkEventButton *Param2,
                     gpointer Param3);

VikToolMouseMoveFunc ()

VikLayerToolFuncStatus
(*VikToolMouseMoveFunc) (VikLayer *Param1,
                         GdkEventMotion *Param2,
                         gpointer Param3);

VikToolActivationFunc ()

void
(*VikToolActivationFunc) (VikLayer *Param1,
                          gpointer Param2);

VikToolKeyFunc ()

gboolean
(*VikToolKeyFunc) (VikLayer *Param1,
                   GdkEventKey *Param2,
                   gpointer Param3);

VikLayerFuncCreate ()

VikLayer *
(*VikLayerFuncCreate) (VikViewport *Param1);

VikLayerFuncRealize ()

void
(*VikLayerFuncRealize) (VikLayer *Param1,
                        VikTreeview *Param2,
                        GtkTreeIter *Param3);

VikLayerFuncPostRead ()

void
(*VikLayerFuncPostRead) (VikLayer *Param1,
                         VikViewport *vp,
                         gboolean from_file);

VikLayerFuncFree ()

void
(*VikLayerFuncFree) (VikLayer *Param1);

VikLayerFuncProperties ()

gboolean
(*VikLayerFuncProperties) (VikLayer *Param1,
                           VikViewport *Param2,
                           gboolean Param3);

VikLayerFuncDraw ()

void
(*VikLayerFuncDraw) (VikLayer *Param1,
                     VikViewport *Param2);

VikLayerFuncChangeCoordMode ()

void
(*VikLayerFuncChangeCoordMode) (VikLayer *Param1,
                                VikCoordMode Param2);

VikLayerFuncSetMenuItemsSelection ()

void
(*VikLayerFuncSetMenuItemsSelection) (VikLayer *Param1,
                                      guint16 Param2);

VikLayerFuncGetMenuItemsSelection ()

guint16
(*VikLayerFuncGetMenuItemsSelection) (VikLayer *Param1);

VikLayerFuncAddMenuItems ()

void
(*VikLayerFuncAddMenuItems) (VikLayer *Param1,
                             GtkMenu *Param2,
                             gpointer Param3);

VikLayerFuncSublayerAddMenuItems ()

gboolean
(*VikLayerFuncSublayerAddMenuItems) (VikLayer *Param1,
                                     GtkMenu *Param2,
                                     gpointer Param3,
                                     gint Param4,
                                     gpointer Param5,
                                     GtkTreeIter *Param6,
                                     VikViewport *Param7);

VikLayerFuncSublayerRenameRequest ()

const gchar *
(*VikLayerFuncSublayerRenameRequest) (VikLayer *Param1,
                                      const gchar *Param2,
                                      gpointer Param3,
                                      gint Param4,
                                      VikViewport *Param5,
                                      GtkTreeIter *Param6);

VikLayerFuncSublayerToggleVisible ()

gboolean
(*VikLayerFuncSublayerToggleVisible) (VikLayer *Param1,
                                      gint Param2,
                                      gpointer Param3);

VikLayerFuncSublayerTooltip ()

const gchar *
(*VikLayerFuncSublayerTooltip) (VikLayer *Param1,
                                gint Param2,
                                gpointer Param3);

VikLayerFuncLayerTooltip ()

const gchar *
(*VikLayerFuncLayerTooltip) (VikLayer *Param1);

VikLayerFuncLayerSelected ()

gboolean
(*VikLayerFuncLayerSelected) (VikLayer *Param1,
                              gint Param2,
                              gpointer Param3,
                              gint Param4,
                              gpointer Param5);

VikLayerFuncMarshall ()

void
(*VikLayerFuncMarshall) (VikLayer *Param1,
                         guint8 **Param2,
                         guint *Param3);

VikLayerFuncUnmarshall ()

VikLayer *
(*VikLayerFuncUnmarshall) (guint8 *Param1,
                           guint Param2,
                           VikViewport *Param3);

VikLayerFuncSetParam ()

gboolean
(*VikLayerFuncSetParam) (VikLayer *Param1,
                         VikLayerSetParam *Param2);

VikLayerFuncGetParam ()

VikLayerParamData
(*VikLayerFuncGetParam) (VikLayer *Param1,
                         guint16 Param2,
                         gboolean Param3);

VikLayerFuncChangeParam ()

void
(*VikLayerFuncChangeParam) (GtkWidget *Param1,
                            ui_change_values Param2);

VikLayerFuncReadFileData ()

gboolean
(*VikLayerFuncReadFileData) (VikLayer *Param1,
                             FILE *Param2,
                             const gchar *Param3);

VikLayerFuncWriteFileData ()

void
(*VikLayerFuncWriteFileData) (VikLayer *Param1,
                              FILE *Param2,
                              const gchar *Param3);

VikLayerFuncDeleteItem ()

void
(*VikLayerFuncDeleteItem) (VikLayer *Param1,
                           gint Param2,
                           gpointer Param3);

VikLayerFuncCutItem ()

void
(*VikLayerFuncCutItem) (VikLayer *Param1,
                        gint Param2,
                        gpointer Param3);

VikLayerFuncCopyItem ()

void
(*VikLayerFuncCopyItem) (VikLayer *Param1,
                         gint Param2,
                         gpointer Param3,
                         guint8 **Param4,
                         guint *Param5);

VikLayerFuncPasteItem ()

gboolean
(*VikLayerFuncPasteItem) (VikLayer *Param1,
                          gint Param2,
                          guint8 *Param3,
                          guint Param4);

VikLayerFuncFreeCopiedItem ()

void
(*VikLayerFuncFreeCopiedItem) (gint Param1,
                               gpointer Param2);

VikLayerFuncDragDropRequest ()

void
(*VikLayerFuncDragDropRequest) (VikLayer *Param1,
                                VikLayer *Param2,
                                GtkTreeIter *Param3,
                                GtkTreePath *Param4);

VikLayerFuncSelectClick ()

gboolean
(*VikLayerFuncSelectClick) (VikLayer *Param1,
                            GdkEventButton *Param2,
                            VikViewport *Param3,
                            tool_ed_t *Param4);

VikLayerFuncSelectMove ()

gboolean
(*VikLayerFuncSelectMove) (VikLayer *Param1,
                           GdkEventMotion *Param2,
                           VikViewport *Param3,
                           tool_ed_t *Param4);

VikLayerFuncSelectRelease ()

gboolean
(*VikLayerFuncSelectRelease) (VikLayer *Param1,
                              GdkEventButton *Param2,
                              VikViewport *Param3,
                              tool_ed_t *Param4);

VikLayerFuncSelectedViewportMenu ()

gboolean
(*VikLayerFuncSelectedViewportMenu) (VikLayer *Param1,
                                     GdkEventButton *Param2,
                                     VikViewport *Param3);

VikLayerFuncGetTimestamp ()

double
(*VikLayerFuncGetTimestamp) (VikLayer *Param1);

vik_layer_get_interface ()

VikLayerInterface *
vik_layer_get_interface (VikLayerTypeEnum type);

vik_layer_set_type ()

void
vik_layer_set_type (VikLayer *vl,
                    VikLayerTypeEnum type);

vik_layer_draw ()

void
vik_layer_draw (VikLayer *l,
                VikViewport *vp);

vik_layer_change_coord_mode ()

void
vik_layer_change_coord_mode (VikLayer *l,
                             VikCoordMode mode);

vik_layer_rename ()

void
vik_layer_rename (VikLayer *l,
                  const gchar *new_name);

vik_layer_rename_no_copy ()

void
vik_layer_rename_no_copy (VikLayer *l,
                          gchar *new_name);

vik_layer_get_name ()

const gchar *
vik_layer_get_name (VikLayer *l);

vik_layer_get_timestamp ()

gdouble
vik_layer_get_timestamp (VikLayer *vl);

vik_layer_set_param ()

gboolean
vik_layer_set_param (VikLayer *vl,
                     VikLayerSetParam *vlsp);

vik_layer_set_defaults ()

void
vik_layer_set_defaults (VikLayer *vl,
                        VikViewport *vvp);

Loop around all parameters for the specified layer to call the function to get the default value for that parameter


vik_layer_emit_update ()

void
vik_layer_emit_update (VikLayer *vl);

vik_layer_set_menu_items_selection ()

void
vik_layer_set_menu_items_selection (VikLayer *l,
                                    guint16 selection);

vik_layer_get_menu_items_selection ()

guint16
vik_layer_get_menu_items_selection (VikLayer *l);

vik_layer_add_menu_items ()

void
vik_layer_add_menu_items (VikLayer *l,
                          GtkMenu *menu,
                          gpointer vlp);

vik_layer_create ()

VikLayer *
vik_layer_create (VikLayerTypeEnum type,
                  VikViewport *vp,
                  gboolean interactive);

vik_layer_properties ()

gboolean
vik_layer_properties (VikLayer *layer,
                      VikViewport *vp,
                      gboolean have_apply);

vik_layer_realize ()

void
vik_layer_realize (VikLayer *l,
                   VikTreeview *vt,
                   GtkTreeIter *layer_iter);

vik_layer_post_read ()

void
vik_layer_post_read (VikLayer *layer,
                     VikViewport *vp,
                     gboolean from_file);

vik_layer_sublayer_add_menu_items ()

gboolean
vik_layer_sublayer_add_menu_items (VikLayer *l,
                                   GtkMenu *menu,
                                   gpointer vlp,
                                   gint subtype,
                                   gpointer sublayer,
                                   GtkTreeIter *iter,
                                   VikViewport *vvp);

vik_layer_marshall ()

void
vik_layer_marshall (VikLayer *vl,
                    guint8 **data,
                    guint *len);

vik_layer_unmarshall ()

VikLayer *
vik_layer_unmarshall (const guint8 *data,
                      guint len,
                      VikViewport *vvp);

vik_layer_marshall_params ()

void
vik_layer_marshall_params (VikLayer *vl,
                           guint8 **data,
                           guint *len);

vik_layer_unmarshall_params ()

void
vik_layer_unmarshall_params (VikLayer *vl,
                             const guint8 *data,
                             guint len,
                             VikViewport *vvp);

vik_layer_sublayer_rename_request ()

const gchar *
vik_layer_sublayer_rename_request (VikLayer *l,
                                   const gchar *newname,
                                   gpointer vlp,
                                   gint subtype,
                                   gpointer sublayer,
                                   GtkTreeIter *iter);

vik_layer_sublayer_toggle_visible ()

gboolean
vik_layer_sublayer_toggle_visible (VikLayer *l,
                                   gint subtype,
                                   gpointer sublayer);

vik_layer_sublayer_tooltip ()

const gchar *
vik_layer_sublayer_tooltip (VikLayer *l,
                            gint subtype,
                            gpointer sublayer);

vik_layer_layer_tooltip ()

const gchar *
vik_layer_layer_tooltip (VikLayer *l);

vik_layer_selected ()

gboolean
vik_layer_selected (VikLayer *l,
                    gint subtype,
                    gpointer sublayer,
                    gint type,
                    gpointer vlp);

vik_layer_load_icon ()

GdkPixbuf *
vik_layer_load_icon (VikLayerTypeEnum type);

Unref the returned pixbuf after use


vik_layer_get_and_reset_trigger ()

VikLayer *
vik_layer_get_and_reset_trigger ();

vik_layer_emit_update_secondary ()

void
vik_layer_emit_update_secondary (VikLayer *vl);

vik_layer_emit_update_although_invisible ()

void
vik_layer_emit_update_although_invisible
                               (VikLayer *vl);

vik_layer_type_from_string ()

VikLayerTypeEnum
vik_layer_type_from_string (const gchar *str);

vik_layer_typed_param_data_free ()

void
vik_layer_typed_param_data_free (gpointer gp);

vik_layer_typed_param_data_copy_from_data ()

VikLayerTypedParamData *
vik_layer_typed_param_data_copy_from_data
                               (VikLayerParamType type,
                                VikLayerParamData val);

vik_layer_data_typed_param_copy_from_string ()

VikLayerTypedParamData *
vik_layer_data_typed_param_copy_from_string
                               (VikLayerParamType type,
                                const gchar *str);

Types and Values

VIK_LAYER_TYPE

#define VIK_LAYER_TYPE            (vik_layer_get_type ())

enum VikLayerToolFuncStatus

Members

VIK_LAYER_TOOL_IGNORED

   

VIK_LAYER_TOOL_ACK

   

VIK_LAYER_TOOL_ACK_REDRAW_ABOVE

   

VIK_LAYER_TOOL_ACK_REDRAW_ALL

   

VIK_LAYER_TOOL_ACK_REDRAW_IF_VISIBLE

   

VIK_LAYER_TOOL_ACK_GRAB_FOCUS

   

struct VikToolInterface

struct VikToolInterface {
  const gchar *icon;
  GtkRadioActionEntry radioActionEntry;
  VikToolConstructorFunc create;
  VikToolDestructorFunc destroy;
  VikToolActivationFunc activate;
  VikToolActivationFunc deactivate;
  VikToolMouseFunc click;
  VikToolMouseMoveFunc move;
  VikToolMouseFunc release;
  VikToolKeyFunc key_press; /* return FALSE if we don't use the key press -- should return FALSE most of the time if we want any shortcuts / UI keybindings to work! use sparingly. */
  VikToolKeyFunc key_release; /* as above */
  gboolean pan_handler; // Call click & release funtions even when 'Pan Mode' is on
  GdkCursorType cursor_type;
  const gchar *cursor_name;
  const GdkCursor *cursor;
};

enum VikStdLayerMenuItem

Members

VIK_MENU_ITEM_PROPERTY

   

VIK_MENU_ITEM_CUT

   

VIK_MENU_ITEM_COPY

   

VIK_MENU_ITEM_PASTE

   

VIK_MENU_ITEM_DELETE

   

VIK_MENU_ITEM_ALL

   

struct VikLayerInterface

struct VikLayerInterface {
  const gchar *                     fixed_layer_name; // Used in .vik files - this should never change to maintain file compatibility
  const gchar *                     name;             // Translate-able name used for display purposes
  const gchar *                     accelerator;
  const gchar *                     icon;

  VikToolInterface *                tools;
  guint16                           tools_count;

  /* for I/O reading to and from .vik files -- params like coordline width, color, etc. */
  VikLayerParam *                   params;
  guint16                           params_count;
  gchar **                          params_groups;
  guint8                            params_groups_count;

  /* menu items to be created */
  VikStdLayerMenuItem               menu_items_selection;

  VikLayerFuncCreate                create;
  VikLayerFuncRealize               realize;
  VikLayerFuncPostRead              post_read;
  VikLayerFuncFree                  free;

  VikLayerFuncProperties            properties;
  VikLayerFuncDraw                  draw;
  VikLayerFuncConfigure             configure;
  VikLayerFuncChangeCoordMode       change_coord_mode;

  VikLayerFuncGetTimestamp          get_timestamp;

  VikLayerFuncSetMenuItemsSelection set_menu_selection;
  VikLayerFuncGetMenuItemsSelection get_menu_selection;

  VikLayerFuncAddMenuItems          add_menu_items;
  VikLayerFuncSublayerAddMenuItems  sublayer_add_menu_items;
  VikLayerFuncSublayerRenameRequest sublayer_rename_request;
  VikLayerFuncSublayerToggleVisible sublayer_toggle_visible;
  VikLayerFuncSublayerTooltip       sublayer_tooltip;
  VikLayerFuncLayerTooltip          layer_tooltip;
  VikLayerFuncLayerSelected         layer_selected;
  VikLayerFuncLayerToggleVisible    layer_toggle_visible;

  VikLayerFuncMarshall              marshall;
  VikLayerFuncUnmarshall            unmarshall;

  /* for I/O */
  VikLayerFuncSetParam              set_param;
  VikLayerFuncGetParam              get_param;
  VikLayerFuncChangeParam           change_param;

  /* for I/O -- extra non-param data like TrwLayer data */
  VikLayerFuncReadFileData          read_file_data;
  VikLayerFuncWriteFileData         write_file_data;

  VikLayerFuncDeleteItem            delete_item;
  VikLayerFuncCutItem               cut_item;
  VikLayerFuncCopyItem              copy_item;
  VikLayerFuncPasteItem             paste_item;
  VikLayerFuncFreeCopiedItem        free_copied_item;

  VikLayerFuncDragDropRequest       drag_drop_request;

  VikLayerFuncSelectClick           select_click;
  VikLayerFuncSelectMove            select_move;
  VikLayerFuncSelectRelease         select_release;
  VikLayerFuncSelectedViewportMenu  show_viewport_menu;

  VikLayerFuncRefresh               refresh;
};

VikLayerTypedParamData

typedef struct {
  VikLayerParamData data;
  VikLayerParamType type;
} VikLayerTypedParamData;

Signal Details

The “update” signal

void
user_function (VikLayer *viklayer,
               gpointer  user_data)

Flags: Action