+void aweather_view_set_location(AWeatherView *view, gdouble x, gdouble y, gdouble z)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: set_location");
+ view->location[0] = x;
+ view->location[1] = y;
+ view->location[2] = z;
+ _aweather_view_emit_location_changed(view);
+}
+
+void aweather_view_get_location(AWeatherView *view, gdouble *x, gdouble *y, gdouble *z)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: get_location");
+ *x = view->location[0];
+ *y = view->location[1];
+ *z = view->location[2];
+}
+
+void aweather_view_pan(AWeatherView *view, gdouble x, gdouble y, gdouble z)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: pan - x=%.0f, y=%.0f, z=%.0f", x, y, z);
+ view->location[0] += x;
+ view->location[1] += y;
+ view->location[2] += z;
+ _aweather_view_emit_location_changed(view);
+}
+
+void aweather_view_zoom(AWeatherView *view, gdouble scale)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: zoom");
+ view->location[2] *= scale;
+ _aweather_view_emit_location_changed(view);
+}
+
+void aweather_view_refresh(AWeatherView *view)
+{
+ g_debug("AWeatherView: refresh");
+ _aweather_view_emit_refresh(view);
+}
+
+void aweather_view_set_offline(AWeatherView *view, gboolean offline)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: set_offline - %d", offline);
+ view->offline = offline;
+ _aweather_view_emit_offline(view);
+}
+
+gboolean aweather_view_get_offline(AWeatherView *view)
+{
+ g_assert(AWEATHER_IS_VIEW(view));
+ g_debug("AWeatherView: get_offline - %d", view->offline);
+ return view->offline;
+}
+
+/* To be deprecated, use {get,set}_location */
+void aweather_view_set_site(AWeatherView *view, const gchar *site)