diff options
Diffstat (limited to 'src/empathy-debug-dialog.c')
-rw-r--r-- | src/empathy-debug-dialog.c | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/src/empathy-debug-dialog.c b/src/empathy-debug-dialog.c new file mode 100644 index 000000000..6a8755eee --- /dev/null +++ b/src/empathy-debug-dialog.c @@ -0,0 +1,130 @@ +/* +* Copyright (C) 2009 Collabora Ltd. +* +* This library is free software; you can redistribute it and/or +* modify it under the terms of the GNU Lesser General Public +* License as published by the Free Software Foundation; either +* version 2.1 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 +* Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public +* License along with this library; if not, write to the Free Software +* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +* +* Authors: Jonny Lamb <jonny.lamb@collabora.co.uk> +*/ + +#include "config.h" + +#include <glib/gi18n.h> +#include <gtk/gtk.h> + +#include <libempathy/empathy-utils.h> + +#include "empathy-debug-dialog.h" + +G_DEFINE_TYPE (EmpathyDebugDialog, empathy_debug_dialog, + GTK_TYPE_DIALOG) + +enum +{ + PROP_0, +}; + +#define GET_PRIV(obj) EMPATHY_GET_PRIV (obj, EmpathyDebugDialog) +typedef struct +{ + gboolean dispose_run; +} EmpathyDebugDialogPriv; + +static GObject * +debug_dialog_constructor (GType type, + guint n_construct_params, + GObjectConstructParam *construct_params) +{ + GObject *object; + EmpathyDebugDialogPriv *priv; + + object = G_OBJECT_CLASS (empathy_debug_dialog_parent_class)->constructor + (type, n_construct_params, construct_params); + priv = GET_PRIV (object); + + return object; +} + +static void +empathy_debug_dialog_init (EmpathyDebugDialog *empathy_debug_dialog) +{ + EmpathyDebugDialogPriv *priv = + G_TYPE_INSTANCE_GET_PRIVATE (empathy_debug_dialog, + EMPATHY_TYPE_DEBUG_DIALOG, EmpathyDebugDialogPriv); + + empathy_debug_dialog->priv = priv; + + priv->dispose_run = FALSE; +} + +static void +debug_dialog_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + switch (prop_id) + { + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +debug_dialog_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + switch (prop_id) + { + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +debug_dialog_dispose (GObject *object) +{ + EmpathyDebugDialog *selector = EMPATHY_DEBUG_DIALOG (object); + EmpathyDebugDialogPriv *priv = GET_PRIV (selector); + + if (priv->dispose_run) + return; + + priv->dispose_run = TRUE; + + (G_OBJECT_CLASS (empathy_debug_dialog_parent_class)->dispose) (object); +} + +static void +empathy_debug_dialog_class_init (EmpathyDebugDialogClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + object_class->constructor = debug_dialog_constructor; + object_class->dispose = debug_dialog_dispose; + object_class->set_property = debug_dialog_set_property; + object_class->get_property = debug_dialog_get_property; + g_type_class_add_private (klass, sizeof (EmpathyDebugDialogPriv)); +} + +/* public methods */ + +GtkWidget * +empathy_debug_dialog_new (void) +{ + return GTK_WIDGET (g_object_new (EMPATHY_TYPE_DEBUG_DIALOG, NULL)); +} |