Example #1
0
static void
cg_combo_flags_cell_layout_clear_attributes (GtkCellLayout *layout,
                                             GtkCellRenderer *cell)
{
	CgComboFlags *combo;
	CgComboFlagsPrivate *priv;
	CgComboFlagsCellInfo *info;
	GSList *list;

	combo = CG_COMBO_FLAGS (layout);
	priv = CG_COMBO_FLAGS_PRIVATE (combo);

	info = cg_combo_flags_get_cell_info (combo, cell);
	g_return_if_fail (info != NULL);

	list = info->attributes;
	while (list && list->next)
	{
		g_free (list->data);
		list = list->next->next;
	}

	g_slist_free (info->attributes);
	info->attributes = NULL;

	if (priv->column != NULL)
	{
	    gtk_cell_layout_clear_attributes (GTK_CELL_LAYOUT (priv->column), 
	                                      cell);
	}

	gtk_widget_queue_resize (GTK_WIDGET (combo));
}
Example #2
0
static void
gtk_cell_layout_default_clear_attributes (GtkCellLayout         *cell_layout,
					  GtkCellRenderer       *cell)
{
  GtkCellLayoutIface *iface;
  GtkCellArea        *area;

  iface = GTK_CELL_LAYOUT_GET_IFACE (cell_layout);

  if (iface->get_area)
    {
      area = iface->get_area (cell_layout);

      if (area)
	gtk_cell_layout_clear_attributes (GTK_CELL_LAYOUT (area), cell);
      else
	warn_no_cell_area ("GtkCellLayoutIface->clear_attributes()");
    }
}
Example #3
0
static void
gtk_cell_layout_set_attributesv (GtkCellLayout   *cell_layout,
                                 GtkCellRenderer *cell,
                                 va_list          args)
{
  gchar *attribute;
  gint column;

  attribute = va_arg (args, gchar *);

  gtk_cell_layout_clear_attributes (cell_layout, cell);

  while (attribute != NULL)
    {
      column = va_arg (args, gint);

      gtk_cell_layout_add_attribute (cell_layout, cell, attribute, column);

      attribute = va_arg (args, gchar *);
    }
}
Example #4
0
static VALUE
rg_clear_attributes(VALUE self, VALUE cell)
{
    gtk_cell_layout_clear_attributes(_SELF(self), RVAL2RENDERER(cell));
    return self;
}