Index | Files

package router

import ""

Package router implements Router, a event.Queue implementation that that disambiguates and routes events to handlers declared in operation lists.

Router is used by app.Window and is otherwise only useful for using Gio with external window implementations.


Package Files

key.go pointer.go router.go

type Router Uses

type Router struct {
    // contains filtered or unexported fields

Router is a Queue implementation that routes events to handlers declared in operation lists.

func (*Router) Add Uses

func (q *Router) Add(events ...event.Event) bool

func (*Router) Events Uses

func (q *Router) Events(k event.Tag) []event.Event

Events returns the available events for the handler key.

func (*Router) Frame Uses

func (q *Router) Frame(ops *op.Ops)

Frame replaces the declared handlers from the supplied operation list. The text input state, wakeup time and whether there are active profile handlers is also saved.

func (*Router) Profiling Uses

func (q *Router) Profiling() bool

Profiling reports whether there was profile handlers in the most recent Frame call.

func (*Router) TextInputState Uses

func (q *Router) TextInputState() TextInputState

TextInputState returns the input state from the most recent call to Frame.

func (*Router) WakeupTime Uses

func (q *Router) WakeupTime() (time.Time, bool)

WakeupTime returns the most recent time for doing another frame, as determined from the last call to Frame.

type TextInputState Uses

type TextInputState uint8
const (
    TextInputKeep TextInputState = iota

Package router imports 11 packages (graph) and is imported by 5 packages. Updated 2020-11-27. Refresh now. Tools for package owners.