summaryrefslogtreecommitdiff
path: root/libmateweather/mateweather-mateconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'libmateweather/mateweather-mateconf.c')
-rw-r--r--libmateweather/mateweather-mateconf.c310
1 files changed, 0 insertions, 310 deletions
diff --git a/libmateweather/mateweather-mateconf.c b/libmateweather/mateweather-mateconf.c
deleted file mode 100644
index f8f6f1b..0000000
--- a/libmateweather/mateweather-mateconf.c
+++ /dev/null
@@ -1,310 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 4 -*- */
-/*
- * mateweather-mateconf.c: MateConf interaction methods for mateweather.
- *
- * Copyright (C) 2005 Philip Langdale, Papadimitriou Spiros
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this library; if not, see
- * <http://www.gnu.org/licenses/>.
- *
- * Authors:
- * Philip Langdale <[email protected]>
- * Papadimitriou Spiros <[email protected]>
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <string.h>
-
-#define MATEWEATHER_I_KNOW_THIS_IS_UNSTABLE
-#include "mateweather-mateconf.h"
-#include "weather-priv.h"
-
-struct _MateWeatherMateConf
-{
- MateConfClient *mateconf;
- char *prefix;
-};
-
-
-MateWeatherMateConf *
-mateweather_mateconf_new (const char *prefix)
-{
- MateWeatherMateConf *ctx = g_new0 (MateWeatherMateConf, 1);
- ctx->mateconf = mateconf_client_get_default ();
- ctx->prefix = g_strdup (prefix);
-
- return ctx;
-}
-
-
-void
-mateweather_mateconf_free (MateWeatherMateConf *ctx)
-{
- if (!ctx)
- return;
-
- g_object_unref (ctx->mateconf);
- g_free (ctx->prefix);
- g_free (ctx);
-}
-
-
-MateConfClient *
-mateweather_mateconf_get_client (MateWeatherMateConf *ctx)
-{
- g_return_val_if_fail (ctx != NULL, NULL);
- return ctx->mateconf;
-}
-
-
-gchar *
-mateweather_mateconf_get_full_key (MateWeatherMateConf *ctx,
- const gchar *key)
-{
- g_return_val_if_fail (ctx != NULL, NULL);
- g_return_val_if_fail (key != NULL, NULL);
-
- return g_strdup_printf ("%s/%s", ctx->prefix, key);
-}
-
-void
-mateweather_mateconf_set_bool (MateWeatherMateConf *ctx,
- const gchar *key,
- gboolean the_bool,
- GError **opt_error)
-{
- gchar *full_key;
-
- g_return_if_fail (ctx != NULL);
- g_return_if_fail (key != NULL);
- g_return_if_fail (opt_error == NULL || *opt_error == NULL);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- mateconf_client_set_bool (ctx->mateconf, full_key, the_bool, opt_error);
- g_free (full_key);
-}
-
-void
-mateweather_mateconf_set_int (MateWeatherMateConf *ctx,
- const gchar *key,
- gint the_int,
- GError **opt_error)
-{
- gchar *full_key;
-
- g_return_if_fail (ctx != NULL);
- g_return_if_fail (key != NULL);
- g_return_if_fail (opt_error == NULL || *opt_error == NULL);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- mateconf_client_set_int (ctx->mateconf, full_key, the_int, opt_error);
- g_free (full_key);
-}
-
-void
-mateweather_mateconf_set_string (MateWeatherMateConf *ctx,
- const gchar *key,
- const gchar *the_string,
- GError **opt_error)
-{
- gchar *full_key;
-
- g_return_if_fail (ctx != NULL);
- g_return_if_fail (key != NULL);
- g_return_if_fail (opt_error == NULL || *opt_error == NULL);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- mateconf_client_set_string (ctx->mateconf, full_key, the_string, opt_error);
- g_free (full_key);
-}
-
-gboolean
-mateweather_mateconf_get_bool (MateWeatherMateConf *ctx,
- const gchar *key,
- GError **opt_error)
-{
- gchar *full_key;
- gboolean ret;
-
- g_return_val_if_fail (ctx != NULL, FALSE);
- g_return_val_if_fail (key != NULL, FALSE);
- g_return_val_if_fail (opt_error == NULL || *opt_error == NULL, FALSE);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- ret = mateconf_client_get_bool (ctx->mateconf, full_key, opt_error);
- g_free (full_key);
- return ret;
-}
-
-gint
-mateweather_mateconf_get_int (MateWeatherMateConf *ctx,
- const gchar *key,
- GError **opt_error)
-{
- gchar *full_key;
- gint ret;
-
- g_return_val_if_fail (ctx != NULL, 0);
- g_return_val_if_fail (key != NULL, 0);
- g_return_val_if_fail (opt_error == NULL || *opt_error == NULL, 0);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- ret = mateconf_client_get_int (ctx->mateconf, full_key, opt_error);
- g_free (full_key);
- return ret;
-}
-
-gchar *
-mateweather_mateconf_get_string (MateWeatherMateConf *ctx,
- const gchar *key,
- GError **opt_error)
-{
- gchar *full_key;
- gchar *ret;
-
- g_return_val_if_fail (ctx != NULL, NULL);
- g_return_val_if_fail (key != NULL, NULL);
- g_return_val_if_fail (opt_error == NULL || *opt_error == NULL, NULL);
-
- full_key = mateweather_mateconf_get_full_key (ctx, key);
- ret = mateconf_client_get_string (ctx->mateconf, full_key, opt_error);
- g_free (full_key);
- return ret;
-}
-
-
-WeatherLocation *
-mateweather_mateconf_get_location (MateWeatherMateConf *ctx)
-{
- WeatherLocation *location;
- gchar *name, *code, *zone, *radar, *coordinates;
-
- g_return_val_if_fail (ctx != NULL, NULL);
-
- name = mateweather_mateconf_get_string (ctx, "location4", NULL);
- if (!name)
- {
- /* TRANSLATOR: Change this to the default location name,
- * used when you first start the Weather Applet. This is
- * the common localised name that corresponds to
- * the location code (DEFAULT_CODE) you will put on the next message
- * For example, for the Greek locale, we set this to "Athens", the
- * capital city and we write it in Greek. It's important to translate
- * this name.
- *
- * If you do not require a DEFAULT_LOCATION, set this to
- * "DEFAULT_LOCATION".
- */
- if (strcmp ("DEFAULT_LOCATION", _("DEFAULT_LOCATION")))
- name = g_strdup (_("DEFAULT_LOCATION"));
- else
- name = g_strdup ("Pittsburgh");
- }
-
- code = mateweather_mateconf_get_string (ctx, "location1", NULL);
- if (!code)
- {
- /* TRANSLATOR: Change this to the code of your default location that
- * corresponds to the DEFAULT_LOCATION name you put above. This is
- * normally a four-letter (ICAO) code and can be found in
- * http://git.gnome.org/cgit/libmateweather/plain/data/Locations.xml.in
- * NB. The web page is over 1.7MB in size.
- * Pick a default location like a capital city so that it would be ok
- * for more of your users. For example, for Greek, we use "LGAV" for
- * the capital city, Athens.
- *
- * If you do not require a DEFAULT_CODE, set this to "DEFAULT_CODE".
- */
- if (strcmp ("DEFAULT_CODE", _("DEFAULT_CODE")))
- code = g_strdup (_("DEFAULT_CODE"));
- else
- code = g_strdup ("KPIT");
- }
-
- zone = mateweather_mateconf_get_string (ctx, "location2", NULL);
- if (!zone)
- {
- /* TRANSLATOR: Change this to the zone of your default location that
- * corresponds to the DEFAULT_LOCATION and DEFAULT_CODE you put above.
- * Normally, US and Canada locations have zones while the rest do not.
- * Check
- * http://git.gnome.org/cgit/libmateweather/plain/data/Locations.xml.in
- * as any zone you put here must also be present in the Locations.xml
- * file.
- *
- * If your default location does not have a zone, set this to
- * "DEFAULT_ZONE".
- */
- if (strcmp ("DEFAULT_ZONE", _("DEFAULT_ZONE")))
- zone = g_strdup (_("DEFAULT_ZONE" ));
- else
- zone = g_strdup ("PAZ021");
- }
-
- radar = mateweather_mateconf_get_string (ctx, "location3", NULL);
- if (!radar)
- {
- /* TRANSLATOR: Change this to the radar of your default location that
- * corresponds to the DEFAULT_LOCATION and DEFAULT_CODE you put above.
- * Normally, US and Canada locations have radar names while the rest do
- * not. Check
- * http://git.gnome.org/cgit/libmateweather/plain/data/Locations.xml.in
- * as any radar you put here must also be present in the Locations.xml
- * file.
- *
- * If your default location does not have a radar, set this to " "
- * (or space).
- * If you do not have a default location, set this to DEFAULT_RADAR.
- */
- if (strcmp ("DEFAULT_RADAR", _("DEFAULT_RADAR")))
- radar = g_strdup (_("DEFAULT_RADAR"));
- else
- radar = g_strdup ("pit");
- }
-
- coordinates = mateweather_mateconf_get_string (ctx, "coordinates", NULL);
- if (!coordinates)
- {
- /* TRANSLATOR: Change this to the coordinates of your default location
- * that corresponds to the DEFAULT_LOCATION and DEFAULT_CODE you put
- * above. Check
- * http://git.gnome.org/cgit/libmateweather/plain/data/Locations.xml.in
- * as any coordinates you put here must also be present in the
- * Locations.xml file.
- *
- * If your default location does not have known coordinates, set this
- * to " " (or space).
- * If you do not have a default location, set this to
- * DEFAULT_COORDINATES.
- */
- if (strcmp ("DEFAULT_COORDINATES", _("DEFAULT_COORDINATES")))
- coordinates = g_strdup (_("DEFAULT_COORDINATES"));
- else
- coordinates = g_strdup ("40-32N 080-13W");
- }
-
- location = weather_location_new (name, code, zone, radar, coordinates,
- NULL, NULL);
-
- g_free (name);
- g_free (code);
- g_free (zone);
- g_free (radar);
- g_free (coordinates);
-
- return location;
-}