Sets the visual that should be used for by widget and its children for
GdkWindows. The visual must be on the same
returned by gtk_widget_get_screen(), so handling the
GtkWidget::screen-changed signal is necessary.
Setting a new
visual will not cause
widget to recreate its windows,
so you should call this function before
widget is realized.
Visual to be used or
NULLto unset a previous one.
The argument can be
The data is owned by the caller of the method.