Documentation ¶
Overview ¶
Package outlay provides extra layouts for gio.
Index ¶
- Variables
- type Alignment
- type Animation
- type Axis
- type AxisPosition
- type Cell
- type Constraints
- type Dim
- type Dimensioner
- type Dp
- type Fan
- type FanItem
- type Flex
- type FlexChild
- type Flow
- type FlowElement
- type FlowWrap
- type Grid
- type Gx
- type Inset
- type List
- type Point
- type RigidRows
- type Sp
- type Spacing
- type Widget
Constants ¶
This section is empty.
Variables ¶
var ( Horizontal = _l.Horizontal Vertical = _l.Vertical Start = _l.Start End = _l.End Middle = _l.Middle Baseline = _l.Baseline SpaceSides = _l.SpaceSides SpaceStart = _l.SpaceStart SpaceEvenly = _l.SpaceEvenly SpaceAround = _l.SpaceAround SpaceBetween = _l.SpaceBetween SpaceEnd = _l.SpaceEnd )
var ( Exact = _l.Exact Pt = _i.Pt )
Functions ¶
This section is empty.
Types ¶
type Animation ¶
Animation holds state for an Animation between two states that is not invertible.
func (*Animation) Progress ¶
Progress returns the current progress through the animation as a value in the range [0,1]
func (*Animation) SetDuration ¶
type AxisPosition ¶
type AxisPosition struct {
// First and last are the indicies of the first and last visible
// cell on the axis.
First, Last int
// Offset is the pixel offset from the beginning of the first cell to
// the first visible pixel.
Offset int
// OffsetAbs is the estimated absolute position of the first visible
// pixel within the entire axis, mesaured in pixels.
OffsetAbs int
// Length is the estimated total size of the axis, measured in pixels.
Length int
}
AxisPosition describes the position of a viewport on a given axis.
type Constraints ¶
type Constraints = _l.Constraints
type Dim ¶
type Dim = _l.Dimensions
type Dimensioner ¶
Dimensioner is a function that provides the dimensions (in pixels) of an element on a given axis. The constraint parameter provides the size of the visible portion of the axis for applications that want it.
type Fan ¶
type Fan struct { Animation // The width, in radians, of the full arc that items should occupy. // If zero, math.Pi/2 will be used (1/4 of a full circle). WidthRadians float32 // The offset, in radians, above the X axis to apply before rendering the // arc. This can be used with a value of Pi/4 to center an arc of width // Pi/2. If zero, math.Pi/4 will be used (1/8 of a full circle). To get the // equivalent of specifying zero, specify a value of 2*math.Pi. OffsetRadians float32 // The radius of the hollow circle at the center of the fan. Leave nil to // use the default heuristic of half the width of the widest item. HollowRadius *Dp // contains filtered or unexported fields }
type Flex ¶
type Flex struct { // Axis is the main axis, either Horizontal or Vertical. Axis Axis // Spacing controls the distribution of space left after // Spacing Spacing // Alignment is the alignment in the cross axis. Alignment Alignment // WeightSum is the sum of weights used for the weighted // size of Flexed children. If WeightSum is zero, the sum // of all Flexed weights is used. WeightSum float32 }
Flex lays out child elements along an axis, according to alignment, weights, and the configured system locale. It differs from gioui.org/Flex by flipping the visual order of its children in RTL locales.
func (Flex) Layout ¶
Layout a list of children. The position of the children are determined by the specified order, but Rigid children are laid out before Flexed children. If the locale of the gtx specifies a horizontal, RTL language, the children will be allocated space in the order that they are provided, but will be displayed in the inverse order to match RTL conventions.
type FlexChild ¶
type FlexChild struct {
// contains filtered or unexported fields
}
FlexChild is the descriptor for a Flex child.
type Flow ¶
type Flow struct { Num int Axis Axis Alignment Alignment // contains filtered or unexported fields }
Flow lays out at most Num elements along the main axis. The number of cross axis elements depend on the total number of elements.
type FlowElement ¶
FlowElement lays out the ith element of a Grid.
type FlowWrap ¶
FlowWrap lays out as many elements as possible along the main axis before wrapping to the cross axis.
type Grid ¶
type Grid struct { Vertical AxisPosition Horizontal AxisPosition Vscroll gesture.Scroll Hscroll gesture.Scroll // LockedRows is a quantity of rows (starting from row 0) to lock to // the top of the grid's viewport. These rows will not be included in // the indicies provided in the Vertical AxisPosition field. LockedRows int }
Grid provides a scrollable two dimensional viewport that efficiently lays out only content visible or nearly visible within the current viewport.
type Inset ¶
type Inset struct {
Top, Bottom unit.Dp
// Start and End refer to the visual start and end of the widget
// and surrounding area. In LTR locales, Start is left and End is
// right. In RTL locales the inverse in true.
Start, End unit.Dp
}
Inset adds space around a widget by decreasing its maximum constraints. The minimum constraints will be adjusted to ensure they do not exceed the maximum. Inset respects the system locale provided at layout time, and will swap start/end insets for RTL text. This differs from gioui.org/Inset, which never swaps the sides contextually.
func UniformInset ¶
UniformInset returns an Inset with a single inset applied to all edges.
type RigidRows ¶
type RigidRows struct { Axis Axis Alignment Alignment Spacing Spacing CrossSpacing Spacing CrossAlign Alignment }
RigidRows lays out a sequence of rigid widgets along Axis until it runs out of out space. It then makes a new row/column on the cross axis and fills that with widgets until it runs out there, repeating this process until all widgets are placed.