gtk4::prelude

Trait LayoutManagerExt

source
pub trait LayoutManagerExt:
    IsA<LayoutManager>
    + Sealed
    + 'static {
    // Provided methods
    fn allocate(
        &self,
        widget: &impl IsA<Widget>,
        width: i32,
        height: i32,
        baseline: i32,
    ) { ... }
    fn layout_child(&self, child: &impl IsA<Widget>) -> LayoutChild { ... }
    fn request_mode(&self) -> SizeRequestMode { ... }
    fn widget(&self) -> Option<Widget> { ... }
    fn layout_changed(&self) { ... }
    fn measure(
        &self,
        widget: &impl IsA<Widget>,
        orientation: Orientation,
        for_size: i32,
    ) -> (i32, i32, i32, i32) { ... }
}
Expand description

Provided Methods§

source

fn allocate( &self, widget: &impl IsA<Widget>, width: i32, height: i32, baseline: i32, )

Assigns the given @width, @height, and @baseline to a @widget, and computes the position and sizes of the children of the @widget using the layout management policy of @self.

§widget

the Widget using @self

§width

the new width of the @widget

§height

the new height of the @widget

§baseline

the baseline position of the @widget, or -1

source

fn layout_child(&self, child: &impl IsA<Widget>) -> LayoutChild

Retrieves a LayoutChild instance for the LayoutManager, creating one if necessary.

The @child widget must be a child of the widget using @self.

The LayoutChild instance is owned by the LayoutManager, and is guaranteed to exist as long as @child is a child of the Widget using the given LayoutManager.

§child

a Widget

§Returns

a LayoutChild

source

fn request_mode(&self) -> SizeRequestMode

Retrieves the request mode of @self.

§Returns

a SizeRequestMode

source

fn widget(&self) -> Option<Widget>

Retrieves the Widget using the given LayoutManager.

§Returns

a Widget

source

fn layout_changed(&self)

Queues a resize on the Widget using @self, if any.

This function should be called by subclasses of LayoutManager in response to changes to their layout management policies.

source

fn measure( &self, widget: &impl IsA<Widget>, orientation: Orientation, for_size: i32, ) -> (i32, i32, i32, i32)

Measures the size of the @widget using @self, for the given @orientation and size.

See the Widget documentation on layout management for more details.

§widget

the Widget using @self

§orientation

the orientation to measure

§for_size

Size for the opposite of @orientation; for instance, if the @orientation is Orientation::Horizontal, this is the height of the widget; if the @orientation is Orientation::Vertical, this is the width of the widget. This allows to measure the height for the given width, and the width for the given height. Use -1 if the size is not known

§Returns
§minimum

the minimum size for the given size and orientation

§natural

the natural, or preferred size for the given size and orientation

§minimum_baseline

the baseline position for the minimum size

§natural_baseline

the baseline position for the natural size

Object Safety§

This trait is not object safe.

Implementors§