From da0a3b24e73938d164ced3fb15341650e120203e Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Mon, 29 Jan 2001 11:39:22 +0000 Subject: Added e-cell-number.lo 2001-01-29 Christopher James Lahey * gal/Makefile.am (libgal_la_LIBADD): Added e-cell-number.lo From gal/e-table/Changelog: 2001-01-29 Christopher James Lahey * Makefile.am: Added e-cell-number.c and e-cell-number.h. * e-cell-number.c, e-cell-number.h: A new cell for rendering numbers. * e-table-extras.c (ete_init): Added a default number cell. Made the default size cell right aligned. svn path=/trunk/; revision=7889 --- widgets/table/e-cell-number.c | 70 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 widgets/table/e-cell-number.c (limited to 'widgets/table/e-cell-number.c') diff --git a/widgets/table/e-cell-number.c b/widgets/table/e-cell-number.c new file mode 100644 index 0000000000..8c8062d749 --- /dev/null +++ b/widgets/table/e-cell-number.c @@ -0,0 +1,70 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* ECellNumber - Number item for e-table. + * Copyright (C) 2001 Ximian, Inc. + * Author: Chris Lahey + */ + +#include +#include "gal/util/e-i18n.h" +#include "e-cell-number.h" +#include +#include +#include +#include + +#define PARENT_TYPE e_cell_text_get_type () + +static ECellTextClass *parent_class; + +static char * +ecn_get_text(ECellText *cell, ETableModel *model, int col, int row) +{ + return g_strdup_printf ("%d", GPOINTER_TO_INT (e_table_model_value_at(model, col, row))); +} + +static void +ecn_free_text(ECellText *cell, char *text) +{ + g_free(text); +} + +static void +e_cell_number_class_init (GtkObjectClass *object_class) +{ + ECellTextClass *ectc = (ECellTextClass *) object_class; + + parent_class = gtk_type_class (PARENT_TYPE); + + ectc->get_text = ecn_get_text; + ectc->free_text = ecn_free_text; +} + +static void +e_cell_number_init (GtkObject *object) +{ +} + +/** + * e_cell_number_new: + * @fontname: font to be used to render on the screen + * @justify: Justification of the string in the cell. + * + * Creates a new ECell renderer that can be used to render numbers that + * that come from the model. The value returned from the model is + * interpreted as being an int. + * + * See ECellText for other features. + * + * Returns: an ECell object that can be used to render numbers. + */ +ECell * +e_cell_number_new (const char *fontname, GtkJustification justify) +{ + ECellNumber *ecn = gtk_type_new (e_cell_number_get_type ()); + + e_cell_text_construct(E_CELL_TEXT(ecn), fontname, justify); + + return (ECell *) ecn; +} + +E_MAKE_TYPE(e_cell_number, "ECellNumber", ECellNumber, e_cell_number_class_init, e_cell_number_init, PARENT_TYPE); -- cgit