Пример #1
0
void
clist_select_rows(GtkWidget *clist, GList *rows)
{
  GList *tmp;
  gint row;

  if (rows == NULL)
  {
    gtk_clist_select_row(GTK_CLIST(clist), 0, 0);
    GTK_CLIST(clist)->focus_row = 0;
  }
  else
  {
    for (tmp = rows; tmp != NULL; tmp = tmp->next)
    {
      row = (gint)tmp->data;
      if (row < GTK_CLIST(clist)->rows)
      {
        gtk_clist_select_row(GTK_CLIST(clist), row, 0);
        GTK_CLIST(clist)->focus_row = row;
      }
      else
      {
        gtk_clist_select_row(GTK_CLIST(clist), GTK_CLIST(clist)->rows-1, 0);
        GTK_CLIST(clist)->focus_row = GTK_CLIST(clist)->rows-1;
      }
    } 
  }
  gtk_widget_draw_focus(clist);
  gtk_widget_grab_focus(clist);
}
Пример #2
0
/* Draw a widget, which have focus */
int
clip_GTK_WIDGETDRAWFOCUS(ClipMachine * cm)
{
	C_widget *cwid = _fetch_cw_arg(cm);
	CHECKCWID(cwid,GTK_IS_WIDGET);
	gtk_widget_draw_focus(cwid->widget);
	return 0;
err:
	return 1;
}