#include <gtk/gtk.h>
#include <glib-object.h>
+#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))
/* instance members */
GisPlugins *plugins;
gchar *time;
- gchar *site;
gdouble location[3];
gdouble rotation[3];
gboolean offline;
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);
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);
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