Documentation ¶
Index ¶
- Constants
- Variables
- func Clickable(gtx layout.Context, button *widget.Clickable, w layout.Widget) layout.Dimensions
- func Disabled(c color.NRGBA) (d color.NRGBA)
- func DrawLine(gtx layout.Context, background color.NRGBA, height, width unit.Dp) layout.Dimensions
- func DrawLineFlex(background color.NRGBA, height, width unit.Dp) layout.FlexChild
- func DrawRect(gtx layout.Context, background color.NRGBA, size f32.Point, radii float32) layout.Dimensions
- func Hovered(c color.NRGBA) (h color.NRGBA)
- func MaterialIcons(name string, theme *chapartheme.Theme) material.LabelStyle
- func MulAlpha(c color.NRGBA, alpha uint8) color.NRGBA
- func SaveButtonLayout(gtx layout.Context, theme *chapartheme.Theme, clickable *widget.Clickable) layout.Dimensions
- type BadgeInput
- type BadgeInputItem
- type ButtonLayoutStyle
- type ButtonStyle
- type CodeEditor
- type DropDown
- func (c *DropDown) GetSelected() *DropDownOption
- func (c *DropDown) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (c *DropDown) SelectedIndex() int
- func (c *DropDown) SetOnChanged(f func(value string))
- func (c *DropDown) SetOptions(options ...*DropDownOption)
- func (c *DropDown) SetSelected(index int)
- func (c *DropDown) SetSelectedByIdentifier(identifier string)
- func (c *DropDown) SetSelectedByTitle(title string)
- func (c *DropDown) SetSelectedByValue(value string)
- func (c *DropDown) SetSize(size image.Point)
- type DropDownOption
- type EditableLabel
- type FlatButton
- type FocusBorderStyle
- type IconButton
- type IconButtonStyle
- type JsonViewer
- type KeyValue
- func (kv *KeyValue) AddItem(item *KeyValueItem)
- func (kv *KeyValue) Filter(text string)
- func (kv *KeyValue) GetItems() []*KeyValueItem
- func (kv *KeyValue) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (kv *KeyValue) SetItems(items []*KeyValueItem)
- func (kv *KeyValue) SetOnChanged(onChanged func(items []*KeyValueItem))
- func (kv *KeyValue) WithAddLayout(gtx layout.Context, title, hint string, theme *chapartheme.Theme) layout.Dimensions
- type KeyValueItem
- type LabeledInput
- type Notif
- type Notification
- type Option
- type Prompt
- func (p *Prompt) Hide()
- func (p *Prompt) IsVisible() bool
- func (p *Prompt) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (p *Prompt) Result() (string, bool)
- func (p *Prompt) SetOnSubmit(f func(selectedOption string, remember bool))
- func (p *Prompt) SetOptions(options ...Option)
- func (p *Prompt) Show()
- func (p *Prompt) WithRememberBool()
- func (p *Prompt) WithoutRememberBool()
- type Rect
- type SplitView
- type Tab
- type Tabs
- func (tabs *Tabs) AddTab(tab *Tab) int
- func (tabs *Tabs) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (tabs *Tabs) RemoveTabByID(id string)
- func (tabs *Tabs) Selected() int
- func (tabs *Tabs) SelectedTab() *Tab
- func (tabs *Tabs) SetMaxTitleWidth(maxWidth int)
- func (tabs *Tabs) SetSelected(index int)
- func (tabs *Tabs) SetSelectedByID(id string)
- func (tabs *Tabs) SetTabs(items []*Tab)
- type TextField
- func (t *TextField) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (t *TextField) SetBorderColor(color color.NRGBA)
- func (t *TextField) SetIcon(icon *widget.Icon, position int)
- func (t *TextField) SetMinWidth(width int)
- func (t *TextField) SetOnTextChange(f func(text string))
- func (t *TextField) SetText(text string)
- type TreeNode
- type TreeView
- func (t *TreeView) AddChildNode(parentIdentifier string, child *TreeNode)
- func (t *TreeView) AddNode(node *TreeNode)
- func (t *TreeView) ExpandNode(identifier string)
- func (t *TreeView) Filter(text string)
- func (t *TreeView) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
- func (t *TreeView) LayoutTreeNode(gtx layout.Context, theme *chapartheme.Theme, node *TreeNode) layout.Dimensions
- func (t *TreeView) OnNodeClick(fn func(tr *TreeNode))
- func (t *TreeView) OnNodeDoubleClick(fn func(tr *TreeNode))
- func (t *TreeView) RemoveNode(identifier string)
- func (t *TreeView) SetNodes(nodes []*TreeNode)
- func (t *TreeView) SetOnMenuItemClick(fn func(tr *TreeNode, item string))
Constants ¶
const ( FlatButtonIconStart = 0 FlatButtonIconEnd = 1 FlatButtonIconTop = 2 FlatButtonIconDown = 3 )
const ( ModalTypeInfo = "info" ModalTypeWarn = "warn" ModalTypeErr = "err" )
Prompt is a modal dialog that prompts the user for a response.
const ( IconPositionStart = 0 IconPositionEnd = 1 )
Variables ¶
var ArrowDropDownIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationArrowDropDown) return icon }()
var CircleIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ImageLens) return icon }()
var CloseIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationClose) return icon }()
var ConsoleIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.HardwareDesktopMac) return icon }()
var CopyIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ContentContentCopy) return icon }()
var DarkIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSubject) return icon }()
var DeleteIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionDelete) return icon }()
var EditIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ContentCreate) return icon }()
var ExpandIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationExpandMore) return icon }()
var FileFolderIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.FileFolder) return icon }()
var ForwardIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationChevronRight) return icon }()
var HeartIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionFavorite) return icon }()
var HomeIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionHome) return icon }()
var LogsIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSubject) return icon }()
var MenuIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationMenu) return icon }()
var MoreVertIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationMoreVert) return icon }()
var OtherIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionHelp) return icon }()
var PlusIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ContentAdd) return icon }()
var SaveIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ContentSave) return icon }()
var SearchIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSearch) return icon }()
var SendIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ContentSend) return icon }()
var SettingsIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSettings) return icon }()
var SwapHoriz *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSwapHoriz) return icon }()
var TunnelIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionSwapVerticalCircle) return icon }()
var UploadIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.FileFileUpload) return icon }()
var VisibilityIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.ActionVisibility) return icon }()
var WorkspacesIcon *widget.Icon = func() *widget.Icon { icon, _ := widget.NewIcon(icons.NavigationApps) return icon }()
Functions ¶
func Disabled ¶
Disabled blends color towards the luminance and multiplies alpha. Blending towards luminance will desaturate the color. Multiplying alpha blends the color together more with the background.
func DrawLineFlex ¶
func DrawRect ¶
func DrawRect(gtx layout.Context, background color.NRGBA, size f32.Point, radii float32) layout.Dimensions
DrawRect creates a rectangle of the provided background color with Dimensions specified by size and a corner radius (on all corners) specified by radii.
func Hovered ¶
Hovered blends dark colors towards white, and light colors towards black. It is approximate because it operates in non-linear sRGB space.
func MaterialIcons ¶
func MaterialIcons(name string, theme *chapartheme.Theme) material.LabelStyle
func SaveButtonLayout ¶
func SaveButtonLayout(gtx layout.Context, theme *chapartheme.Theme, clickable *widget.Clickable) layout.Dimensions
Types ¶
type BadgeInput ¶
type BadgeInput struct { Items []*BadgeInputItem // contains filtered or unexported fields }
func NewBadgeInput ¶
func NewBadgeInput(items ...*BadgeInputItem) *BadgeInput
func (*BadgeInput) AddItem ¶
func (b *BadgeInput) AddItem(identifier, value string)
func (*BadgeInput) GetValues ¶
func (b *BadgeInput) GetValues() map[string]string
func (*BadgeInput) Layout ¶
func (b *BadgeInput) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*BadgeInput) SetOnChange ¶
func (b *BadgeInput) SetOnChange(f func(values map[string]string))
type BadgeInputItem ¶
type ButtonLayoutStyle ¶
type ButtonLayoutStyle struct { Background color.NRGBA CornerRadius unit.Dp Button *widget.Clickable }
func (ButtonLayoutStyle) Layout ¶
func (b ButtonLayoutStyle) Layout(gtx layout.Context, w layout.Widget) layout.Dimensions
type ButtonStyle ¶
type ButtonStyle struct { Text string Icon *widget.Icon IconPosition int // Color is the text color. Color color.NRGBA Font font.Font TextSize unit.Sp Background color.NRGBA CornerRadius unit.Dp Inset layout.Inset Button *widget.Clickable // contains filtered or unexported fields }
func (ButtonStyle) Layout ¶
func (b ButtonStyle) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
type CodeEditor ¶
type CodeEditor struct {
// contains filtered or unexported fields
}
func NewCodeEditor ¶
func NewCodeEditor(code string, _ string, theme *chapartheme.Theme) *CodeEditor
func (*CodeEditor) Code ¶
func (c *CodeEditor) Code() string
func (*CodeEditor) Layout ¶
func (c *CodeEditor) Layout(gtx layout.Context, theme *chapartheme.Theme, hint string) layout.Dimensions
func (*CodeEditor) SetCode ¶
func (c *CodeEditor) SetCode(code string)
func (*CodeEditor) SetLanguage ¶
func (c *CodeEditor) SetLanguage(_ string)
func (*CodeEditor) SetOnChanged ¶
func (c *CodeEditor) SetOnChanged(f func(text string))
type DropDown ¶
func NewDropDown ¶
func NewDropDown(theme *chapartheme.Theme, options ...*DropDownOption) *DropDown
func NewDropDownWithoutBorder ¶
func NewDropDownWithoutBorder(theme *chapartheme.Theme, options ...*DropDownOption) *DropDown
func (*DropDown) GetSelected ¶
func (c *DropDown) GetSelected() *DropDownOption
func (*DropDown) Layout ¶
func (c *DropDown) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
Layout the DropDown.
func (*DropDown) SelectedIndex ¶
func (*DropDown) SetOnChanged ¶
func (*DropDown) SetOptions ¶
func (c *DropDown) SetOptions(options ...*DropDownOption)
func (*DropDown) SetSelected ¶
func (*DropDown) SetSelectedByIdentifier ¶
func (*DropDown) SetSelectedByTitle ¶
func (*DropDown) SetSelectedByValue ¶
type DropDownOption ¶
type DropDownOption struct { Text string Value string Identifier string // contains filtered or unexported fields }
func NewDropDownDivider ¶
func NewDropDownDivider() *DropDownOption
func NewDropDownOption ¶
func NewDropDownOption(text string) *DropDownOption
func (*DropDownOption) DefaultSelected ¶
func (o *DropDownOption) DefaultSelected() *DropDownOption
func (*DropDownOption) WithIdentifier ¶
func (o *DropDownOption) WithIdentifier(identifier string) *DropDownOption
func (*DropDownOption) WithValue ¶
func (o *DropDownOption) WithValue(value string) *DropDownOption
type EditableLabel ¶
type EditableLabel struct { Text string // contains filtered or unexported fields }
func NewEditableLabel ¶
func NewEditableLabel(text string) *EditableLabel
func (*EditableLabel) Layout ¶
func (e *EditableLabel) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*EditableLabel) SetEditing ¶
func (e *EditableLabel) SetEditing(editing bool)
func (*EditableLabel) SetOnChanged ¶
func (e *EditableLabel) SetOnChanged(f func(text string))
func (*EditableLabel) SetReadOnly ¶
func (e *EditableLabel) SetReadOnly(readOnly bool)
func (*EditableLabel) SetText ¶
func (e *EditableLabel) SetText(text string)
type FlatButton ¶
type FlatButton struct { Icon *widget.Icon IconPosition int SpaceBetween unit.Dp Clickable *widget.Clickable MinWidth unit.Dp BackgroundColor color.NRGBA TextColor color.NRGBA Text string CornerRadius int BackgroundPadding unit.Dp ContentPadding unit.Dp }
func (*FlatButton) Layout ¶
func (f *FlatButton) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
type FocusBorderStyle ¶
FocusBorderStyle implements styling of a focused widget.
func FocusBorder ¶
func FocusBorder(th *material.Theme, focused bool) FocusBorderStyle
FocusBorder creates a focus border for a focused widget.
func (FocusBorderStyle) Layout ¶
func (focus FocusBorderStyle) Layout(gtx layout.Context, w layout.Widget) layout.Dimensions
Layout adds a focus border and styling.
type IconButton ¶
type IconButton struct { Icon *widget.Icon Size unit.Dp Color color.NRGBA BackgroundColor color.NRGBA BackgroundColorHover color.NRGBA SkipFocus bool Clickable *widget.Clickable OnClick func() }
func (*IconButton) Layout ¶
func (ib *IconButton) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
type IconButtonStyle ¶
type JsonViewer ¶
type JsonViewer struct {
// contains filtered or unexported fields
}
func NewJsonViewer ¶
func NewJsonViewer() *JsonViewer
func (*JsonViewer) Layout ¶
func (j *JsonViewer) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*JsonViewer) SetData ¶
func (j *JsonViewer) SetData(data string)
type KeyValue ¶
type KeyValue struct { Items []*KeyValueItem // contains filtered or unexported fields }
func NewKeyValue ¶
func NewKeyValue(items ...*KeyValueItem) *KeyValue
func (*KeyValue) AddItem ¶
func (kv *KeyValue) AddItem(item *KeyValueItem)
func (*KeyValue) GetItems ¶
func (kv *KeyValue) GetItems() []*KeyValueItem
func (*KeyValue) Layout ¶
func (kv *KeyValue) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*KeyValue) SetItems ¶
func (kv *KeyValue) SetItems(items []*KeyValueItem)
func (*KeyValue) SetOnChanged ¶
func (kv *KeyValue) SetOnChanged(onChanged func(items []*KeyValueItem))
func (*KeyValue) WithAddLayout ¶
func (kv *KeyValue) WithAddLayout(gtx layout.Context, title, hint string, theme *chapartheme.Theme) layout.Dimensions
type KeyValueItem ¶
type KeyValueItem struct { Identifier string Key string Value string Active bool // contains filtered or unexported fields }
func NewKeyValueItem ¶
func NewKeyValueItem(key, value, identifier string, active bool) *KeyValueItem
type LabeledInput ¶
type LabeledInput struct { Label string SpaceBetween int MinEditorWidth unit.Dp MinLabelWidth unit.Dp Editor *widget.Editor }
func (*LabeledInput) Layout ¶
func (l *LabeledInput) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
type Notification ¶
func (*Notification) Layout ¶
func (n *Notification) Layout(gtx layout.Context, theme *chapartheme.Theme, windowWidth int) layout.Dimensions
type Prompt ¶
type Prompt struct { Title string Content string Type string Visible bool // contains filtered or unexported fields }
func (*Prompt) Layout ¶
func (p *Prompt) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*Prompt) SetOnSubmit ¶
func (*Prompt) SetOptions ¶
func (*Prompt) WithRememberBool ¶
func (p *Prompt) WithRememberBool()
func (*Prompt) WithoutRememberBool ¶
func (p *Prompt) WithoutRememberBool()
type Rect ¶
Rect creates a rectangle of the provided background color with Dimensions specified by size and a corner radius (on all corners) specified by radii.
type SplitView ¶
type Tab ¶
type Tab struct { Title string Identifier string Closable bool CloseClickable *widget.Clickable Meta *safemap.Map[string] // contains filtered or unexported fields }
func (*Tab) GetIdentifier ¶
func (*Tab) IsDataChanged ¶
func (*Tab) SetDataChanged ¶
func (*Tab) SetIdentifier ¶
func (*Tab) SetOnClose ¶
type Tabs ¶
type Tabs struct {
// contains filtered or unexported fields
}
func (*Tabs) Layout ¶
func (tabs *Tabs) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*Tabs) RemoveTabByID ¶
func (*Tabs) SelectedTab ¶
func (*Tabs) SetMaxTitleWidth ¶
func (*Tabs) SetSelected ¶
func (*Tabs) SetSelectedByID ¶
type TextField ¶
type TextField struct { Icon *widget.Icon IconPosition int Text string Placeholder string // contains filtered or unexported fields }
func NewTextField ¶
func (*TextField) Layout ¶
func (t *TextField) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*TextField) SetBorderColor ¶
func (*TextField) SetMinWidth ¶
func (*TextField) SetOnTextChange ¶
type TreeNode ¶
type TreeNode struct { Text string Prefix string PrefixColor color.NRGBA Identifier string Children []*TreeNode DiscloserState component.DiscloserState MenuOptions []string Meta *safemap.Map[string] // contains filtered or unexported fields }
func (*TreeNode) AddChildNode ¶
func (*TreeNode) SetIdentifier ¶
type TreeView ¶
type TreeView struct {
// contains filtered or unexported fields
}
func NewTreeView ¶
func (*TreeView) AddChildNode ¶
func (*TreeView) ExpandNode ¶
func (*TreeView) Layout ¶
func (t *TreeView) Layout(gtx layout.Context, theme *chapartheme.Theme) layout.Dimensions
func (*TreeView) LayoutTreeNode ¶
func (t *TreeView) LayoutTreeNode(gtx layout.Context, theme *chapartheme.Theme, node *TreeNode) layout.Dimensions
LayoutTreeNode recursively lays out a tree of widgets described by TreeNodes.