VikAggregateLayer *vik_aggregate_layer_new () { VikAggregateLayer *val = VIK_AGGREGATE_LAYER ( g_object_new ( VIK_AGGREGATE_LAYER_TYPE, NULL ) ); vik_layer_set_type ( VIK_LAYER(val), VIK_LAYER_AGGREGATE ); val->children = NULL; return val; }
static VikGeorefLayer *georef_layer_new ( VikViewport *vvp ) { VikGeorefLayer *vgl = VIK_GEOREF_LAYER ( g_object_new ( VIK_GEOREF_LAYER_TYPE, NULL ) ); vik_layer_set_type ( VIK_LAYER(vgl), VIK_LAYER_GEOREF ); // Since GeoRef layer doesn't use uibuilder // initializing this way won't do anything yet.. vik_layer_set_defaults ( VIK_LAYER(vgl), vvp ); // Make these defaults based on the current view vgl->mpp_northing = vik_viewport_get_ympp ( vvp ); vgl->mpp_easting = vik_viewport_get_xmpp ( vvp ); vik_coord_to_utm ( vik_viewport_get_center ( vvp ), &(vgl->corner) ); vgl->image = NULL; vgl->pixbuf = NULL; vgl->click_x = -1; vgl->click_y = -1; vgl->scaled = NULL; vgl->scaled_width = 0; vgl->scaled_height = 0; vgl->ll_br.lat = 0.0; vgl->ll_br.lon = 0.0; vgl->alpha = 255; return vgl; }
static VikCoordLayer *coord_layer_new ( VikViewport *vvp ) { VikCoordLayer *vcl = VIK_COORD_LAYER ( g_object_new ( VIK_COORD_LAYER_TYPE, NULL ) ); vik_layer_set_type ( VIK_LAYER(vcl), VIK_LAYER_COORD ); vik_layer_set_defaults ( VIK_LAYER(vcl), vvp ); vcl->gc = NULL; return vcl; }
static VikDEMLayer *dem_layer_new ( VikViewport *vvp ) { VikDEMLayer *vdl = VIK_DEM_LAYER ( g_object_new ( VIK_DEM_LAYER_TYPE, NULL ) ); vik_layer_set_type ( VIK_LAYER(vdl), VIK_LAYER_DEM ); vdl->files = NULL; vdl->gcs = g_malloc(sizeof(GdkGC *)*DEM_N_HEIGHT_COLORS); vdl->gcsgradient = g_malloc(sizeof(GdkGC *)*DEM_N_GRADIENT_COLORS); /* make new gcs only if we need it (copy layer -> use old) */ // Ensure the base GC is available so the default colour can be applied if ( vvp ) vdl->gcs[0] = vik_viewport_new_gc ( vvp, "#0000FF", 1 ); vik_layer_set_defaults ( VIK_LAYER(vdl), vvp ); return vdl; }