update_widget(GtkMathView* math_view)
update_widget(GtkMathView* math_view, gint x0, gint y0, gint width, gint height)
update_widget(GtkMathView* math_view){  GtkWidget* widget = GTK_WIDGET(math_view->area);  const gint width = widget->allocation.width;  const gint height = widget->allocation.height;  gdk_draw_pixmap(widget->window,		  widget->style->fg_gc[GTK_WIDGET_STATE(widget)],		  math_view->pixmap,		  0, 0, 0, 0, width, height);#if 1  if (math_view->cursor_elem)    {      gint y0 = 0;      if (AreaRef rootArea = math_view->view->getRootArea())	y0 = Gtk_RenderingContext::toGtkY(rootArea->box().height);      gint x;      gint y;      GtkMathViewBox gbox;      if (GTKMATHVIEW_METHOD_NAME(get_element_location)(math_view, math_view->cursor_elem,							&x, &y, &gbox))	{	  printf("DRAWING CURSOR AT (y offset = %d) (%d,%d) [%d,%d,%d]\n", y0, x, y, gbox.width, gbox.height, gbox.depth);	  gtk_paint_focus(widget->style,			  widget->window,			  GTK_STATE_NORMAL,			  NULL,			  widget,			  "?",			  x + MARGIN, MARGIN - y0 + y - gbox.height, gbox.width, gbox.height + gbox.depth);	}    }#endif}