Documentation ¶
Overview ¶
Package gui implements the plan 9 from crypto space Gio GUI theme
Index ¶
- Constants
- Variables
- func CopyContextDimensionsWithMaxAxis(gtx l.Context, axis l.Axis) l.Context
- func EmptyFromSize(size image.Point) func(gtx l.Context) l.Dimensions
- func EmptyMaxHeight() func(gtx l.Context) l.Dimensions
- func EmptyMaxWidth() func(gtx l.Context) l.Dimensions
- func EmptyMinHeight() func(gtx l.Context) l.Dimensions
- func EmptyMinWidth() func(gtx l.Context) l.Dimensions
- func EmptySpace(x, y int) func(gtx l.Context) l.Dimensions
- func Fill(gtx l.Context, col color.NRGBA) l.Dimensions
- func Fpt(p image.Point) f32.Point
- func GetDimension(gtx l.Context, w l.Widget) (dim l.Dimensions)
- func GetInfContext(gtx l.Context) l.Context
- func HexARGB(s string) (c color.RGBA)
- func HexNRGB(s string) (c color.NRGBA)
- func If(value bool, t, f l.Widget) l.Widget
- type App
- func (a *App) ActivePage(activePage string) *App
- func (a *App) ActivePageGet() string
- func (a *App) ActivePageGetAtomic() *atomic.String
- func (a *App) AppTitleText() string
- func (a *App) BodyBackground(bodyBackground string) *App
- func (a *App) BodyBackgroundGet() string
- func (a *App) BodyColor(bodyColor string) *App
- func (a *App) BodyColorGet() string
- func (a *App) ButtonBar(bar []l.Widget) *App
- func (a *App) ButtonBarGet() (bar []l.Widget)
- func (a *App) CardBackground(cardBackground string) *App
- func (a *App) CardBackgroundGet() string
- func (a *App) CardColor(cardColor string) *App
- func (a *App) CardColorGet() string
- func (a *App) DimensionCaption(gtx l.Context) l.Dimensions
- func (a *App) Fn() func(gtx l.Context) l.Dimensions
- func (a *App) GetLogo() string
- func (a *App) HideSideBar(hideSideBar bool) *App
- func (a *App) HideSideBarGet() bool
- func (a *App) HideTitleBar(hideTitleBar bool) *App
- func (a *App) HideTitleBarGet() bool
- func (a *App) Layers(widgets []l.Widget) *App
- func (a *App) LayersGet() []l.Widget
- func (a *App) LogoAndTitle(gtx l.Context) l.Dimensions
- func (a *App) MainDirection() l.Direction
- func (a *App) MainFrame(gtx l.Context) l.Dimensions
- func (a *App) MenuBackground(menuBackground string) *App
- func (a *App) MenuBackgroundGet() string
- func (a *App) MenuButton(gtx l.Context) l.Dimensions
- func (a *App) MenuColor(menuColor string) *App
- func (a *App) MenuColorGet() string
- func (a *App) MenuIcon(menuIcon *[]byte) *App
- func (a *App) MenuIconGet() *[]byte
- func (a *App) NoMenuButton(_ l.Context) l.Dimensions
- func (a *App) Pages(widgets WidgetMap) *App
- func (a *App) PagesGet() WidgetMap
- func (a *App) Placeholder(title string) func(gtx l.Context) l.Dimensions
- func (a *App) RenderButtonBar(gtx l.Context) l.Dimensions
- func (a *App) RenderHeader(gtx l.Context) l.Dimensions
- func (a *App) RenderPage(gtx l.Context) l.Dimensions
- func (a *App) RenderStatusBar(gtx l.Context) l.Dimensions
- func (a *App) Root(root *Stack) *App
- func (a *App) RootGet() *Stack
- func (a *App) SetAppTitleText(title string) *App
- func (a *App) SetLogo(logo *[]byte) *App
- func (a *App) SetMainDirection(direction l.Direction) *App
- func (a *App) SideBar(widgets []l.Widget) *App
- func (a *App) SideBarBackground(sideBarBackground string) *App
- func (a *App) SideBarBackgroundGet() string
- func (a *App) SideBarColor(sideBarColor string) *App
- func (a *App) SideBarColorGet() string
- func (a *App) SideBarGet() []l.Widget
- func (a *App) StatusBar(bar, barR []l.Widget) *App
- func (a *App) StatusBarBackground(statusBarBackground string) *App
- func (a *App) StatusBarBackgroundGet() string
- func (a *App) StatusBarColor(statusBarColor string) *App
- func (a *App) StatusBarColorGet() string
- func (a *App) StatusBarGet() (bar []l.Widget)
- func (a *App) Title(title string) *App
- func (a *App) TitleBarBackground(TitleBarBackground string) *App
- func (a *App) TitleBarBackgroundGet() string
- func (a *App) TitleBarColor(titleBarColor string) *App
- func (a *App) TitleBarColorGet() string
- func (a *App) TitleFont(font string) *App
- func (a *App) TitleFontGet() string
- func (a *App) TitleGet() string
- type Bool
- type BoolHook
- type Border
- type Button
- func (b *Button) Background(background string) *Button
- func (b *Button) Color(color string) *Button
- func (b *Button) CornerRadius(cornerRadius float32) *Button
- func (b *Button) Fn(gtx l.Context) l.Dimensions
- func (b *Button) Font(font string) *Button
- func (b *Button) Inset(scale float32) *Button
- func (b *Button) SetCancel(fn func()) *Button
- func (b *Button) SetClick(fn func()) *Button
- func (b *Button) SetPress(fn func()) *Button
- func (b *Button) Text(text string) *Button
- func (b *Button) TextScale(scale float32) *Button
- type ButtonLayout
- func (b *ButtonLayout) Background(color string) *ButtonLayout
- func (b *ButtonLayout) CornerRadius(radius float32) *ButtonLayout
- func (b *ButtonLayout) Corners(corners int) *ButtonLayout
- func (b *ButtonLayout) Embed(w l.Widget) *ButtonLayout
- func (b *ButtonLayout) Fn(gtx l.Context) l.Dimensions
- func (b *ButtonLayout) SetCancel(fn func()) *ButtonLayout
- func (b *ButtonLayout) SetClick(fn func()) *ButtonLayout
- func (b *ButtonLayout) SetPress(fn func()) *ButtonLayout
- type CallbackQueue
- type Cell
- type CellGrid
- type CellPriorities
- type CellPriority
- type CellRow
- type ChangeEvent
- type Checkable
- func (c *Checkable) CheckedStateIcon(ic *[]byte) *Checkable
- func (c *Checkable) Color(color string) *Checkable
- func (c *Checkable) Fn(gtx l.Context, checked bool) l.Dimensions
- func (c *Checkable) Font(font string) *Checkable
- func (c *Checkable) IconColor(color string) *Checkable
- func (c *Checkable) Label(txt string) *Checkable
- func (c *Checkable) Scale(size float32) *Checkable
- func (c *Checkable) TextScale(scale float32) *Checkable
- func (c *Checkable) UncheckedStateIcon(ic *[]byte) *Checkable
- type Checkbox
- func (c *Checkbox) Fn(gtx l.Context) l.Dimensions
- func (c *Checkbox) IconColor(color string) *Checkbox
- func (c *Checkbox) IconScale(scale float32) *Checkbox
- func (c *Checkbox) SetOnChange(fn func(b bool)) *Checkbox
- func (c *Checkbox) Text(label string) *Checkbox
- func (c *Checkbox) TextColor(color string) *Checkbox
- func (c *Checkbox) TextScale(scale float32) *Checkbox
- type Clickable
- func (c *Clickable) Clicked() bool
- func (c *Clickable) Clicks() []click
- func (c *Clickable) Fn(gtx l.Context) l.Dimensions
- func (c *Clickable) History() []press
- func (c *Clickable) SetCancel(fn func()) *Clickable
- func (c *Clickable) SetClick(fn func()) *Clickable
- func (c *Clickable) SetPress(fn func()) *Clickable
- type Collection
- type Colors
- type Column
- type ColumnRow
- type DimensionList
- func (d DimensionList) CoordinateToPosition(coordinate int, axis l.Axis) (position Position)
- func (d DimensionList) GetSizes(position Position, axis l.Axis) (total, before int)
- func (d DimensionList) GetTotal(axis l.Axis) (total int)
- func (d DimensionList) PositionToCoordinate(position Position, axis l.Axis) (coordinate int)
- type Direction
- func (d *Direction) Center() (out *Direction)
- func (d *Direction) E() (out *Direction)
- func (d *Direction) Embed(w l.Widget) *Direction
- func (d *Direction) Fn(c l.Context) l.Dimensions
- func (d *Direction) N() (out *Direction)
- func (d *Direction) NE() (out *Direction)
- func (d *Direction) NW() (out *Direction)
- func (d *Direction) S() (out *Direction)
- func (d *Direction) SE() (out *Direction)
- func (d *Direction) SW() (out *Direction)
- func (d *Direction) W() (out *Direction)
- type Editor
- func (e *Editor) Alignment(alignment text.Alignment) *Editor
- func (e *Editor) CaretCoords() f32.Point
- func (e *Editor) CaretPos() (line, col int)
- func (e *Editor) ClearSelection()
- func (e *Editor) Delete(runes int)
- func (e *Editor) Events() []EditorEvent
- func (e *Editor) Focus()
- func (e *Editor) Focused() bool
- func (e *Editor) Insert(s string)
- func (e *Editor) Layout(gtx layout.Context, sh text.Shaper, font text.Font, size unit.Value) layout.Dimensions
- func (e *Editor) Len() int
- func (e *Editor) Mask(mask rune) *Editor
- func (e *Editor) MoveCaret(startDelta, endDelta int)
- func (e *Editor) NumLines() int
- func (e *Editor) PaintCaret(gtx layout.Context)
- func (e *Editor) PaintSelection(gtx layout.Context)
- func (e *Editor) PaintText(gtx layout.Context)
- func (e *Editor) SelectedText() string
- func (e *Editor) Selection() (start, end int)
- func (e *Editor) SelectionLen() int
- func (e *Editor) SetCaret(start, end int)
- func (e *Editor) SetChange(changeFn func(txt string)) *Editor
- func (e *Editor) SetFocus(focusFn func(is bool)) *Editor
- func (e *Editor) SetSubmit(submitFn func(txt string)) *Editor
- func (e *Editor) SetText(s string) *Editor
- func (e *Editor) SingleLine() *Editor
- func (e *Editor) Submit(submit bool) *Editor
- func (e *Editor) Text() string
- type EditorEvent
- type Enum
- type Filler
- type Fit
- type Flex
- func (f *Flex) AlignBaseline() (out *Flex)
- func (f *Flex) AlignEnd() (out *Flex)
- func (f *Flex) AlignMiddle() (out *Flex)
- func (f *Flex) AlignStart() (out *Flex)
- func (f *Flex) Flexed(wgt float32, w l.Widget) (out *Flex)
- func (f *Flex) Fn(c l.Context) l.Dimensions
- func (f *Flex) Rigid(w l.Widget) (out *Flex)
- func (f *Flex) SpaceAround() (out *Flex)
- func (f *Flex) SpaceBetween() (out *Flex)
- func (f *Flex) SpaceEnd() (out *Flex)
- func (f *Flex) SpaceEvenly() (out *Flex)
- func (f *Flex) SpaceSides() (out *Flex)
- func (f *Flex) SpaceStart() (out *Flex)
- func (f *Flex) Vertical() (out *Flex)
- type Float
- type Fonts
- type Icon
- type IconButton
- func (b *IconButton) Background(color string) *IconButton
- func (b *IconButton) ButtonInset(inset float32) *IconButton
- func (b *IconButton) Color(color string) *IconButton
- func (b *IconButton) Corners(corners int) *IconButton
- func (b *IconButton) Fn(gtx l.Context) l.Dimensions
- func (b *IconButton) Icon(ic *Icon) *IconButton
- func (b *IconButton) Scale(scale float32) *IconButton
- func (b *IconButton) SetCancel(fn func()) *IconButton
- func (b *IconButton) SetClick(fn func()) *IconButton
- func (b *IconButton) SetPress(fn func()) *IconButton
- type IconByColor
- type IconBySize
- type IconCache
- type Icons
- type Image
- type IncDec
- func (in *IncDec) Amount(n int) *IncDec
- func (in *IncDec) Background(color string) *IncDec
- func (in *IncDec) ChangeHook(fn func(n int)) *IncDec
- func (in *IncDec) Color(color string) *IncDec
- func (in *IncDec) Fn(gtx l.Context) l.Dimensions
- func (in *IncDec) GetCurrent() int
- func (in *IncDec) Inactive(color string) *IncDec
- func (in *IncDec) Max(max int) *IncDec
- func (in *IncDec) Min(min int) *IncDec
- func (in *IncDec) NDigits(nDigits int) *IncDec
- func (in *IncDec) Scale(n float32) *IncDec
- func (in *IncDec) SetCurrent(current int) *IncDec
- type Indefinite
- type Input
- type Inset
- type IntSlider
- type Label
- func (l *Label) Alignment(alignment text.Alignment) *Label
- func (l *Label) Color(color string) *Label
- func (l *Label) Fn(gtx l.Context) l.Dimensions
- func (l *Label) Font(font string) *Label
- func (l *Label) MaxLines(maxLines int) *Label
- func (l *Label) Text(text string) *Label
- func (l *Label) TextScale(scale float32) *Label
- type List
- func (li *List) Active(color string) *List
- func (li *List) Background(color string) *List
- func (li *List) Baseline() *List
- func (li *List) Color(color string) *List
- func (li *List) DisableScroll(disable bool) *List
- func (li *List) Dragging() bool
- func (li *List) End() *List
- func (li *List) Fn(gtx l.Context) l.Dimensions
- func (li *List) JumpToEnd()
- func (li *List) JumpToStart()
- func (li *List) Layout(gtx l.Context, len int, w ListElement) l.Dimensions
- func (li *List) LeftSide(b bool) (out *List)
- func (li *List) Length(length int) *List
- func (li *List) ListElement(w ListElement) *List
- func (li *List) Middle() *List
- func (li *List) Position() Position
- func (li *List) ScrollToEnd() (out *List)
- func (li *List) ScrollWidth(width int) *List
- func (li *List) SetPosition(position Position)
- func (li *List) Slice(gtx l.Context, widgets ...l.Widget) l.Widget
- func (li *List) Start() *List
- func (li *List) Vertical() (out *List)
- type ListElement
- type Multi
- type Password
- type Pool
- func (p *Pool) FreeBool(b *Bool)
- func (p *Pool) FreeCheckable(b *Checkable)
- func (p *Pool) FreeClickable(b *Clickable)
- func (p *Pool) FreeEditor(b *Editor)
- func (p *Pool) FreeIncDec(b *IncDec)
- func (p *Pool) FreeList(b *List)
- func (p *Pool) GetBool() (out *Bool)
- func (p *Pool) GetCheckable() (out *Checkable)
- func (p *Pool) GetClickable() (out *Clickable)
- func (p *Pool) GetEditor() (out *Editor)
- func (p *Pool) GetIncDec() (out *IncDec)
- func (p *Pool) GetList() (out *List)
- func (p *Pool) Reset()
- type Position
- type ProgressBar
- type RadioButton
- type Responsive
- type Rows
- type ScaleType
- type SelectEvent
- type Slider
- type Stack
- type SubmitEvent
- type Switch
- type Table
- type Text
- type TextInput
- func (ti *TextInput) Color(color string) *TextInput
- func (ti *TextInput) Fn(gtx l.Context) l.Dimensions
- func (ti *TextInput) Font(font string) *TextInput
- func (ti *TextInput) Hint(hint string) *TextInput
- func (ti *TextInput) HintColor(color string) *TextInput
- func (ti *TextInput) SelectionColor(color string) *TextInput
- func (ti *TextInput) TextScale(scale float32) *TextInput
- type TextTable
- type TextTableBody
- type TextTableHeader
- type TextTableRow
- type Theme
- type WidgetMap
- type WidgetSize
- type Widgets
- type Window
- func (w *Window) App(size *atomic.Int32, activePage *atomic.String, Break1 float32) *App
- func (w *Window) Body1(txt string) (l *Label)
- func (w *Window) Body2(txt string) (l *Label)
- func (w *Window) Bool(value bool) *Bool
- func (w *Window) Border() *Border
- func (w *Window) Button(btn *Clickable) *Button
- func (w *Window) ButtonLayout(button *Clickable) *ButtonLayout
- func (w *Window) Caption(txt string) (l *Label)
- func (w *Window) Card(background string, embed l.Widget) func(gtx l.Context) l.Dimensions
- func (w *Window) CardContent(title, color string, embed l.Widget) func(gtx l.Context) l.Dimensions
- func (w *Window) CardList(list *List, background string, widgets ...l.Widget) func(gtx l.Context) l.Dimensions
- func (w *Window) CheckBox(checkBox *Bool) *Checkbox
- func (w *Window) Checkable() *Checkable
- func (w *Window) Clickable() (c *Clickable)
- func (w *Window) Column(rows Rows, font string, scale float32, color string, background string) *Column
- func (w *Window) Direction() (out *Direction)
- func (w *Window) Editor() *Editor
- func (w *Window) Enum() *Enum
- func (w *Window) Fill(col string, dxn l.Direction, radius float32, corners int, embed l.Widget) *Filler
- func (w *Window) H1(txt string) (l *Label)
- func (w *Window) H2(txt string) (l *Label)
- func (w *Window) H3(txt string) (l *Label)
- func (w *Window) H4(txt string) (l *Label)
- func (w *Window) H5(txt string) (l *Label)
- func (w *Window) H6(txt string) (l *Label)
- func (w *Window) Icon() *Icon
- func (w *Window) IconButton(button *Clickable) *IconButton
- func (w *Window) IncDec() (out *IncDec)
- func (w *Window) Indefinite() *Indefinite
- func (w *Window) Input(txt, hint, borderColorFocused, borderColorUnfocused, backgroundColor string, ...) *Input
- func (w *Window) Inset(pad float32, embed l.Widget) (out *Inset)
- func (w *Window) IntSlider() *IntSlider
- func (w *Window) Label() (l *Label)
- func (w *Window) List() (li *List)
- func (w *Window) Multiline(txt *[]string, ...) (m *Multi)
- func (w *Window) NewPool() *Pool
- func (w *Window) Open() (out *Window)
- func (w *Window) Overlay(gtx l.Context)
- func (w *Window) Password(hint string, password *text.Opt, ...) *Password
- func (w *Window) PopOverlay(overlay *func(gtx l.Context))
- func (w *Window) ProgressBar() *ProgressBar
- func (w *Window) PushOverlay(overlay *func(gtx l.Context))
- func (w *Window) RadioButton(checkable *Checkable, group *Enum, key, label string) *RadioButton
- func (w *Window) Run(frame func(ctx l.Context) l.Dimensions, destroy func(), quit qu.C) (e error)
- func (w *Window) Scale(s float32) *Window
- func (w *Window) Size(width, height float32) (out *Window)
- func (w *Window) Slider() *Slider
- func (w *Window) Stack() (out *Stack)
- func (w *Window) Switch(swtch *Bool) *Switch
- func (w *Window) Table() *Table
- func (w *Window) Text() *Text
- func (w *Window) TextInput(editor *Editor, hint string) *TextInput
- func (w *Window) Title(title string) (out *Window)
- func (w *Window) WrapList() *WrapList
- type WrapList
Constants ¶
const ( NW = 1 << iota NE SW SE )
const Inf = 1e6
Variables ¶
var F, E, W, I, D, T = log.GetLogPrinterSet(log.AddLoggerSubsystem(version.PathBase))
var Scales = ScaleType{
"H1": 96.0 / 16.0,
"H2": 60.0 / 16.0,
"H3": 48.0 / 16.0,
"H4": 34.0 / 16.0,
"H5": 24.0 / 16.0,
"H6": 20.0 / 16.0,
"Body1": 1,
"Body2": 14.0 / 16.0,
"Caption": 12.0 / 16.0,
}
Scales is the ratios against
TODO: shouldn't that 16.0 be the text size in the theme?
Functions ¶
func CopyContextDimensionsWithMaxAxis ¶
CopyContextDimensionsWithMaxAxis copies the dimensions out with the max set by an image.Point along the axis
func EmptyFromSize ¶
func EmptyMaxHeight ¶
func EmptyMaxHeight() func(gtx l.Context) l.Dimensions
func EmptyMaxWidth ¶
func EmptyMaxWidth() func(gtx l.Context) l.Dimensions
func EmptyMinHeight ¶
func EmptyMinHeight() func(gtx l.Context) l.Dimensions
func EmptyMinWidth ¶
func EmptyMinWidth() func(gtx l.Context) l.Dimensions
func EmptySpace ¶
func EmptySpace(x, y int) func(gtx l.Context) l.Dimensions
func GetDimension ¶
func GetInfContext ¶
GetInfContext creates a context with infinite max constraints
Types ¶
type App ¶
type App struct { *Window Logo *[]byte LogoClickable *Clickable MenuOpen bool SideBarSize *unit.Value Size *atomic.Int32 PreRendering bool Break1 float32 // contains filtered or unexported fields }
App defines an application with a header, sidebar/menu, right side button bar, changeable body page widget and pop-over layers
func (*App) ActivePage ¶
func (*App) ActivePageGet ¶
func (*App) ActivePageGetAtomic ¶
func (*App) AppTitleText ¶
func (*App) BodyBackground ¶
func (*App) BodyBackgroundGet ¶
func (*App) BodyColorGet ¶
func (*App) ButtonBarGet ¶
func (*App) CardBackground ¶
func (*App) CardBackgroundGet ¶
func (*App) CardColorGet ¶
func (*App) DimensionCaption ¶
func (a *App) DimensionCaption(gtx l.Context) l.Dimensions
func (*App) HideSideBar ¶
func (*App) HideSideBarGet ¶
func (*App) HideTitleBar ¶
func (*App) HideTitleBarGet ¶
func (*App) LogoAndTitle ¶
func (a *App) LogoAndTitle(gtx l.Context) l.Dimensions
func (*App) MainDirection ¶
func (*App) MenuBackground ¶
func (*App) MenuBackgroundGet ¶
func (*App) MenuButton ¶
func (a *App) MenuButton(gtx l.Context) l.Dimensions
func (*App) MenuColorGet ¶
func (*App) MenuIconGet ¶
func (*App) NoMenuButton ¶
func (a *App) NoMenuButton(_ l.Context) l.Dimensions
func (*App) Placeholder ¶
func (*App) RenderButtonBar ¶
func (a *App) RenderButtonBar(gtx l.Context) l.Dimensions
func (*App) RenderHeader ¶
func (a *App) RenderHeader(gtx l.Context) l.Dimensions
func (*App) RenderPage ¶
func (a *App) RenderPage(gtx l.Context) l.Dimensions
func (*App) RenderStatusBar ¶
func (a *App) RenderStatusBar(gtx l.Context) l.Dimensions
func (*App) SetAppTitleText ¶
func (*App) SideBarBackground ¶
func (*App) SideBarBackgroundGet ¶
func (*App) SideBarColor ¶
func (*App) SideBarColorGet ¶
func (*App) SideBarGet ¶
func (*App) StatusBarBackground ¶
func (*App) StatusBarBackgroundGet ¶
func (*App) StatusBarColor ¶
func (*App) StatusBarColorGet ¶
func (*App) StatusBarGet ¶
func (*App) TitleBarBackground ¶
func (*App) TitleBarBackgroundGet ¶
func (*App) TitleBarColor ¶
func (*App) TitleBarColorGet ¶
func (*App) TitleFontGet ¶
type Bool ¶
type Bool struct { *Window // contains filtered or unexported fields }
func (*Bool) Fn ¶
func (b *Bool) Fn(gtx l.Context) l.Dimensions
Fn renders the events of the boolean widget
func (*Bool) History ¶
func (b *Bool) History() []press
History returns the history of presses in the buffer
func (*Bool) SetOnChange ¶
SetOnChange sets the callback function to run when the state changes
type Border ¶
type Border struct { *Window // contains filtered or unexported fields }
Border lays out a widget and draws a border inside it.
func (*Border) CornerRadius ¶
CornerRadius sets the radius of the curve on the corners
type Button ¶
type Button struct { *Window // contains filtered or unexported fields }
Button is a material text label icon with options to change all features
func (*Button) Background ¶
Background sets the background color
func (*Button) CornerRadius ¶
CornerRadius sets the corner radius (all measurements are scaled from the base text size)
func (*Button) SetCancel ¶
SetCancel sets the callback to run when the user presses down over the button but then moves out of its hitbox before release (click)
type ButtonLayout ¶
type ButtonLayout struct { *Window // contains filtered or unexported fields }
func (*ButtonLayout) Background ¶
func (b *ButtonLayout) Background(color string) *ButtonLayout
Background sets the background color of the button
func (*ButtonLayout) CornerRadius ¶
func (b *ButtonLayout) CornerRadius(radius float32) *ButtonLayout
CornerRadius sets the radius of the corners of the button
func (*ButtonLayout) Corners ¶
func (b *ButtonLayout) Corners(corners int) *ButtonLayout
Corners sets which corners have the radius of rounding
func (*ButtonLayout) Embed ¶
func (b *ButtonLayout) Embed(w l.Widget) *ButtonLayout
Embed a widget in the button
func (*ButtonLayout) Fn ¶
func (b *ButtonLayout) Fn(gtx l.Context) l.Dimensions
Fn is the function that draws the button and its child widget
func (*ButtonLayout) SetCancel ¶
func (b *ButtonLayout) SetCancel(fn func()) *ButtonLayout
func (*ButtonLayout) SetClick ¶
func (b *ButtonLayout) SetClick(fn func()) *ButtonLayout
func (*ButtonLayout) SetPress ¶
func (b *ButtonLayout) SetPress(fn func()) *ButtonLayout
type CallbackQueue ¶
type CallbackQueue chan func() error
func NewCallbackQueue ¶
func NewCallbackQueue(bufSize int) CallbackQueue
type Cell ¶
type Cell struct { l.Widget // priority only has meaning for the header row in defining an order of eliminating elements to fit a width. // When trimming size to fit width add from highest to lowest priority and stop when dimensions exceed the target. Priority int // contains filtered or unexported fields }
type CellPriorities ¶
type CellPriorities []CellPriority
func (CellPriorities) Less ¶
func (c CellPriorities) Less(i, j int) bool
func (CellPriorities) Swap ¶
func (c CellPriorities) Swap(i, j int)
type CellPriority ¶
type CellRow ¶
type CellRow []Cell
func (CellRow) GetPriority ¶
func (c CellRow) GetPriority() (out CellPriorities)
type ChangeEvent ¶
type ChangeEvent struct{}
A ChangeEvent is generated for every user change to the text.
type Checkable ¶
type Checkable struct { *Window // contains filtered or unexported fields }
func (*Checkable) CheckedStateIcon ¶
CheckedStateIcon loads the icon for the checked state
func (*Checkable) UncheckedStateIcon ¶
UncheckedStateIcon loads the icon for the unchecked state
type Checkbox ¶
type Checkbox struct { *Checkable // contains filtered or unexported fields }
func (*Checkbox) SetOnChange ¶
SetOnChange sets the callback when a state change event occurs
type Clickable ¶
type Clickable struct { *Window Events clickEvents // contains filtered or unexported fields }
Clickable represents a clickable area.
func (*Clickable) Clicked ¶
Clicked reports whether there are pending clicks as would be reported by Clicks. If so, Clicked removes the earliest click.
func (*Clickable) Clicks ¶
func (c *Clickable) Clicks() []click
Clicks returns and clear the clicks since the last call to Clicks.
type Collection ¶
type Colors ¶
Colors is a map of names to hex strings specifying colors
func (*Colors) GetNRGBAFromName ¶
GetNRGBAFromName returns the named color from the map
func (*Colors) SetDarkTheme ¶
SetDarkTheme to dark or light
type DimensionList ¶
type DimensionList []l.Dimensions
func GetDimensionList ¶
func GetDimensionList( gtx l.Context, length int, listElement ListElement, ) (dims DimensionList)
GetDimensionList returns a dimensionlist based on the given listelement
func (DimensionList) CoordinateToPosition ¶
func (d DimensionList) CoordinateToPosition( coordinate int, axis l.Axis, ) (position Position)
CoordinateToPosition converts an absolute coordinate to a list position
func (DimensionList) GetSizes ¶
func (d DimensionList) GetSizes( position Position, axis l.Axis, ) (total, before int)
func (DimensionList) PositionToCoordinate ¶
func (d DimensionList) PositionToCoordinate( position Position, axis l.Axis, ) (coordinate int)
PositionToCoordinate converts a list position to absolute coordinate
type Direction ¶
func (*Direction) Fn ¶
func (d *Direction) Fn(c l.Context) l.Dimensions
Fn the given widget given the context and direction
type Editor ¶
type Editor struct {
// contains filtered or unexported fields
}
Editor implements an editable and scrollable text area.
func (*Editor) CaretCoords ¶
CaretCoords returns the coordinates of the caret, relative to the editor itself.
func (*Editor) ClearSelection ¶
func (e *Editor) ClearSelection()
ClearSelection clears the selection, by setting the selection end equal to the selection start.
func (*Editor) Delete ¶
Delete runes from the caret position. The sign of runes specifies the direction to delete: positive is forward, negative is backward.
If there is a selection, it is deleted and counts as a single rune.
func (*Editor) Events ¶
func (e *Editor) Events() []EditorEvent
Events returns available editor events.
func (*Editor) Insert ¶
Insert inserts text at the caret, moving the caret forward. If there is a selection, Insert overwrites it.
func (*Editor) Layout ¶
func (e *Editor) Layout( gtx layout.Context, sh text.Shaper, font text.Font, size unit.Value, ) layout.Dimensions
Layout lays out the editor.
func (*Editor) MoveCaret ¶
MoveCaret moves the caret (aka selection start) and the selection end relative to their current positions. Positive distances moves forward, negative distances moves backward. Distances are in runes.
func (*Editor) PaintCaret ¶
func (*Editor) PaintSelection ¶
PaintSelection paints the contrasting background for selected text.
func (*Editor) SelectedText ¶
SelectedText returns the currently selected text (if any) from the editor.
func (*Editor) Selection ¶
Selection returns the start and end of the selection, as offsets into the editor text. start can be > end.
func (*Editor) SelectionLen ¶
SelectionLen returns the length of the selection, in bytes; it is equivalent to len(e.SelectedText()).
func (*Editor) SetCaret ¶
SetCaret moves the caret to start, and sets the selection end to end. start and end are in bytes, and represent offsets into the editor text. start and end must be at a rune boundary.
func (*Editor) SingleLine ¶
type EditorEvent ¶
type EditorEvent interface {
// contains filtered or unexported methods
}
type Enum ¶
type Enum struct {
// contains filtered or unexported fields
}
func (*Enum) Changed ¶
Changed reports whether Value has changed by user interaction since the last call to Changed.
func (*Enum) SetOnChange ¶
type Filler ¶
type Filler struct { *Window // contains filtered or unexported fields }
Filler fills the background of a widget with a specified color and corner radius
type Fit ¶
type Fit uint8
Fit scales a widget to fit and clip to the constraints.
const ( // Unscaled does not alter the scale of a widget. Unscaled Fit = iota // Contain scales widget as large as possible without cropping // and it preserves aspect-ratio. Contain // Cover scales the widget to cover the constraint area and // preserves aspect-ratio. Cover // ScaleDown scales the widget smaller without cropping, // when it exceeds the constraint area. // It preserves aspect-ratio. ScaleDown // Stretch stretches the widget to the constraints and does not // preserve aspect-ratio. Stretch )
type Flex ¶
type Flex struct {
// contains filtered or unexported fields
}
func (*Flex) AlignBaseline ¶
AlignBaseline sets alignment for layout from Baseline
func (*Flex) AlignMiddle ¶
AlignMiddle sets alignment for layout from Middle
func (*Flex) AlignStart ¶
AlignStart sets alignment for layout from Start
func (*Flex) Fn ¶
func (f *Flex) Fn(c l.Context) l.Dimensions
Fn runs the ops in the context using the FlexChildren inside it
func (*Flex) SpaceAround ¶
SpaceAround sets the corresponding flex spacing parameter
func (*Flex) SpaceBetween ¶
SpaceBetween sets the corresponding flex spacing parameter
func (*Flex) SpaceEvenly ¶
SpaceEvenly sets the corresponding flex spacing parameter
func (*Flex) SpaceSides ¶
SpaceSides sets the corresponding flex spacing parameter
func (*Flex) SpaceStart ¶
SpaceStart sets the corresponding flex spacing parameter
type Float ¶
type Float struct {
// contains filtered or unexported fields
}
Float is for selecting a value in a range.
func (*Float) Changed ¶
Changed reports whether the value has changed since the last call to Changed.
type Icon ¶
type Icon struct { *Window // contains filtered or unexported fields }
func (*Icon) Color ¶
Color sets the color of the icon image. It must be called before creating the image
type IconButton ¶
type IconButton struct { *Window // contains filtered or unexported fields }
func (*IconButton) Background ¶
func (b *IconButton) Background(color string) *IconButton
Background sets the color of the circular background
func (*IconButton) ButtonInset ¶
func (b *IconButton) ButtonInset(inset float32) *IconButton
ButtonInset sets the size of inset that goes in between the button background and the icon
func (*IconButton) Color ¶
func (b *IconButton) Color(color string) *IconButton
Color sets the color of the icon
func (*IconButton) Corners ¶
func (b *IconButton) Corners(corners int) *IconButton
Corners sets the corners that will be circular
func (*IconButton) Fn ¶
func (b *IconButton) Fn(gtx l.Context) l.Dimensions
Fn renders the icon button
func (*IconButton) Icon ¶
func (b *IconButton) Icon(ic *Icon) *IconButton
Icon sets the icon to display
func (*IconButton) Scale ¶
func (b *IconButton) Scale(scale float32) *IconButton
Scale changes the size of the icon as a ratio of the base font size
func (*IconButton) SetCancel ¶
func (b *IconButton) SetCancel(fn func()) *IconButton
SetCancel sets the function to run on cancel (click but release outside)
func (*IconButton) SetClick ¶
func (b *IconButton) SetClick(fn func()) *IconButton
SetClick sets the function to run on click
func (*IconButton) SetPress ¶
func (b *IconButton) SetPress(fn func()) *IconButton
SetPress sets the function to run on press
type IconBySize ¶
type IconBySize map[float32]IconByColor
type IconCache ¶
type IconCache map[*[]byte]IconBySize
type Image ¶
type Image struct {
// contains filtered or unexported fields
}
Image is a widget that displays an image.
type IncDec ¶
type IncDec struct { *Window // contains filtered or unexported fields }
func (*IncDec) Background ¶
func (*IncDec) ChangeHook ¶
func (*IncDec) GetCurrent ¶
func (*IncDec) SetCurrent ¶
type Indefinite ¶
type Indefinite struct { *Window // contains filtered or unexported fields }
func (*Indefinite) Color ¶
func (lo *Indefinite) Color(color string) *Indefinite
Color sets the color of the spinner
func (*Indefinite) Scale ¶
func (lo *Indefinite) Scale(scale float32) *Indefinite
Scale sets the size of the spinner
type Input ¶
type Inset ¶
type Inset struct { *Window // contains filtered or unexported fields }
type Label ¶
type Label struct { *Window // contains filtered or unexported fields }
Label is text drawn inside an empty box
type List ¶
type List struct { Len int // all below are additional fields to implement the scrollbar *Window // contains filtered or unexported fields }
List displays a subsection of a potentially infinitely large underlying list. List accepts user input to scroll the subsection.
func (*List) Background ¶
Background sets the background color of the scrollbar
func (*List) DisableScroll ¶
DisableScroll turns off the scrollbar
func (*List) Fn ¶
func (li *List) Fn(gtx l.Context) l.Dimensions
Fn runs the layout in the configured context. The ListElement function returns the widget at the given index
func (*List) JumpToStart ¶
func (li *List) JumpToStart()
JumpToStart moves the position to the start
func (*List) Layout ¶
func (li *List) Layout(gtx l.Context, len int, w ListElement) l.Dimensions
Layout the List.
func (*List) ListElement ¶
func (li *List) ListElement(w ListElement) *List
ListElement defines the function that returns list elements
func (*List) ScrollToEnd ¶
ScrollToEnd sets the List to add new items to the end and push older ones up/left and initial render has scroll to the end (or bottom) of the List
func (*List) ScrollWidth ¶
ScrollWidth sets the width of the scrollbar
func (*List) SetPosition ¶
SetPosition sets the position of the scroller
type ListElement ¶
type ListElement func(gtx l.Context, index int) l.Dimensions
ListElement is a function that computes the dimensions of a list element.
type Multi ¶
type Multi struct { *Window // contains filtered or unexported fields }
func (*Multi) PopulateWidgets ¶
func (*Multi) UpdateWidgets ¶
type Password ¶
type Password struct { *Window // contains filtered or unexported fields }
func (*Password) GetPassword ¶
type Pool ¶
type Pool struct { *Window // contains filtered or unexported fields }
func (*Pool) FreeCheckable ¶
func (*Pool) FreeClickable ¶
func (*Pool) FreeEditor ¶
func (*Pool) FreeIncDec ¶
func (*Pool) GetCheckable ¶
func (*Pool) GetClickable ¶
type Position ¶
type Position struct { // BeforeEnd tracks whether the List position is before the very end. We use "before end" instead of "at end" so // that the zero value of a Position struct is useful. // // When laying out a list, if ScrollToEnd is true and BeforeEnd is false, then First and Offset are ignored, and the // list is drawn with the last item at the bottom. If ScrollToEnd is false then BeforeEnd is ignored. BeforeEnd bool // First is the index of the first visible child. First int // Offset is the distance in pixels from the top edge to the child at index First. Offset int // OffsetLast is the signed distance in pixels from the bottom edge to the // bottom edge of the child at index First+Count. OffsetLast int // Count is the number of visible children. Count int }
Position is a List scroll offset represented as an offset from the top edge of a child element.
type ProgressBar ¶
type ProgressBar struct { *Window // contains filtered or unexported fields }
func (*ProgressBar) Color ¶
func (p *ProgressBar) Color(c string) *ProgressBar
Color sets the color to render the bar in
func (*ProgressBar) Fn ¶
func (p *ProgressBar) Fn(gtx l.Context) l.Dimensions
Fn renders the progress bar as it is currently configured
func (*ProgressBar) SetProgress ¶
func (p *ProgressBar) SetProgress(progress int) *ProgressBar
SetProgress sets the progress of the progress bar
type RadioButton ¶
func (RadioButton) Fn ¶
func (r RadioButton) Fn(gtx l.Context) l.Dimensions
Fn updates enum and displays the radio button.
func (*RadioButton) Group ¶
func (r *RadioButton) Group(group *Enum) *RadioButton
Group sets the enum group of the radio button
func (*RadioButton) Key ¶
func (r *RadioButton) Key(key string) *RadioButton
Key sets the key initially active on the radiobutton
type Responsive ¶
func (*Responsive) Fn ¶
func (r *Responsive) Fn(gtx l.Context) l.Dimensions
type SelectEvent ¶
type SelectEvent struct{}
A SelectEvent is generated when the user selects some text, or changes the selection (e.g. with a shift-click), including if they remove the selection. The selected text is not part of the event, on the theory that it could be a relatively expensive operation (for a large editor), most applications won't actually care about it, and those that do can call Editor.SelectedText() (which can be empty).
type Slider ¶
type Slider struct { *Window // contains filtered or unexported fields }
type Stack ¶
type SubmitEvent ¶
type SubmitEvent struct {
Text string
}
A SubmitEvent is generated when submit is set and a carriage return key is pressed.
type Switch ¶
type Switch struct { *Window // contains filtered or unexported fields }
func (*Switch) DisabledColor ¶
DisabledColor sets the color to draw for the disabled state
func (*Switch) EnabledColor ¶
EnabledColor sets the color to draw for the enabled state
type Table ¶
Table is a super simple table widget that finds the dimensions of all cells, sets all to max of each axis, and then scales the remaining space evenly
func (*Table) CellBackground ¶
func (*Table) HeaderBackground ¶
func (*Table) SetReverse ¶
type Text ¶
type Text struct { *Window // contains filtered or unexported fields }
Text is a widget for laying out and drawing text.
type TextInput ¶
type TextInput struct { *Window // contains filtered or unexported fields }
TextInput is a simple text input widget
func (*TextInput) Fn ¶
func (ti *TextInput) Fn(gtx l.Context) l.Dimensions
Fn renders the text input widget
func (*TextInput) SelectionColor ¶
SelectionColor sets the color to render the text
type TextTable ¶
type TextTable struct { *Window Header TextTableHeader Body TextTableBody HeaderColor string HeaderDarkTheme bool HeaderBackground string HeaderFont string HeaderFontScale float32 CellColor string CellBackground string CellFont string CellFontScale float32 CellInset float32 List *List Table *Table }
TextTable is a widget that renders a scrolling list of rows of data labeled by a header. Note that for the reasons of expedience and performance this widget assumes a growing but immutable list of rows of items. If this is used on data that is not immutable, nilling the body will cause it to be wholly regenerated, updating older content than the longest length the list has reached.
func (*TextTable) Regenerate ¶
Regenerate the text table.
func (*TextTable) SetDefaults ¶
func (*TextTable) SetReverse ¶
type TextTableBody ¶
type TextTableBody []TextTableRow
type TextTableHeader ¶
type TextTableHeader []string
type TextTableRow ¶
type TextTableRow []string
type Theme ¶
type Theme struct { TextSize unit.Value *Colors Dark *binary.Opt WidgetPool *Pool // contains filtered or unexported fields }
func (*Theme) Responsive ¶
func (th *Theme) Responsive(size int32, widgets Widgets) *Responsive
type WidgetSize ¶
WidgetSize is a widget with a specification of the minimum size to select it for viewing. Note that the widgets you put in here should be wrapped in func(l.Context) l.Dimensions otherwise any parameters retrieved from the controlling state variable will be from initialization and not at execution of the widget in the render process
type Widgets ¶
type Widgets []WidgetSize
type Window ¶
type Window struct { *Theme *app.Window Width *uberatomic.Int32 // stores the width at the beginning of render Height *uberatomic.Int32 Runner CallbackQueue ClipboardWriteReqs chan string ClipboardReadReqs chan func(string) ClipboardContent string // contains filtered or unexported fields }
func NewWindowP9 ¶
func NewWindowP9(quit chan struct{}) (out *Window)
NewWindowP9 creates a new window
func (*Window) Button ¶
Button is a regular material text button where all the dimensions, colors, corners and font can be changed
func (*Window) ButtonLayout ¶
func (w *Window) ButtonLayout(button *Clickable) *ButtonLayout
ButtonLayout creates a button with a background and another widget over top
func (*Window) CardContent ¶
func (*Window) Direction ¶
Direction creates a directional layout that sets its contents to align according to the configured direction (8 cardinal directions and centered)
func (*Window) Fill ¶
func (w *Window) Fill( col string, dxn l.Direction, radius float32, corners int, embed l.Widget, ) *Filler
Fill fills underneath a widget you can put over top of it, dxn sets which direction to place a smaller object, cardinal axes and center
func (*Window) IconButton ¶
func (w *Window) IconButton(button *Clickable) *IconButton
IconButton creates an icon with a circular *optional non-round corners* background and an icon placed in the centre
func (*Window) Indefinite ¶
func (w *Window) Indefinite() *Indefinite
Indefinite creates an indefinite loading animation icon
func (*Window) PopOverlay ¶
func (*Window) ProgressBar ¶
func (w *Window) ProgressBar() *ProgressBar
ProgressBar renders a horizontal bar with an indication of completion of a process
func (*Window) PushOverlay ¶
func (*Window) RadioButton ¶
func (w *Window) RadioButton( checkable *Checkable, group *Enum, key, label string, ) *RadioButton
RadioButton returns a RadioButton with a label. The key specifies the value for the Enum.
func (*Window) Switch ¶
Switch creates a boolean switch widget (basically a checkbox but looks like a switch)
type WrapList ¶
type WrapList struct { *Window // contains filtered or unexported fields }
WrapList is a generalised layout for creating lists from widgets lined up in one axis and wrapped into lines across a given axis. It can be used for an icon view, for a text console cell grid, for laying out selectable text.
func (*WrapList) Direction ¶
Direction sets the direction across the axis, for vertical, text.Forwards means left to right, text.Backwards means right to left, and for horizontal, text.Forwards means top to bottom, text.Backwards means bottom to top
Source Files ¶
- app.go
- bool.go
- border.go
- buffer.go
- button.go
- buttonlayout.go
- card.go
- checkable.go
- checkbox.go
- clickable.go
- colors.go
- column.go
- dimensionlist.go
- direction.go
- doc.go
- draggable.go
- editor.go
- enum.go
- fill.go
- fit.go
- flex.go
- float.go
- helpers.go
- icon.go
- iconbutton.go
- image.go
- incdec.go
- indefinite.go
- input.go
- inset.go
- intslider.go
- label.go
- list.go
- log.go
- modal.go
- multi.go
- password.go
- pools.go
- pooltypes.go
- progressbar.go
- radiobutton.go
- responsive.go
- slider.go
- stack.go
- switch.go
- table.go
- text.go
- textinput.go
- texttable.go
- theme.go
- window.go
- wraplist.go
Directories ¶
Path | Synopsis |
---|---|
cmd
|
|
gio
|
|
app
Package app provides a platform-independent interface to operating system functionality for running graphical user interfaces.
|
Package app provides a platform-independent interface to operating system functionality for running graphical user interfaces. |
app/internal/log
Package points standard output, standard error and the standard library package log to the platform logger.
|
Package points standard output, standard error and the standard library package log to the platform logger. |
app/internal/wm
package wm implements platform specific windows and GPU contexts.
|
package wm implements platform specific windows and GPU contexts. |
app/internal/xkb
Package xkb implements a Go interface for the X Keyboard Extension library.
|
Package xkb implements a Go interface for the X Keyboard Extension library. |
app/permission
Package permission includes sub-packages that should be imported by a Gio program or by one of its dependencies to indicate that specific operating-system permissions are required.
|
Package permission includes sub-packages that should be imported by a Gio program or by one of its dependencies to indicate that specific operating-system permissions are required. |
app/permission/bluetooth
Package bluetooth implements permissions to access Bluetooth and Bluetooth Low Energy hardware, including the ability to discover and pair devices.
|
Package bluetooth implements permissions to access Bluetooth and Bluetooth Low Energy hardware, including the ability to discover and pair devices. |
app/permission/camera
Package camera implements permissions to access camera hardware.
|
Package camera implements permissions to access camera hardware. |
app/permission/networkstate
Package networkstate implements permissions to access network connectivity information.
|
Package networkstate implements permissions to access network connectivity information. |
app/permission/storage
Package storage implements read and write storage permissions on mobile devices.
|
Package storage implements read and write storage permissions on mobile devices. |
cmd/gogio
The gogio tool builds and packages Gio programs for Android, iOS/tvOS and WebAssembly.
|
The gogio tool builds and packages Gio programs for Android, iOS/tvOS and WebAssembly. |
f32
Package f32 is a float32 implementation of package image's Point and Rectangle.
|
Package f32 is a float32 implementation of package image's Point and Rectangle. |
font/gofont
Package gofont exports the Go fonts as a text.Collection.
|
Package gofont exports the Go fonts as a text.Collection. |
font/opentype
Package opentype implements text layout and shaping for OpenType files.
|
Package opentype implements text layout and shaping for OpenType files. |
gesture
Package gesture implements common pointer gestures.
|
Package gesture implements common pointer gestures. |
gpu
Package gpu implements the rendering of Gio drawing operations.
|
Package gpu implements the rendering of Gio drawing operations. |
gpu/headless
Package headless implements headless windows for rendering an operation list to an image.
|
Package headless implements headless windows for rendering an operation list to an image. |
gpu/internal/rendertest
Package rendertest is intended for testing of drawing ops only.
|
Package rendertest is intended for testing of drawing ops only. |
internal/byteslice
Package byteslice provides byte slice views of other Go values such as slices and structs.
|
Package byteslice provides byte slice views of other Go values such as slices and structs. |
internal/cocoainit
Package cocoainit initializes support for multithreaded programs in Cocoa.
|
Package cocoainit initializes support for multithreaded programs in Cocoa. |
internal/scene
Package scene encodes and decodes graphics commands in the format used by the compute renderer.
|
Package scene encodes and decodes graphics commands in the format used by the compute renderer. |
internal/stroke
Package stroke implements conversion of strokes to filled outlines.
|
Package stroke implements conversion of strokes to filled outlines. |
io/event
Package event contains the types for event handling.
|
Package event contains the types for event handling. |
io/key
Package key implements key and text events and operations.
|
Package key implements key and text events and operations. |
io/pointer
Package pointer implements pointer events and operations.
|
Package pointer implements pointer events and operations. |
io/profile
Package profiles provides access to rendering profiles.
|
Package profiles provides access to rendering profiles. |
io/router
Package router implements Router, a event.Queue implementation that that disambiguates and routes events to handlers declared in operation lists.
|
Package router implements Router, a event.Queue implementation that that disambiguates and routes events to handlers declared in operation lists. |
io/system
Package system contains events usually handled at the top-level program level.
|
Package system contains events usually handled at the top-level program level. |
layout
Package layout implements layouts common to GUI programs.
|
Package layout implements layouts common to GUI programs. |
op
Package op implements operations for updating a user interface.
|
Package op implements operations for updating a user interface. |
op/clip
Package clip provides operations for clipping paint operations.
|
Package clip provides operations for clipping paint operations. |
op/paint
Package paint provides drawing operations for 2D graphics.
|
Package paint provides drawing operations for 2D graphics. |
unit
Package unit implements device independent units and values.
|
Package unit implements device independent units and values. |
widget
Package widget implements state tracking and event handling of common user interface controls.
|
Package widget implements state tracking and event handling of common user interface controls. |
widget/material
Package material implements the Material design.
|
Package material implements the Material design. |