pub struct GridLayout { /* private fields */ }
Expand description

A layout that lays out widgets in a grid NWG layouts use interior mutability to manage their controls.

A GridLayouts has the following properties:

  • margin - The top, right, bottom, left margins of the layout - (default: [5, 5, 5, 5])
  • spacing - The spacing between children controls - (default: 5)
  • min_size - The minimum size of the layout - (default: [0, 0])
  • max_size - The maximum size of the layout - (default: [u32::max_value(), u32::max_value()])
  • max_column - Number of columns - (default: None),
  • max_row - Number of rows - (default: None),
    use native_windows_gui as nwg;
    fn layout(layout: &nwg::GridLayout, window: &nwg::Window, item1: &nwg::Button, item2: &nwg::Button) {
        nwg::GridLayout::builder()
            .parent(window)
            .max_row(Some(6))
            .spacing(5)
            .margin([0,0,0,0])
            .child(0, 0, item1)
            .child_item(nwg::GridLayoutItem::new(item2, 1, 0, 2, 1))
            .build(&layout);
    }

Implementations

Add a children control to the grid layout. This is a simplified interface over add_child_item

Panic:

  • If the layout is not initialized
  • If the control is not window-like (HWND handle)

Add a children control to the grid layout.

Panic: - If the layout is not initialized - If the control is not window-like (HWND handle)

Remove the children control in the layout. See also remove_child_by_pos. Note that the child control won’t be hidden after being removed from the control.

This method won’t do anything if there is no control at the specified position.

Panic:

  • If the layout is not initialized

Remove the children control in the layout. See also remove_child_by_pos. Note that the child control won’t be hidden after being removed from the control.

This method won’t do anything if there is no control at the specified position.

Panic:

  • If the layout is not initialized

Move the selected control to a new position in the grid layout. The old position becomes empty (as if remove_child was called). However it won’t remove the control at the new position if there is one.

This method won’t do anything if there is no control at the specified position.

Panic:

  • If the layout is not initialized

Move the selected control to a new position in the grid layout. The old position becomes empty (as if remove_child was called). However it won’t remove the control at the new position if there is one.

This method won’t do anything if there is no control at the specified position.

Panic:

  • If the layout is not initialized

Check if a window control is a children of the layout

Panic:

  • If the layout is not initialized
  • If the child is not a window-like control

Resize the layout as if the parent window had the specified size.

Arguments: w: New width of the layout h: New height of the layout

Panic:

  • The layout must have been successfully built otherwise this function will panic.

Resize the layout to fit the parent window size

Panic:

  • The layout must have been successfully built otherwise this function will panic.

Set the margins of the layout. The four values are in this order: top, right, bottom, left.

Set the size of the space between the children in the layout. Default value is 5.

Sets the minimum size of the layout

Sets the maximum size of the layout

Set the number of column in the layout

Set the number of row in the layout

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.