[Goodies-commits] r6045 - xfburn/trunk/xfburn
David Mohr
squisher at xfce.org
Mon Nov 10 04:48:58 CET 2008
Author: squisher
Date: 2008-11-10 03:48:57 +0000 (Mon, 10 Nov 2008)
New Revision: 6045
Modified:
xfburn/trunk/xfburn/xfburn-audio-disc-usage.c
xfburn/trunk/xfburn/xfburn-data-disc-usage.c
xfburn/trunk/xfburn/xfburn-disc-usage.c
Log:
Fixing bug where audio and data disc usage settings would mess each other up
Modified: xfburn/trunk/xfburn/xfburn-audio-disc-usage.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-audio-disc-usage.c 2008-11-09 23:27:19 UTC (rev 6044)
+++ xfburn/trunk/xfburn/xfburn-audio-disc-usage.c 2008-11-10 03:48:57 UTC (rev 6045)
@@ -35,7 +35,6 @@
/* prototypes */
static void xfburn_audio_disc_usage_class_init (XfburnAudioDiscUsageClass *);
-static void xfburn_audio_disc_usage_init (XfburnAudioDiscUsage *);
static gboolean can_burn (XfburnDiscUsage *disc_usage);
static void xfburn_audio_disc_usage_update_size (XfburnDiscUsage * disc_usage);
@@ -78,7 +77,7 @@
NULL,
sizeof (XfburnAudioDiscUsage),
0,
- (GInstanceInitFunc) xfburn_audio_disc_usage_init,
+ NULL,
NULL
};
@@ -91,30 +90,19 @@
static void
xfburn_audio_disc_usage_class_init (XfburnAudioDiscUsageClass * klass)
{
- GObjectClass *gobject_class;
XfburnDiscUsageClass *pklass;
parent_class = g_type_class_peek_parent (klass);
- gobject_class = G_OBJECT_CLASS (klass);
-
/* override virtual methods */
pklass = XFBURN_DISC_USAGE_CLASS(klass);
- pklass->labels = parent_class->labels = audiodiscsizes;
- pklass->num_labels = parent_class->num_labels = G_N_ELEMENTS (audiodiscsizes);
- //DBG ("labels @ %p", pklass);
- //DBG ("num_labels @ %p = %d", &(pklass->num_labels), G_N_ELEMENTS (audiodiscsizes));
- pklass->update_size = parent_class->update_size = xfburn_audio_disc_usage_update_size;
- pklass->can_burn = parent_class->can_burn = can_burn;
+ pklass->labels = audiodiscsizes;
+ pklass->num_labels = G_N_ELEMENTS (audiodiscsizes);
+ pklass->update_size = xfburn_audio_disc_usage_update_size;
+ pklass->can_burn = can_burn;
}
-static void
-xfburn_audio_disc_usage_init (XfburnAudioDiscUsage * disc_usage)
-{
- gtk_progress_bar_set_text (GTK_PROGRESS_BAR ( XFBURN_DISC_USAGE (disc_usage)->progress_bar), "0 B");
-}
-
/* internals */
static void
xfburn_audio_disc_usage_update_size (XfburnDiscUsage * disc_usage)
Modified: xfburn/trunk/xfburn/xfburn-data-disc-usage.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-data-disc-usage.c 2008-11-09 23:27:19 UTC (rev 6044)
+++ xfburn/trunk/xfburn/xfburn-data-disc-usage.c 2008-11-10 03:48:57 UTC (rev 6045)
@@ -35,7 +35,6 @@
/* prototypes */
static void xfburn_data_disc_usage_class_init (XfburnDataDiscUsageClass *);
-static void xfburn_data_disc_usage_init (XfburnDataDiscUsage *);
static gboolean can_burn (XfburnDiscUsage *disc_usage);
static void xfburn_data_disc_usage_update_size (XfburnDiscUsage * disc_usage);
@@ -82,7 +81,7 @@
NULL,
sizeof (XfburnDataDiscUsage),
0,
- (GInstanceInitFunc) xfburn_data_disc_usage_init,
+ NULL,
NULL
};
@@ -95,28 +94,19 @@
static void
xfburn_data_disc_usage_class_init (XfburnDataDiscUsageClass * klass)
{
- GObjectClass *gobject_class;
XfburnDiscUsageClass *pklass;
parent_class = g_type_class_peek_parent (klass);
- gobject_class = G_OBJECT_CLASS (klass);
-
/* override virtual methods */
pklass = XFBURN_DISC_USAGE_CLASS(klass);
- pklass->labels = parent_class->labels = datadiscsizes;
- pklass->num_labels = G_N_ELEMENTS (datadiscsizes);
- pklass->update_size = parent_class->update_size = xfburn_data_disc_usage_update_size;
- pklass->can_burn = parent_class->can_burn = can_burn;
+ pklass->labels = datadiscsizes;
+ pklass->num_labels = G_N_ELEMENTS (datadiscsizes);
+ pklass->update_size = xfburn_data_disc_usage_update_size;
+ pklass->can_burn = can_burn;
}
-static void
-xfburn_data_disc_usage_init (XfburnDataDiscUsage * disc_usage)
-{
- gtk_progress_bar_set_text (GTK_PROGRESS_BAR ( XFBURN_DISC_USAGE (disc_usage)->progress_bar), "0 B");
-}
-
/* internals */
static void
xfburn_data_disc_usage_update_size (XfburnDiscUsage * disc_usage)
Modified: xfburn/trunk/xfburn/xfburn-disc-usage.c
===================================================================
--- xfburn/trunk/xfburn/xfburn-disc-usage.c 2008-11-09 23:27:19 UTC (rev 6044)
+++ xfburn/trunk/xfburn/xfburn-disc-usage.c 2008-11-10 03:48:57 UTC (rev 6045)
@@ -1,6 +1,7 @@
/* $Id$ */
/*
* Copyright (c) 2005-2006 Jean-François Wauthy (pollux at xfce.org)
+ * Copyright (c) 2008 David Mohr <david at mcbf.net>
*
* 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
@@ -17,6 +18,13 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+/*
+ * This is an instantiable base class for the disc usage.
+ *
+ * Every composition type should extend it, but for testing it can be used
+ * as is.
+ */
+
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif /* !HAVE_CONFIG_H */
@@ -35,7 +43,8 @@
/* prototypes */
static void xfburn_disc_usage_class_init (XfburnDiscUsageClass *);
-static void xfburn_disc_usage_init (XfburnDiscUsage *);
+//static void xfburn_disc_usage_init (XfburnDiscUsage *);
+static GObject * xfburn_disc_usage_constructor (GType type, guint n_construct_properties, GObjectConstructParam *construct_properties);
static void update_size_default (XfburnDiscUsage *du);
static gboolean can_burn_default (XfburnDiscUsage *du);
@@ -48,21 +57,22 @@
#define DEFAULT_DISK_SIZE_LABEL 2
#define LAST_CD_LABEL 4
+/* the sizes here are pretty arbitrary and are only for testing */
XfburnDiscLabels testdiscsizes[] = {
{
- 1, "200MB CD"},
+ 1, "size 1"},
{
- 100, "650MB CD"},
+ 100, "size 100"},
{
- 10000, "700MB CD"},
+ 10000, "size 10000"},
{
- 1000000, "800MB CD"},
+ 1000000, "size 1m"},
{
- 100000000, "900MB CD"},
+ 100000000, "size 100m"},
{
- G_GINT64_CONSTANT (10000000000), "4.3GB DVD"},
+ G_GINT64_CONSTANT (10000000000), "10^10"},
{
- G_GINT64_CONSTANT (1000000000000), "7.9GB DVD"},
+ G_GINT64_CONSTANT (1000000000000), "10^12"},
};
/* signals */
@@ -94,7 +104,7 @@
NULL,
sizeof (XfburnDiscUsage),
0,
- (GInstanceInitFunc) xfburn_disc_usage_init,
+ NULL, //(GInstanceInitFunc) xfburn_disc_usage_init,
NULL
};
@@ -112,6 +122,7 @@
parent_class = g_type_class_peek_parent (klass);
gobject_class = G_OBJECT_CLASS (klass);
+ gobject_class->constructor = xfburn_disc_usage_constructor;
signals[BEGIN_BURN] = g_signal_new ("begin-burn", G_TYPE_FROM_CLASS (gobject_class), G_SIGNAL_ACTION,
G_STRUCT_OFFSET (XfburnDiscUsageClass, begin_burn),
@@ -124,12 +135,18 @@
klass->num_labels = G_N_ELEMENTS (testdiscsizes);
}
-static void
-xfburn_disc_usage_init (XfburnDiscUsage * disc_usage)
+static GObject *
+xfburn_disc_usage_constructor (GType type, guint n_construct_properties, GObjectConstructParam *construct_properties)
{
- XfburnDiscUsageClass *class = XFBURN_DISC_USAGE_GET_CLASS (disc_usage);
+ GObject *gobj;
+ XfburnDiscUsage *disc_usage;
+ XfburnDiscUsageClass *class;
int i;
+ gobj = G_OBJECT_CLASS (parent_class)->constructor (type, n_construct_properties, construct_properties);
+ disc_usage = XFBURN_DISC_USAGE (gobj);
+ class = XFBURN_DISC_USAGE_GET_CLASS (disc_usage);
+
disc_usage->size = 0;
disc_usage->progress_bar = gtk_progress_bar_new ();
@@ -153,6 +170,9 @@
g_signal_connect (G_OBJECT (disc_usage->combo), "changed", G_CALLBACK (cb_combo_changed), disc_usage);
+ class->update_size (disc_usage);
+
+ return gobj;
}
/* internals */
More information about the Goodies-commits
mailing list