Class WidgetPaintable

All Implemented Interfaces:
PointerInterface

public class WidgetPaintable extends Object
`GtkWidgetPaintable` is a `GdkPaintable` that displays the contents
of a widget.

`GtkWidgetPaintable` 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, `GtkWidgetPaintable` 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 `GtkWidgetPaintable` everywhere a `GdkPaintable` is allowed,
including using it on a `GtkPicture` (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
[property@Gtk.Picture:can-shrink] property is set to %TRUE or you might
end up with an infinitely growing widget.

https://docs.gtk.org/gtk4/class.WidgetPaintable.html

  • Constructor Details

    • WidgetPaintable

      public WidgetPaintable(PointerContainer pointer)
    • WidgetPaintable

      public WidgetPaintable(@Nullable Widget widget)
      Creates a new widget paintable observing the given widget.
      Parameters:
      widget - a `GtkWidget`
  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getWidget

      public Widget getWidget()
      Returns the widget that is observed or %NULL if none.
      Returns:
      the observed widget.
    • setWidget

      public void setWidget(@Nullable Widget widget)
      Sets the widget that should be observed.
      Parameters:
      widget - the widget to observe
    • asPaintable

      public Paintable asPaintable()
      Implements interface Paintable. Call this to get access to interface functions.
      Returns:
      Paintable
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()