aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/e-table/e-cell-toggle.h
diff options
context:
space:
mode:
authorMiguel de Icaza <miguel@gnu.org>1999-11-30 13:50:54 +0800
committerArturo Espinosa <unammx@src.gnome.org>1999-11-30 13:50:54 +0800
commitc50636dba333983e99deeb76338bbec3390a1fbe (patch)
treec89789be25d6ec51dfa37ea7051f203617439911 /widgets/e-table/e-cell-toggle.h
parent6e69c396983498a6ff78a33928ad5fec98c8513f (diff)
downloadgsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar.gz
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar.bz2
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar.lz
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar.xz
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.tar.zst
gsoc2013-evolution-c50636dba333983e99deeb76338bbec3390a1fbe.zip
New file. Implement a multi-state image toggle cell object.
1999-11-29 Miguel de Icaza <miguel@gnu.org> * e-cell-toggle.c, e-cell-toggle.h: New file. Implement a multi-state image toggle cell object. * e-cell-text.c (ect_leave_edit): Handle the case of us calling leave edit manually. (ect_stop_editing): Leave manually editing here. (ect_draw): Add one pixel to the border for left and right; Handle off-screen cursor (must be improved). (ect_edit_select_all): New function. (ect_event): Select all text on editing start * e-table-item.c (eti_event): Map mouse events and dispatch them. (eti_event): Add spreadsheet mode for editing; Enter editing only with visual characters; Leave editing mode when a different row has been selected. (eti_get_height): Fix the computation for this; Fix logic for the length_threshold. (eti_draw): Add borders on all sides of the box; Only draw focus if the cell is not being edited. svn path=/trunk/; revision=1445
Diffstat (limited to 'widgets/e-table/e-cell-toggle.h')
-rw-r--r--widgets/e-table/e-cell-toggle.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/widgets/e-table/e-cell-toggle.h b/widgets/e-table/e-cell-toggle.h
new file mode 100644
index 0000000000..3cd99f5d04
--- /dev/null
+++ b/widgets/e-table/e-cell-toggle.h
@@ -0,0 +1,37 @@
+#ifndef _E_CELL_TOGGLE_H_
+#define _E_CELL_TOGGLE_H_
+
+#include <libgnomeui/gnome-canvas.h>
+#include <gdk-pixbuf/gdk-pixbuf.h>
+#include "e-cell.h"
+
+#define E_CELL_TOGGLE_TYPE (e_cell_toggle_get_type ())
+#define E_CELL_TOGGLE(o) (GTK_CHECK_CAST ((o), E_CELL_TOGGLE_TYPE, ECellToggle))
+#define E_CELL_TOGGLE_CLASS(k) (GTK_CHECK_CLASS_CAST((k), E_CELL_TOGGLE_TYPE, ECellToggleClass))
+#define E_IS_CELL_TOGGLE(o) (GTK_CHECK_TYPE ((o), E_CELL_TOGGLE_TYPE))
+#define E_IS_CELL_TOGGLE_CLASS(k) (GTK_CHECK_CLASS_TYPE ((k), E_CELL_TOGGLE_TYPE))
+
+typedef struct {
+ ECell parent;
+
+ int border;
+ int n_states;
+ GdkPixbuf **images;
+
+ int height;
+} ECellToggle;
+
+typedef struct {
+ ECellClass parent_class;
+} ECellToggleClass;
+
+GtkType e_cell_toggle_get_type (void);
+ECell *e_cell_toggle_new (ETableModel *model, int border,
+ int n_states,
+ GdkPibux **images);
+void e_cell_toggle_construct (ECellToggle *etog, ETableModel *etm,
+ int border, int n_states, GdkPixbuf **images);
+
+#endif /* _E_CELL_TOGGLE_H_ */
+
+