# wxSizerFlags

###
Module

wxSizerFlags

###
Module Summary

Functions for wxSizerFlags class

###
Description

Container for sizer items flags providing readable names for them.

Normally, when you add an item to a sizer via wxSizer:add/4, you have to specify a lot of flags and parameters which can be unwieldy. This is where wxSizerFlags comes in: it allows you to specify all parameters using the named methods instead. For example, instead of

you can now write

This is more readable and also allows you to create wxSizerFlags objects which can be reused for several sizer items.

Note that by specification, all methods of wxSizerFlags return the wxSizerFlags object itself to allowing chaining multiple methods calls like in the examples above.

See: wxSizer

wxWidgets docs: wxSizerFlags

###
Data Types

####
wxSizerFlags() = wx:wx_object()

###
Exports

####
new() -> wxSizerFlags()

####
new(Options :: [Option]) -> wxSizerFlags()

### Types

Option = {proportion, integer()}

Creates the wxSizer with the proportion specified by proportion.

####
align(This, Alignment) -> wxSizerFlags()

### Types

This = wxSizerFlags()
Alignment = integer()

Sets the alignment of this wxSizerFlags to align.

This method replaces the previously set alignment with the specified one.

See: Top() (not implemented in wx), left/1, right/1, Bottom() (not implemented in wx), centre/1

####
border(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

####
border(This, Options :: [Option]) -> wxSizerFlags()

### Types

This = wxSizerFlags()
Option = {direction, integer()}

Sets the wxSizerFlags to have a border with size as returned by GetDefaultBorder() (not implemented in wx).

####
border(This, Direction, Borderinpixels) -> wxSizerFlags()

### Types

This = wxSizerFlags()
Direction = Borderinpixels = integer()

Sets the wxSizerFlags to have a border of a number of pixels specified by borderinpixels with the directions specified by direction.

Prefer to use the overload below or DoubleBorder() (not implemented in wx) or TripleBorder() (not implemented in wx) versions instead of hard-coding the border value in pixels to avoid too small borders on devices with high DPI displays.

####
centre(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

See: center/1.

####
center(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

Sets the object of the wxSizerFlags to center itself in the area it is given.

####
expand(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

Sets the object of the wxSizerFlags to expand to fill as much area as it can.

####
left(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

Aligns the object to the left, similar for Align(wxALIGN_LEFT).

Unlike align/2, this method doesn't change the vertical alignment of the item.

####
proportion(This, Proportion) -> wxSizerFlags()

### Types

This = wxSizerFlags()
Proportion = integer()

Sets the proportion of this wxSizerFlags to proportion.

####
right(This) -> wxSizerFlags()

### Types

This = wxSizerFlags()

Aligns the object to the right, similar for Align(wxALIGN_RIGHT).

Unlike align/2, this method doesn't change the vertical alignment of the item.

####
destroy(This :: wxSizerFlags()) -> ok

Destroys the object.