Added e_xml_get_integer_prop_by_name.

2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added
        e_xml_get_integer_prop_by_name.

        * e-util/Makefile.am: Added e-util.c.

        * e-util/e-util.h: Added e-util.c functions.

        * e-util/e-util.c: New file for compare functions

from mail:

2000-02-24  Christopher James Lahey  <clahey@helixcode.com>

        * message-list.c: Changed to match new e_table_simple interface.

svn path=/trunk/; revision=1931
This commit is contained in:
Christopher James Lahey
2000-02-25 04:28:14 +00:00
committed by Chris Lahey
parent 14bfde56c8
commit c2ffbbece7
13 changed files with 143 additions and 4 deletions

View File

@ -1,3 +1,14 @@
2000-02-24 Christopher James Lahey <clahey@helixcode.com>
* e-util/e-xml-utils.c, e-util/e-xml-utils.h: Added
e_xml_get_integer_prop_by_name.
* e-util/Makefile.am: Added e-util.c.
* e-util/e-util.h: Added e-util.c functions.
* e-util/e-util.c: New file for compare functions
2000-02-24 Dan Winship <danw@helixcode.com>
* acconfig.h:

View File

@ -14,6 +14,7 @@ libeutil_a_SOURCES = \
e-gui-utils.h \
e-setup.c \
e-setup.h \
e-util.c \
e-util.h \
e-xml-utils.c \
e-xml-utils.h

41
e-util/e-util.c Normal file
View File

@ -0,0 +1,41 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* e-xml-utils.c
* Copyright (C) 2000 Helix Code, Inc.
* Author: Chris Lahey <clahey@helixcode.com>
*
* 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 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 library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "e-util.h"
#include <glib.h>
int
g_str_compare(const void *x, const void *y)
{
return strcmp(x, y);
}
int
g_int_compare(const void *x, const void *y)
{
if ( GPOINTER_TO_INT(x) < GPOINTER_TO_INT(y) )
return -1;
else if ( GPOINTER_TO_INT(x) == GPOINTER_TO_INT(y) )
return 0;
else
return -1;
}

41
e-util/e-util.c-8611 Normal file
View File

@ -0,0 +1,41 @@
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* e-xml-utils.c
* Copyright (C) 2000 Helix Code, Inc.
* Author: Chris Lahey <clahey@helixcode.com>
*
* 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 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 library; if not, write to the
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "e-util.h"
#include <glib.h>
int
g_str_compare(const void *x, const void *y)
{
return strcmp(x, y);
}
int
g_int_compare(const void *x, const void *y)
{
if ( GPOINTER_TO_INT(x) < GPOINTER_TO_INT(y) )
return -1;
else if ( GPOINTER_TO_INT(x) == GPOINTER_TO_INT(y) )
return 0;
else
return -1;
}

View File

@ -29,4 +29,7 @@ typedef enum {
E_FOCUS_END
} EFocus;
int g_str_compare(const void *x, const void *y);
int g_int_compare(const void *x, const void *y);
#endif /* _E_UTIL_H_ */

View File

@ -29,4 +29,7 @@ typedef enum {
E_FOCUS_END
} EFocus;
int g_str_compare(const void *x, const void *y);
int g_int_compare(const void *x, const void *y);
#endif /* _E_UTIL_H_ */

View File

@ -34,3 +34,13 @@ xmlNode *e_xml_get_child_by_name(xmlNode *parent, xmlChar *child_name)
}
return NULL;
}
int
e_xml_get_integer_prop_by_name(xmlNode *parent, xmlChar *prop_name)
{
xmlChar *prop = xmlGetProp(parent, prop_name);
if (prop)
return atoi(prop);
else
return 0;
}

View File

@ -34,3 +34,13 @@ xmlNode *e_xml_get_child_by_name(xmlNode *parent, xmlChar *child_name)
}
return NULL;
}
int
e_xml_get_integer_prop_by_name(xmlNode *parent, xmlChar *prop_name)
{
xmlChar *prop = xmlGetProp(parent, prop_name);
if (prop)
return atoi(prop);
else
return 0;
}

View File

@ -26,5 +26,6 @@
#include <gnome.h>
#include <gnome-xml/tree.h>
xmlNode *e_xml_get_child_by_name(xmlNode *parent, xmlChar *child_name);
int e_xml_get_integer_prop_by_name(xmlNode *parent, xmlChar *prop_name);
#endif /* __E_XML_UTILS__ */

View File

@ -26,5 +26,6 @@
#include <gnome.h>
#include <gnome-xml/tree.h>
xmlNode *e_xml_get_child_by_name(xmlNode *parent, xmlChar *child_name);
int e_xml_get_integer_prop_by_name(xmlNode *parent, xmlChar *prop_name);
#endif /* __E_XML_UTILS__ */

View File

@ -1,3 +1,7 @@
2000-02-24 Christopher James Lahey <clahey@helixcode.com>
* message-list.c: Changed to match new e_table_simple interface.
2000-02-24 Dan Winship <danw@helixcode.com>
* message-list.c (message_list_set_folder): update for CamelFolder

View File

@ -126,6 +126,17 @@ ml_is_cell_editable (ETableModel *etm, int col, int row, void *data)
return FALSE;
}
static void *
ml_duplicate_value (ETableModel *etm, int col, const void *value, void *data)
{
return value;
}
static void
ml_free_value (ETableModel *etm, int col, void *value, void *data)
{
}
static void
ml_thaw (ETableModel *etm, void *data)
{
@ -312,7 +323,8 @@ message_list_init (GtkObject *object)
message_list->table_model = e_table_simple_new (
ml_col_count, ml_row_count, ml_value_at,
ml_set_value_at, ml_is_cell_editable, ml_thaw, message_list);
ml_set_value_at, ml_is_cell_editable, ml_duplicate_value, ml_free_value,
ml_thaw, message_list);
message_list_init_renderers (message_list);
message_list_init_header (message_list);

View File

@ -5,8 +5,8 @@
test model view stuff. Changed the test to not have as many
extra, useless, columns.
* test-cols.c, test-check.c: Added duplicate_value and add_value. Use the new
compare functions.
* test-cols.c, test-check.c: Added duplicate_value and add_value.
Use the new compare functions.
* e-table.c, e-table.h: Use all the new features of e-table-groups
(sorting and grouping). Handle on the fly reorganization of
@ -19,7 +19,8 @@
* e-table-subset-variable.c, e-table-subset-variable.h:
Virtualized the add and remove commands so that
e_table_sorted_variable could override the add command to do sorting.
e_table_sorted_variable could override the add command to do
sorting.
* e-table-sorted.c: Fixed this to inherit properly from
ETableSubset.