From e65ce47c209498fc592e9bfb2720abdc0d2ffb9c Mon Sep 17 00:00:00 2001 From: Damon Chaplin Date: Sun, 25 Feb 2001 19:29:40 +0000 Subject: new abstract ECell subclass to be used as base class for popup ECells. 2001-02-25 Damon Chaplin * e-cell-popup.c: new abstract ECell subclass to be used as base class for popup ECells. * e-cell-combo.c: subclass of ECellPopup which pops up a simple list of strings. * e-table-item.c: Renamed eti_row_diff() to e_table_item_row_diff() and made public, since the ECellPopup subclasses need it. * Makefile.am: added e-cell-popup.[hc] and e-cell-combo.[hc] svn path=/trunk/; revision=8387 --- widgets/table/e-cell-combo.h | 62 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 widgets/table/e-cell-combo.h (limited to 'widgets/table/e-cell-combo.h') diff --git a/widgets/table/e-cell-combo.h b/widgets/table/e-cell-combo.h new file mode 100644 index 0000000000..9f8833d029 --- /dev/null +++ b/widgets/table/e-cell-combo.h @@ -0,0 +1,62 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ + +/* + * Author : + * Damon Chaplin + * + * Copyright 2001, Ximian, Inc. + * + * 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 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 program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + +/* + * ECellCombo - a subclass of ECellPopup used to support popup lists like a + * GtkCombo widget. It only supports a basic popup list of strings at present, + * with no auto-completion. + */ + +#ifndef _E_CELL_COMBO_H_ +#define _E_CELL_COMBO_H_ + +#include + +#define E_CELL_COMBO_TYPE (e_cell_combo_get_type ()) +#define E_CELL_COMBO(o) (GTK_CHECK_CAST ((o), E_CELL_COMBO_TYPE, ECellCombo)) +#define E_CELL_COMBO_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_CELL_COMBO_TYPE, ECellComboClass)) +#define E_IS_CELL_COMBO(o) (GTK_CHECK_TYPE ((o), E_CELL_COMBO_TYPE)) +#define E_IS_CELL_COMBO_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_CELL_COMBO_TYPE)) + + +typedef struct { + ECellPopup parent; + + GtkWidget *popup_window; + GtkWidget *popup_scrolled_window; + GtkWidget *popup_list; +} ECellCombo; + +typedef struct { + ECellPopupClass parent_class; +} ECellComboClass; + + +GtkType e_cell_combo_get_type (void); +ECell *e_cell_combo_new (void); + +void e_cell_combo_set_popdown_strings (ECellCombo *ecc, + GList *strings); + +#endif /* _E_CELL_COMBO_H_ */ -- cgit v1.2.3