/*
- * (GLABELS) Label and Business Card Creation program for GNOME
+ * merge.c
+ * Copyright (C) 2001-2009 Jim Evins <evins@snaught.com>.
*
- * merge.c: document merge module
+ * This file is part of gLabels.
*
- * Copyright (C) 2001-2002 Jim Evins <evins@snaught.com>.
- *
- * This program is free software; you can redistribute it and/or modify
+ * gLabels 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
+ * the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
- * This program is distributed in the hope that it will be useful,
+ * gLabels 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
+ * along with gLabels. If not, see <http://www.gnu.org/licenses/>.
*/
+
#include <config.h>
-#include <gnome.h>
+#include "merge.h"
+
+#include <glib/gi18n.h>
#include <gobject/gvaluecollector.h>
#include <string.h>
-#include "merge.h"
+#include <libglabels/libglabels.h>
#include "debug.h"
/* Private globals. */
/*========================================================*/
-static GObjectClass *parent_class = NULL;
-
static GList *backends = NULL;
/*========================================================*/
/* Private function prototypes. */
/*========================================================*/
-static void gl_merge_class_init (glMergeClass *klass);
-static void gl_merge_instance_init (glMerge *object);
static void gl_merge_finalize (GObject *object);
static void merge_open (glMerge *merge);
class = g_type_class_ref (type);
if (class == NULL) {
- g_warning ("%s: unknown object type %d",
- G_STRLOC, type);
+ g_message ("%s: unknown object type %d",
+ G_STRLOC, (int)type);
break;
}
pspec = g_object_class_find_property (class, pname);
if (pspec == NULL) {
- g_warning ("%s: object class `%s' has no property named `%s'",
+ g_message ("%s: object class `%s' has no property named `%s'",
G_STRLOC, g_type_name (type), pname);
break;
}
g_value_init (¶ms[n_params].value, pspec->value_type);
G_VALUE_COLLECT (¶ms[n_params].value, args, 0, &error);
if (error) {
- g_warning ("%s: %s", G_STRLOC, error);
+ g_message ("%s: %s", G_STRLOC, error);
g_free (error);
break;
}
GList *p;
Backend *backend;
- if (g_strcasecmp(description, _("None")) == 0) {
+ if (lgl_str_utf8_casecmp(description, _("None")) == 0) {
return g_strdup("None");
}
for ( p=backends; p!=NULL; p=p->next) {
backend = (Backend *)p->data;
- if (g_strcasecmp(description, backend->description) == 0) {
+ if (lgl_str_utf8_casecmp(description, backend->description) == 0) {
return g_strdup(backend->name);
}
}
/*****************************************************************************/
/* Boilerplate object stuff. */
/*****************************************************************************/
-GType
-gl_merge_get_type (void)
-{
- static GType type = 0;
-
- if (!type) {
- GTypeInfo info = {
- sizeof (glMergeClass),
- NULL,
- NULL,
- (GClassInitFunc) gl_merge_class_init,
- NULL,
- NULL,
- sizeof (glMerge),
- 0,
- (GInstanceInitFunc) gl_merge_instance_init,
- };
-
- type = g_type_register_static (G_TYPE_OBJECT,
- "glMerge", &info, 0);
- }
-
- return type;
-}
+G_DEFINE_TYPE (glMerge, gl_merge, G_TYPE_OBJECT);
static void
-gl_merge_class_init (glMergeClass *klass)
+gl_merge_class_init (glMergeClass *class)
{
- GObjectClass *object_class = (GObjectClass *) klass;
+ GObjectClass *object_class = G_OBJECT_CLASS (class);
gl_debug (DEBUG_MERGE, "START");
- parent_class = g_type_class_peek_parent (klass);
+ gl_merge_parent_class = g_type_class_peek_parent (class);
object_class->finalize = gl_merge_finalize;
}
static void
-gl_merge_instance_init (glMerge *merge)
+gl_merge_init (glMerge *merge)
{
gl_debug (DEBUG_MERGE, "START");
- merge->private = g_new0 (glMergePrivate, 1);
+ merge->priv = g_new0 (glMergePrivate, 1);
gl_debug (DEBUG_MERGE, "END");
}
static void
gl_merge_finalize (GObject *object)
{
+ glMerge *merge = GL_MERGE (object);
+
gl_debug (DEBUG_MERGE, "START");
g_return_if_fail (object && GL_IS_MERGE (object));
- merge_free_record_list (&GL_MERGE(object)->private->record_list);
- g_free (GL_MERGE(object)->private->name);
- g_free (GL_MERGE(object)->private->description);
- g_free (GL_MERGE(object)->private->src);
- g_free (GL_MERGE(object)->private);
+ merge_free_record_list (&merge->priv->record_list);
+ g_free (merge->priv->name);
+ g_free (merge->priv->description);
+ g_free (merge->priv->src);
+ g_free (merge->priv);
- G_OBJECT_CLASS (parent_class)->finalize (object);
+ G_OBJECT_CLASS (gl_merge_parent_class)->finalize (object);
gl_debug (DEBUG_MERGE, "END");
}
backend->n_params,
backend->params));
- merge->private->name = g_strdup (name);
- merge->private->description = g_strdup (backend->description);
- merge->private->src_type = backend->src_type;
+ merge->priv->name = g_strdup (name);
+ merge->priv->description = g_strdup (backend->description);
+ merge->priv->src_type = backend->src_type;
break;
}
}
if ( (merge == NULL) && (g_strcasecmp (name, "None") != 0)) {
- g_warning ("Unknown merge backend \"%s\"", name);
+ g_message ("Unknown merge backend \"%s\"", name);
}
gl_debug (DEBUG_MERGE, "END");
g_return_val_if_fail (GL_IS_MERGE (src_merge), NULL);
dst_merge = g_object_new (G_OBJECT_TYPE(src_merge), NULL);
- dst_merge->private->name = g_strdup (src_merge->private->name);
- dst_merge->private->description = g_strdup (src_merge->private->description);
- dst_merge->private->src = g_strdup (src_merge->private->src);
- dst_merge->private->src_type = src_merge->private->src_type;
- dst_merge->private->record_list
- = merge_dup_record_list (src_merge->private->record_list);
+ dst_merge->priv->name = g_strdup (src_merge->priv->name);
+ dst_merge->priv->description = g_strdup (src_merge->priv->description);
+ dst_merge->priv->src = g_strdup (src_merge->priv->src);
+ dst_merge->priv->src_type = src_merge->priv->src_type;
+ dst_merge->priv->record_list
+ = merge_dup_record_list (src_merge->priv->record_list);
if ( GL_MERGE_GET_CLASS(src_merge)->copy != NULL ) {
g_return_val_if_fail (GL_IS_MERGE (merge), g_strdup("None"));
- return g_strdup(merge->private->name);
+ return g_strdup(merge->priv->name);
}
/*****************************************************************************/
g_return_val_if_fail (GL_IS_MERGE (merge), g_strdup(_("None")));
- return g_strdup(merge->private->description);
+ return g_strdup(merge->priv->description);
}
/*****************************************************************************/
g_return_val_if_fail (GL_IS_MERGE (merge), GL_MERGE_SRC_IS_FIXED);
- return merge->private->src_type;
+ return merge->priv->src_type;
}
/*****************************************************************************/
gl_debug (DEBUG_MERGE, "START");
- g_return_if_fail (merge && GL_IS_MERGE (merge));
+ if (merge == NULL)
+ {
+ gl_debug (DEBUG_MERGE, "END (NULL)");
+ return;
+ }
+
+ g_return_if_fail (GL_IS_MERGE (merge));
- if ( src == NULL) {
+ if ( src == NULL)
+ {
- if ( merge->private->src != NULL ) {
- g_free (merge->private->src);
+ if ( merge->priv->src != NULL )
+ {
+ g_free (merge->priv->src);
}
- merge->private->src = NULL;
- merge_free_record_list (&merge->private->record_list);
+ merge->priv->src = NULL;
+ merge_free_record_list (&merge->priv->record_list);
- } else {
+ }
+ else
+ {
- if ( merge->private->src != NULL ) {
- g_free(merge->private->src);
+ if ( merge->priv->src != NULL )
+ {
+ g_free(merge->priv->src);
}
- merge->private->src = g_strdup (src);
+ merge->priv->src = g_strdup (src);
- merge_free_record_list (&merge->private->record_list);
+ merge_free_record_list (&merge->priv->record_list);
merge_open (merge);
- while ( (record = merge_get_record (merge)) != NULL ) {
+ while ( (record = merge_get_record (merge)) != NULL )
+ {
record_list = g_list_append( record_list, record );
}
merge_close (merge);
- merge->private->record_list = record_list;
+ merge->priv->record_list = record_list;
}
g_return_val_if_fail (GL_IS_MERGE (merge), NULL);
- return g_strdup(merge->private->src);
+ return g_strdup(merge->priv->src);
}
/*****************************************************************************/
gl_debug (DEBUG_MERGE, "START");
- if ( (record != NULL) && record->select_flag ) {
+ if ( (record != NULL) ) {
for (p = record->field_list; p != NULL; p = p->next) {
field = (glMergeField *) p->data;
gl_debug (DEBUG_MERGE, "");
if ( merge != NULL ) {
- return merge->private->record_list;
+ return merge->priv->record_list;
} else {
return NULL;
}
gl_debug (DEBUG_MERGE, "START");
count = 0;
- for ( p=merge->private->record_list; p!=NULL; p=p->next ) {
+ for ( p=merge->priv->record_list; p!=NULL; p=p->next ) {
record = (glMergeRecord *)p->data;
if ( record->select_flag ) count ++;
}
+
+/*
+ * Local Variables: -- emacs
+ * mode: C -- emacs
+ * c-basic-offset: 8 -- emacs
+ * tab-width: 8 -- emacs
+ * indent-tabs-mode: nil -- emacs
+ * End: -- emacs
+ */