gtk4::prelude

Trait LayoutManagerExt

Source
pub trait LayoutManagerExt: IsA<LayoutManager> + '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

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§