#include <glib.h>
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixdata.h>
-#include "vikwindow.h"
+#include "vikwindow.h"
#include "viktreeview.h"
#include "vikviewport.h"
#define IS_VIK_LAYER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), VIK_LAYER_TYPE))
#define IS_VIK_LAYER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), VIK_LAYER_TYPE))
-typedef struct _VikLayer VikLayer;
typedef struct _VikLayerClass VikLayerClass;
struct _VikLayerClass
gint16 group;
const gchar *title;
guint8 widget_type;
- const gpointer widget_data;
- const gpointer extra_widget_data;
+ gpointer widget_data;
+ gpointer extra_widget_data;
} VikLayerParam;
enum {
typedef void (*VikLayerFuncDraw) (VikLayer *,VikViewport *);
typedef void (*VikLayerFuncChangeCoordMode) (VikLayer *,VikCoordMode);
+typedef void (*VikLayerFuncSetMenuItemsSelection) (VikLayer *,guint16);
+typedef guint16 (*VikLayerFuncGetMenuItemsSelection) (VikLayer *);
typedef void (*VikLayerFuncAddMenuItems) (VikLayer *,GtkMenu *,gpointer); /* gpointer is a VikLayersPanel */
typedef gboolean (*VikLayerFuncSublayerAddMenuItems) (VikLayer *,GtkMenu *,gpointer, /* first gpointer is a VikLayersPanel */
gint,gpointer,GtkTreeIter *);
VikLayerFuncDraw draw;
VikLayerFuncChangeCoordMode change_coord_mode;
+ VikLayerFuncSetMenuItemsSelection set_menu_selection;
+ VikLayerFuncGetMenuItemsSelection get_menu_selection;
+
VikLayerFuncAddMenuItems add_menu_items;
VikLayerFuncSublayerAddMenuItems sublayer_add_menu_items;
VikLayerFuncSublayerRenameRequest sublayer_rename_request;
void vik_layer_emit_update ( VikLayer *vl );
/* GUI */
+void vik_layer_set_menu_items_selection(VikLayer *l, guint16 selection);
+guint16 vik_layer_get_menu_items_selection(VikLayer *l);
void vik_layer_add_menu_items ( VikLayer *l, GtkMenu *menu, gpointer vlp );
VikLayer *vik_layer_create ( gint type, gpointer vp, GtkWindow *w, gboolean interactive );
gboolean vik_layer_properties ( VikLayer *layer, gpointer vp );