summaryrefslogtreecommitdiff
path: root/plugins/clock/clock-digital.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/clock/clock-digital.c')
-rw-r--r--plugins/clock/clock-digital.c200
1 files changed, 0 insertions, 200 deletions
diff --git a/plugins/clock/clock-digital.c b/plugins/clock/clock-digital.c
deleted file mode 100644
index 8cf6258d..00000000
--- a/plugins/clock/clock-digital.c
+++ /dev/null
@@ -1,200 +0,0 @@
-/* $Id$ */
-/*
- * Copyright (c) 2007 Nick Schermer <nick@xfce.org>
- *
- * This program 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 program 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 program; if not, write to the Free Software Foundation, Inc., 59 Temple
- * Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#ifdef HAVE_TIME_H
-#include <time.h>
-#endif
-
-#include <gtk/gtk.h>
-
-#include "clock.h"
-#include "clock-digital.h"
-
-
-
-/* class functions */
-static void xfce_clock_digital_finalize (GObject *object);
-static void xfce_clock_digital_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec);
-static void xfce_clock_digital_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec);
-
-
-
-enum
-{
- PROP_0,
- PROP_DIGITAL_FORMAT
-};
-
-struct _XfceClockDigitalClass
-{
- GtkLabelClass __parent__;
-};
-
-struct _XfceClockDigital
-{
- GtkLabel __parent__;
-
- /* current clock format */
- gchar *format;
-};
-
-
-
-G_DEFINE_TYPE (XfceClockDigital, xfce_clock_digital, GTK_TYPE_LABEL);
-
-
-
-static void
-xfce_clock_digital_class_init (XfceClockDigitalClass *klass)
-{
- GObjectClass *gobject_class;
-
- gobject_class = G_OBJECT_CLASS (klass);
- gobject_class->finalize = xfce_clock_digital_finalize;
- gobject_class->set_property = xfce_clock_digital_set_property;
- gobject_class->get_property = xfce_clock_digital_get_property;
-
- /**
- * Digital clock format
- **/
- g_object_class_install_property (gobject_class,
- PROP_DIGITAL_FORMAT,
- g_param_spec_string ("digital-format", "digital-format", "digital-format",
- NULL, PANEL_PARAM_READWRITE));
-}
-
-
-
-static void
-xfce_clock_digital_init (XfceClockDigital *digital)
-{
- /* init */
- digital->format = NULL;
-
- /* center text */
- gtk_label_set_justify (GTK_LABEL (digital), GTK_JUSTIFY_CENTER);
-}
-
-
-
-static void
-xfce_clock_digital_finalize (GObject *object)
-{
- XfceClockDigital *digital = XFCE_CLOCK_DIGITAL (object);
-
- /* cleanup */
- g_free (digital->format);
-
- (*G_OBJECT_CLASS (xfce_clock_digital_parent_class)->finalize) (object);
-}
-
-
-
-static void
-xfce_clock_digital_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- XfceClockDigital *digital = XFCE_CLOCK_DIGITAL (object);
-
- switch (prop_id)
- {
- case PROP_DIGITAL_FORMAT:
- /* cleanup */
- g_free (digital->format);
-
- /* set new format */
- digital->format = g_value_dup_string (value);
-
- /* update the widget */
- xfce_clock_digital_update (digital);
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-
-
-static void
-xfce_clock_digital_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- XfceClockDigital *digital = XFCE_CLOCK_DIGITAL (object);
-
- switch (prop_id)
- {
- case PROP_DIGITAL_FORMAT:
- g_value_set_string (value, digital->format);
- break;
-
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
- break;
- }
-}
-
-
-
-GtkWidget *
-xfce_clock_digital_new (void)
-{
- return g_object_new (XFCE_CLOCK_TYPE_DIGITAL, NULL);
-}
-
-
-
-gboolean
-xfce_clock_digital_update (gpointer user_data)
-{
- XfceClockDigital *digital = XFCE_CLOCK_DIGITAL (user_data);
- gchar *string;
- struct tm tm;
-
- g_return_val_if_fail (XFCE_CLOCK_IS_DIGITAL (digital), FALSE);
-
- /* get the local time */
- xfce_clock_util_get_localtime (&tm);
-
- /* get the string */
- string = xfce_clock_util_strdup_strftime (digital->format ? digital->format : DEFAULT_DIGITAL_FORMAT, &tm);
-
- /* set the new label */
- gtk_label_set_markup (GTK_LABEL (digital), string);
-
- /* cleanup */
- g_free (string);
-
- return TRUE;
-}