[maemo-commits] [maemo-commits] r9051 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Wed Jan 10 20:05:53 EET 2007
- Previous message: [maemo-commits] r9050 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Next message: [maemo-commits] r9052 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: kris Date: 2007-01-10 20:05:49 +0200 (Wed, 10 Jan 2007) New Revision: 9051 Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkcellrenderertoggle.c Log: 2007-01-10 Kristian Rietveld <kris at imendio.com> * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init), (gtk_cell_renderer_toggle_get_property), (gtk_cell_renderer_toggle_set_property), (gtk_cell_renderer_toggle_render): port over checkbox-mode property. Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog =================================================================== --- projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog 2007-01-10 17:41:30 UTC (rev 9050) +++ projects/haf/branches/gtk+/maemo-gtk-2-10/ChangeLog 2007-01-10 18:05:49 UTC (rev 9051) @@ -1,5 +1,13 @@ 2007-01-10 Kristian Rietveld <kris at imendio.com> + * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init), + (gtk_cell_renderer_toggle_get_property), + (gtk_cell_renderer_toggle_set_property), + (gtk_cell_renderer_toggle_render): port over checkbox-mode + property. + +2007-01-10 Kristian Rietveld <kris at imendio.com> + * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init): port over change which removes assignments to xpad, ypad. Modified: projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkcellrenderertoggle.c =================================================================== --- projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkcellrenderertoggle.c 2007-01-10 17:41:30 UTC (rev 9050) +++ projects/haf/branches/gtk+/maemo-gtk-2-10/gtk/gtkcellrenderertoggle.c 2007-01-10 18:05:49 UTC (rev 9051) @@ -69,6 +69,9 @@ PROP_RADIO, PROP_INCONSISTENT, PROP_INDICATOR_SIZE + /* MAEMO START */ + , PROP_CHECKBOX_MODE + /* MAEMO END */ }; /* MAEMO START */ @@ -85,6 +88,9 @@ gint indicator_size; guint inconsistent : 1; + /* MAEMO START */ + guint checkbox_mode : 1; + /* MAEMO END */ }; @@ -153,7 +159,26 @@ FALSE, GTK_PARAM_READWRITE)); + /* MAEMO START */ + /** + * GtkCellRendererToggle:checkbox-mode: + * + * Activates the checkbox mode of drawing selection. Currently there are no + * major differences in how the drawing is done. + * + * Since: maemo 1.0 + */ g_object_class_install_property (object_class, + PROP_CHECKBOX_MODE, + g_param_spec_boolean ("checkbox-mode", + P_("Checkbox Mode"), + P_("Activates the checkbox mode of drawing selection"), + FALSE, + GTK_PARAM_READABLE | + GTK_PARAM_WRITABLE)); + /* MAEMO END */ + + g_object_class_install_property (object_class, PROP_INDICATOR_SIZE, g_param_spec_int ("indicator-size", P_("Indicator size"), @@ -213,6 +238,11 @@ case PROP_INDICATOR_SIZE: g_value_set_int (value, priv->indicator_size); break; + /* MAEMO START */ + case PROP_CHECKBOX_MODE: + g_value_set_boolean (value, priv->checkbox_mode); + break; + /* MAEMO END */ default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; @@ -248,6 +278,11 @@ case PROP_INDICATOR_SIZE: priv->indicator_size = g_value_get_int (value); break; + /* MAEMO START */ + case PROP_CHECKBOX_MODE: + priv->checkbox_mode = g_value_get_boolean (value); + break; + /* MAEMO END */ default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec); break; @@ -340,6 +375,46 @@ if (width <= 0 || height <= 0) return; + /* MAEMO START */ + if (priv->checkbox_mode) + { + /* Checkbox mode drawing */ + + state = GTK_STATE_NORMAL; + + if (!cell->sensitive) + { + state = GTK_STATE_INSENSITIVE; + } +#if 0 + /* FIXME: Enable this after the activatable-issue is cleared up */ + if (!celltoggle->activatable) + state = GTK_STATE_INSENSITIVE; +#endif + + if ((flags & GTK_CELL_RENDERER_SELECTED) == GTK_CELL_RENDERER_SELECTED) + shadow = GTK_SHADOW_IN; + else + shadow = GTK_SHADOW_OUT; + + if (priv->inconsistent) + shadow = GTK_SHADOW_ETCHED_IN; + + if ((flags & GTK_CELL_RENDERER_FOCUSED) == GTK_CELL_RENDERER_FOCUSED) + { + /* Don't overlap with the focus border */ + height -= 2; + if (GTK_WIDGET_HAS_FOCUS (widget)) + state = GTK_STATE_ACTIVE; + else + state = GTK_STATE_PRELIGHT; + } + } + else + { + /* Normal operation */ + /* MAEMO END */ + if (priv->inconsistent) shadow = GTK_SHADOW_ETCHED_IN; else @@ -363,6 +438,9 @@ else state = GTK_STATE_INSENSITIVE; } + /* MAEMO START */ + } + /* MAEMO END */ if (celltoggle->radio) {
- Previous message: [maemo-commits] r9050 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Next message: [maemo-commits] r9052 - in projects/haf/branches/gtk+/maemo-gtk-2-10: . gtk
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]