summaryrefslogtreecommitdiff
path: root/mateweather/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'mateweather/src/main.c')
-rw-r--r--mateweather/src/main.c58
1 files changed, 58 insertions, 0 deletions
diff --git a/mateweather/src/main.c b/mateweather/src/main.c
new file mode 100644
index 00000000..de8d8436
--- /dev/null
+++ b/mateweather/src/main.c
@@ -0,0 +1,58 @@
+/* $Id$ */
+
+/*
+ * Papadimitriou Spiros <[email protected]>
+ *
+ * This code released under the GNU GPL.
+ * Read the file COPYING for more information.
+ *
+ * Main applet widget
+ *
+ */
+
+#include <glib.h>
+#include <config.h>
+#include <gtk/gtk.h>
+#include <gio/gio.h>
+#include <mate-panel-applet.h>
+#include <mate-panel-applet-gsettings.h>
+
+#define MATEWEATHER_I_KNOW_THIS_IS_UNSTABLE
+
+#include <libmateweather/mateweather-prefs.h>
+
+#include "mateweather.h"
+#include "mateweather-pref.h"
+#include "mateweather-dialog.h"
+#include "mateweather-applet.h"
+
+
+static gboolean mateweather_applet_new(MatePanelApplet* applet, const gchar* iid, gpointer data)
+{
+ MateWeatherApplet* gw_applet;
+
+ gw_applet = g_new0(MateWeatherApplet, 1);
+
+ gw_applet->applet = applet;
+ gw_applet->mateweather_info = NULL;
+ gw_applet->settings = mate_panel_applet_settings_new (applet, "org.mate.weather");
+
+ mateweather_applet_create(gw_applet);
+
+ mateweather_prefs_load(&gw_applet->mateweather_pref, gw_applet->settings);
+
+ mateweather_update(gw_applet);
+
+ return TRUE;
+}
+
+static gboolean mateweather_applet_factory(MatePanelApplet* applet, const gchar* iid, gpointer data)
+{
+ gboolean retval = FALSE;
+
+ retval = mateweather_applet_new(applet, iid, data);
+
+ return retval;
+}
+
+MATE_PANEL_APPLET_OUT_PROCESS_FACTORY("MateWeatherAppletFactory", PANEL_TYPE_APPLET, "mateweather", mateweather_applet_factory, NULL)