+#include "aweather-plugin.h"
+#include "plugin-example.h"
+
+/****************
+ * GObject code *
+ ****************/
+static void aweather_example_plugin_init(AWeatherPluginInterface *iface);
+static void aweather_example_expose(AWeatherPlugin *_example);
+G_DEFINE_TYPE_WITH_CODE(AWeatherExample, aweather_example, G_TYPE_OBJECT,
+ G_IMPLEMENT_INTERFACE(AWEATHER_TYPE_PLUGIN,
+ aweather_example_plugin_init));
+static void aweather_example_class_init(AWeatherExampleClass *klass)
+{
+ GObjectClass *object_class = (GObjectClass*)klass;
+}
+static void aweather_example_plugin_init(AWeatherPluginInterface *iface)
+{
+ /* Add methods to the interface */
+ iface->expose = aweather_example_expose;
+}
+static void aweather_example_init(AWeatherExample *example)
+{
+ /* Set defaults */
+ example->gui = NULL;
+ example->button = NULL;
+ example->rotation = 30.0;
+}
+
+/***********
+ * Helpers *
+ ***********/
+static gboolean rotate(gpointer _example)
+{
+ AWeatherExample *example = _example;
+ if (gtk_toggle_button_get_active(example->button)) {
+ example->rotation += 1.0;
+ aweather_gui_gl_redraw(example->gui);
+ }
+ return TRUE;
+}
+
+/***********
+ * Methods *
+ ***********/
+AWeatherExample *aweather_example_new(AWeatherGui *gui)
+{
+ //g_message("aweather_view_new");
+ AWeatherExample *example = g_object_new(AWEATHER_TYPE_EXAMPLE, NULL);
+ example->gui = gui;