
Gnome::Gtk4::WidgetPaintable
Description
Gnome::Gtk4::WidgetPaintable is a Gnome::Gdk4::R-Paintable that displays the contents of a widget.
Gnome::Gtk4::WidgetPaintable will also take care of the widget not being in a state where it can be drawn (like when it isn't shown) and just draw nothing or where it does not have a size (like when it is hidden) and report no size in that case.
Of course, Gnome::Gtk4::WidgetPaintable allows you to monitor widgets for size changes by emitting the [signal $Gdk
.Paintable::invalidate-size] signal whenever the size of the widget changes as well as for visual changes by emitting the [signal $Gdk
.Paintable::invalidate-contents] signal whenever the widget changes.
You can use a Gnome::Gtk4::WidgetPaintable everywhere a Gnome::Gdk4::R-Paintable is allowed, including using it on a Gnome::Gtk4::Picture (or one of its parents) that it was set on itself via gtk_picture_set_paintable(). The paintable will take care of recursion when this happens. If you do this however, ensure that the can-shrink defined in Gnome::Gtk4::Picture property is set to True
or you might end up with an infinitely growing widget.
Uml Diagram

Class initialization
new
:native-object
Create an object using a native object from an object of the same type found elsewhere. See also Gnome::N::TopLevelSupportClass.
multi method new ( N-Object() :$native-object! )
new-widgetpaintable
Creates a new widget paintable observing the given widget.
method new-widgetpaintable ( N-Object() $widget --> Gnome::Gtk4::WidgetPaintable )
$widget; a Gnome::Gtk4::Widget.
Methods
get-widget
Returns the widget that is observed or undefined if none.
method get-widget (--> N-Object )
Return value; the observed widget..
set-widget
Sets the widget that should be observed.
method set-widget ( N-Object() $widget )
$widget; the widget to observe.