widget

package
v0.0.18-rc3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 10, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Animation added in v0.0.16

type Animation struct {
	anim.Normal

	Collection map[*fields.QualifiedHash]*ReplyAnimationState
	// contains filtered or unexported fields
}

Animation maintains animation states per reply.

func (*Animation) Lookup added in v0.0.16

Lookup animation state for the given reply. If state doesn't exist, it will be created with using `s` as the beginning status.

func (*Animation) Update added in v0.0.16

Update animation state for the given reply.

type CacheEntry added in v0.0.18

type CacheEntry struct {
	UsedSinceLastFrame bool
	richtext.InteractiveText
}

type Composer added in v0.0.4

type Composer struct {
	CommunityList layout.List
	Community     widget.Enum

	SendButton, CancelButton, PasteButton widget.Clickable
	widget.Editor

	TextState richtext.InteractiveText

	ReplyingTo ds.ReplyData
	// contains filtered or unexported fields
}

Composer holds the state for a widget that creates new arbor nodes.

func (Composer) Composing added in v0.0.15

func (c Composer) Composing() bool

Composing indicates whether the composer is composing a message of any kind.

func (*Composer) ComposingConversation added in v0.0.15

func (c *Composer) ComposingConversation() bool

ComposingConversation returns whether the composer is currently creating a conversation (rather than a new reply within an existing conversation)

func (*Composer) Events added in v0.0.15

func (c *Composer) Events() (out []ComposerEvent)

Events returns state change events for the composer since the last call to events.

func (*Composer) Layout added in v0.0.15

func (c *Composer) Layout(gtx layout.Context) layout.Dimensions

Layout updates the state of the composer

func (*Composer) Reset added in v0.0.15

func (c *Composer) Reset()

Reset clears the internal state of the composer.

func (*Composer) StartConversation added in v0.0.15

func (c *Composer) StartConversation()

StartConversation configures the composer to write a new conversation.

func (*Composer) StartReply added in v0.0.15

func (c *Composer) StartReply(to ds.ReplyData)

StartReply configures the composer to write a reply to the provided ReplyData.

type ComposerEvent added in v0.0.15

type ComposerEvent uint

ComposerEvent represents a change in the Composer's state

const (
	ComposerSubmitted ComposerEvent = iota
	ComposerCancelled
)

type MessageList added in v0.0.16

type MessageList struct {
	layout.List

	States
	ShouldHide     func(reply ds.ReplyData) bool
	StatusOf       func(reply ds.ReplyData) ReplyStatus
	HiddenChildren func(reply ds.ReplyData) int
	UserIsActive   func(identity *fields.QualifiedHash) bool
	Animation
	// contains filtered or unexported fields
}

func (*MessageList) Events added in v0.0.18

func (m *MessageList) Events() []MessageListEvent

Events returns user interactions with the message list that have occurred since the last call to Events().

func (*MessageList) GetTextState added in v0.0.18

GetTextState returns state storage for a node with the given ID, as well as hint text that should be shown when rendering the given node (if any).

func (*MessageList) Layout added in v0.0.18

func (m *MessageList) Layout(gtx layout.Context) layout.Dimensions

Layout updates the state of the message list each frame.

type MessageListEvent added in v0.0.18

type MessageListEvent struct {
	Type MessageListEventType
	// Data contains event-specific content:
	// - LinkOpened: the hyperlink being opened
	// - LinkLongPressed: the hyperlink that was longpressed
	Data string
}

MessageListEvent describes a user interaction with the message list.

type MessageListEventType added in v0.0.18

type MessageListEventType uint8

MessageListEventType is a kind of message list event.

const (
	LinkOpen MessageListEventType = iota
	LinkLongPress
)

type Polyclick added in v0.0.13

type Polyclick struct {
	// The zero value will pass through pointer events by default.
	NoPass bool
	gesture.Click
	// contains filtered or unexported fields
}

Polyclick can detect and report a variety of gesture interactions within a single pointer input area.

func (*Polyclick) Clicks added in v0.0.13

func (p *Polyclick) Clicks() (out []widget.Click)

func (*Polyclick) Layout added in v0.0.13

func (p *Polyclick) Layout(gtx layout.Context) layout.Dimensions

func (*Polyclick) LongPressed added in v0.0.13

func (p *Polyclick) LongPressed() bool

type Reply

type Reply struct {
	Hash    *fields.QualifiedHash
	Content string
	Polyclick
}

Reply holds ui state for each reply.

func (*Reply) WithContent added in v0.0.12

func (r *Reply) WithContent(s string) *Reply

func (*Reply) WithHash added in v0.0.12

func (r *Reply) WithHash(h *fields.QualifiedHash) *Reply

type ReplyAnimationState added in v0.0.16

type ReplyAnimationState struct {
	*anim.Normal
	Begin, End ReplyStatus
}

ReplyAnimationState holds the state of an in-progress animation for a reply. The anim.Normal field defines how far through the animation the node is, and the Begin and End fields define the two states that the node is transitioning between.

type ReplyStatus added in v0.0.16

type ReplyStatus int
const (
	None ReplyStatus = 1 << iota
	Sibling
	Selected
	Ancestor
	Descendant
	ConversationRoot
	// Anchor indicates that this node is visible, but its descendants have been
	// hidden.
	Anchor
	// Hidden indicates that this node is not currently visible.
	Hidden
)

type RichTextCache added in v0.0.18

type RichTextCache struct {
	// contains filtered or unexported fields
}

RichTextCache holds rendered richtext state across frames, discarding any state that is not used during a given frame.

func (*RichTextCache) Frame added in v0.0.18

func (r *RichTextCache) Frame()

Frame purges cache entries that haven't been used since the last frame.

func (*RichTextCache) Get added in v0.0.18

Get returns richtext state for the given id if it exists, and allocates a new state in the cache if it doesn't.

type States added in v0.0.16

type States struct {
	Buffer  []Reply
	Current int
}

States implements a buffer of reply states such that memory is reused each frame, yet grows as the view expands to hold more replies.

func (*States) Begin added in v0.0.16

func (s *States) Begin()

Begin resets the buffer to the start.

func (*States) Next added in v0.0.16

func (s *States) Next() *Reply

type TextForm added in v0.0.9

type TextForm struct {
	TextField    materials.TextField
	SubmitButton widget.Clickable
	PasteButton  widget.Clickable
	// contains filtered or unexported fields
}

TextForm holds the theme-independent state of a simple form that allows a user to provide a single text value and supports pasting. It can be submitted with either the submit button or pressing enter on the keyboard.

func (*TextForm) Layout added in v0.0.9

func (c *TextForm) Layout(gtx layout.Context) layout.Dimensions

func (*TextForm) Submitted added in v0.0.9

func (c *TextForm) Submitted() bool

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL