summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--ChangeLog.pre-2-07
-rw-r--r--ChangeLog.pre-2-107
-rw-r--r--ChangeLog.pre-2-27
-rw-r--r--ChangeLog.pre-2-47
-rw-r--r--ChangeLog.pre-2-67
-rw-r--r--ChangeLog.pre-2-87
-rw-r--r--gtk/gtkcellrenderer.c63
-rw-r--r--gtk/gtkcellrenderer.h10
-rw-r--r--gtk/gtkcellrenderertoggle.c4
-rw-r--r--gtk/gtktreeviewcolumn.c9
11 files changed, 80 insertions, 55 deletions
diff --git a/ChangeLog b/ChangeLog
index 490653b13b..6715ea630c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-0
+++ b/ChangeLog.pre-2-0
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-10
+++ b/ChangeLog.pre-2-10
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-2
+++ b/ChangeLog.pre-2-2
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-4
+++ b/ChangeLog.pre-2-4
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-6
+++ b/ChangeLog.pre-2-6
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8
index 490653b13b..6715ea630c 100644
--- a/ChangeLog.pre-2-8
+++ b/ChangeLog.pre-2-8
@@ -1,3 +1,10 @@
+Tue Sep 18 13:51:35 2001 Jonathan Blandford <jrb@redhat.com>
+
+ * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
+ "can_activate" properties in favor of
+ GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ and GTK_CELL_RENDERER_MODE_EDITABLE
+
Tue Sep 18 12:12:43 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
diff --git a/gtk/gtkcellrenderer.c b/gtk/gtkcellrenderer.c
index 08cc3fbb11..f468247a6b 100644
--- a/gtk/gtkcellrenderer.c
+++ b/gtk/gtkcellrenderer.c
@@ -34,8 +34,7 @@ static void gtk_cell_renderer_set_property (GObject *object,
enum {
PROP_ZERO,
- PROP_CAN_ACTIVATE,
- PROP_CAN_EDIT,
+ PROP_MODE,
PROP_VISIBLE,
PROP_XALIGN,
PROP_YALIGN,
@@ -77,8 +76,7 @@ gtk_cell_renderer_get_type (void)
static void
gtk_cell_renderer_init (GtkCellRenderer *cell)
{
- cell->can_activate = FALSE;
- cell->can_edit = FALSE;
+ cell->mode = GTK_CELL_RENDERER_MODE_INERT;
cell->visible = TRUE;
cell->width = -1;
cell->height = -1;
@@ -100,24 +98,16 @@ gtk_cell_renderer_class_init (GtkCellRendererClass *class)
class->get_size = NULL;
g_object_class_install_property (object_class,
- PROP_CAN_ACTIVATE,
- g_param_spec_boolean ("can_activate",
- _("can_activate"),
- _("Cell can get activate events."),
- FALSE,
- G_PARAM_READABLE |
- G_PARAM_WRITABLE));
+ PROP_MODE,
+ g_param_spec_enum ("mode",
+ _("mode"),
+ _("Editable mode of the CellRenderer"),
+ GTK_TYPE_CELL_RENDERER_MODE,
+ GTK_CELL_RENDERER_MODE_INERT,
+ G_PARAM_READABLE |
+ G_PARAM_WRITABLE));
g_object_class_install_property (object_class,
- PROP_CAN_EDIT,
- g_param_spec_boolean ("can_edit",
- _("can_edit"),
- _("Cell supports CellEditable interface."),
- FALSE,
- G_PARAM_READABLE |
- G_PARAM_WRITABLE));
-
- g_object_class_install_property (object_class,
PROP_VISIBLE,
g_param_spec_boolean ("visible",
_("visible"),
@@ -222,11 +212,8 @@ gtk_cell_renderer_get_property (GObject *object,
switch (param_id)
{
- case PROP_CAN_ACTIVATE:
- g_value_set_boolean (value, cell->can_activate);
- break;
- case PROP_CAN_EDIT:
- g_value_set_boolean (value, cell->can_edit);
+ case PROP_MODE:
+ g_value_set_enum (value, cell->mode);
break;
case PROP_VISIBLE:
g_value_set_boolean (value, cell->visible);
@@ -272,25 +259,9 @@ gtk_cell_renderer_set_property (GObject *object,
switch (param_id)
{
- case PROP_CAN_ACTIVATE:
- cell->can_activate = g_value_get_boolean (value);
- g_object_notify (object, "can_activate");
- /* can_activate and can_edit are mutually exclusive */
- if (cell->can_activate && cell->can_edit)
- {
- cell->can_edit = FALSE;
- g_object_notify (object, "can_edit");
- }
- break;
- case PROP_CAN_EDIT:
- cell->can_edit = g_value_get_boolean (value);
- g_object_notify (object, "can_edit");
- /* can_activate and can_edit are mutually exclusive */
- if (cell->can_activate && cell->can_edit)
- {
- cell->can_activate = FALSE;
- g_object_notify (object, "can_activate");
- }
+ case PROP_MODE:
+ cell->mode = g_value_get_enum (value);
+ g_object_notify (object, "mode");
break;
case PROP_VISIBLE:
cell->visible = g_value_get_boolean (value);
@@ -457,7 +428,7 @@ gtk_cell_renderer_activate (GtkCellRenderer *cell,
{
g_return_val_if_fail (GTK_IS_CELL_RENDERER (cell), FALSE);
- if (! cell->can_activate)
+ if (cell->mode != GTK_CELL_RENDERER_MODE_ACTIVATABLE)
return FALSE;
if (GTK_CELL_RENDERER_GET_CLASS (cell)->activate == NULL)
@@ -499,7 +470,7 @@ gtk_cell_renderer_start_editing (GtkCellRenderer *cell,
{
g_return_val_if_fail (GTK_IS_CELL_RENDERER (cell), NULL);
- if (! cell->can_edit)
+ if (cell->mode != GTK_CELL_RENDERER_MODE_EDITABLE)
return NULL;
if (GTK_CELL_RENDERER_GET_CLASS (cell)->start_editing == NULL)
diff --git a/gtk/gtkcellrenderer.h b/gtk/gtkcellrenderer.h
index 0a1624a51b..2468d735af 100644
--- a/gtk/gtkcellrenderer.h
+++ b/gtk/gtkcellrenderer.h
@@ -35,6 +35,13 @@ typedef enum
GTK_CELL_RENDERER_SORTED = 1 << 3
} GtkCellRendererState;
+typedef enum
+{
+ GTK_CELL_RENDERER_MODE_INERT,
+ GTK_CELL_RENDERER_MODE_ACTIVATABLE,
+ GTK_CELL_RENDERER_MODE_EDITABLE,
+} GtkCellRendererMode;
+
#define GTK_TYPE_CELL_RENDERER (gtk_cell_renderer_get_type ())
#define GTK_CELL_RENDERER(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_CELL_RENDERER, GtkCellRenderer))
#define GTK_CELL_RENDERER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_CELL_RENDERER, GtkCellRendererClass))
@@ -58,8 +65,7 @@ struct _GtkCellRenderer
guint16 xpad;
guint16 ypad;
- guint can_activate : 1;
- guint can_edit : 1;
+ guint mode : 2;
guint visible : 1;
guint is_expander : 1;
guint is_expanded : 1;
diff --git a/gtk/gtkcellrenderertoggle.c b/gtk/gtkcellrenderertoggle.c
index 6f33ff9087..fac7dd7bd9 100644
--- a/gtk/gtkcellrenderertoggle.c
+++ b/gtk/gtkcellrenderertoggle.c
@@ -103,7 +103,7 @@ gtk_cell_renderer_toggle_init (GtkCellRendererToggle *celltoggle)
{
celltoggle->active = FALSE;
celltoggle->radio = FALSE;
- GTK_CELL_RENDERER (celltoggle)->can_activate = TRUE;
+ GTK_CELL_RENDERER (celltoggle)->mode = GTK_CELL_RENDERER_MODE_ACTIVATABLE;
GTK_CELL_RENDERER (celltoggle)->xpad = 2;
GTK_CELL_RENDERER (celltoggle)->ypad = 2;
}
@@ -289,7 +289,7 @@ gtk_cell_renderer_toggle_render (GtkCellRenderer *cell,
state = GTK_STATE_ACTIVE;
}
}
- else if (! cell->can_activate)
+ else if (cell->mode == GTK_CELL_RENDERER_MODE_INERT)
{
state = GTK_STATE_INSENSITIVE;
}
diff --git a/gtk/gtktreeviewcolumn.c b/gtk/gtktreeviewcolumn.c
index 5be1875472..5226658f20 100644
--- a/gtk/gtktreeviewcolumn.c
+++ b/gtk/gtktreeviewcolumn.c
@@ -2238,16 +2238,15 @@ _gtk_tree_view_column_cell_event (GtkTreeViewColumn *tree_column,
GdkRectangle *cell_area,
guint flags)
{
- gboolean visible, can_activate, can_edit;
+ gboolean visible, mode;
g_return_val_if_fail (GTK_IS_TREE_VIEW_COLUMN (tree_column), FALSE);
g_object_get (G_OBJECT (((GtkTreeViewColumnCellInfo *) tree_column->cell_list->data)->cell),
"visible", &visible,
- "can_activate", &can_activate,
- "can_edit", &can_edit,
+ "mode", &mode,
NULL);
- if (visible && can_activate)
+ if (visible && mode == GTK_CELL_RENDERER_MODE_ACTIVATABLE)
{
if (gtk_cell_renderer_activate (((GtkTreeViewColumnCellInfo *) tree_column->cell_list->data)->cell,
event,
@@ -2258,7 +2257,7 @@ _gtk_tree_view_column_cell_event (GtkTreeViewColumn *tree_column,
flags))
return TRUE;
}
- else if (visible && can_edit)
+ else if (visible && mode == GTK_CELL_RENDERER_MODE_EDITABLE)
{
*editable_widget = gtk_cell_renderer_start_editing (((GtkTreeViewColumnCellInfo *) tree_column->cell_list->data)->cell,
event,