X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=src%2Fgis-viewer.h;h=86833f6c79a1861a9b02c10805a3f3d7f1f26232;hb=6facff8b5777c6a561b9146736072d1de73bda1b;hp=214ce932959267aa92810ed3a4c1c0eba9bd0160;hpb=1ccb2426332856ef04f0bfb35716520a94e0d32c;p=grits diff --git a/src/gis-viewer.h b/src/gis-viewer.h index 214ce93..86833f6 100644 --- a/src/gis-viewer.h +++ b/src/gis-viewer.h @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009 Andy Spencer + * Copyright (C) 2009-2010 Andy Spencer * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -21,6 +21,12 @@ #include #include +/* Rendering levels */ +#define GIS_LEVEL_BACKGROUND -100 +#define GIS_LEVEL_WORLD 0 +#define GIS_LEVEL_OVERLAY 100 +#define GIS_LEVEL_HUD 200 + /* Type macros */ #define GIS_TYPE_VIEWER (gis_viewer_get_type()) #define GIS_VIEWER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GIS_TYPE_VIEWER, GisViewer)) @@ -44,7 +50,6 @@ struct _GisViewer { /* instance members */ GisPlugins *plugins; gchar *time; - gchar *site; gdouble location[3]; gdouble rotation[3]; gboolean offline; @@ -72,8 +77,9 @@ struct _GisViewerClass { void (*begin) (GisViewer *viewer); void (*end) (GisViewer *viewer); - void (*add) (GisViewer *viewer, GisObject *object); - void (*remove) (GisViewer *viewer, GisObject *object); + gpointer (*add) (GisViewer *viewer, GisObject *object, + gint level, gboolean sort); + void (*remove) (GisViewer *viewer, gpointer ref); }; GType gis_viewer_get_type(void); @@ -93,10 +99,6 @@ void gis_viewer_set_rotation(GisViewer *viewer, gdouble x, gdouble y, gdouble void gis_viewer_get_rotation(GisViewer *viewer, gdouble *x, gdouble *y, gdouble *z); void gis_viewer_rotate (GisViewer *viewer, gdouble x, gdouble y, gdouble z); -/* To be deprecated, use {get,set}_location */ -void gis_viewer_set_site(GisViewer *viewer, const gchar *site); -gchar *gis_viewer_get_site(GisViewer *viewer); - void gis_viewer_refresh(GisViewer *viewer); void gis_viewer_set_offline(GisViewer *viewer, gboolean offline); @@ -121,7 +123,8 @@ void gis_viewer_render_tiles(GisViewer *viewer, GisTile *root); void gis_viewer_begin(GisViewer *viewer); void gis_viewer_end (GisViewer *viewer); -void gis_viewer_add(GisViewer *self, GisObject *object); -void gis_viewer_remove(GisViewer *self, GisObject *object); +gpointer gis_viewer_add(GisViewer *self, GisObject *object, + gint level, gboolean sort); +void gis_viewer_remove(GisViewer *self, gpointer ref); #endif