binding

package
v2.2.0-rc1 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2022 License: BSD-3-Clause Imports: 11 Imported by: 385

Documentation

Overview

Package binding provides support for binding data to widgets.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Bool

type Bool interface {
	DataItem
	Get() (bool, error)
	Set(bool) error
}

Bool supports binding a bool value.

Since: 2.0

func BindPreferenceBool

func BindPreferenceBool(key string, p fyne.Preferences) Bool

BindPreferenceBool returns a bindable bool value that is managed by the application preferences. Changes to this value will be saved to application storage and when the app starts the previous values will be read.

Since: 2.0

func NewBool

func NewBool() Bool

NewBool returns a bindable bool value that is managed internally.

Since: 2.0

func StringToBool

func StringToBool(str String) Bool

StringToBool creates a binding that connects a String data item to a Bool. Changes to the String will be parsed and pushed to the Bool if the parse was successful, and setting the Bool update the String binding.

Since: 2.0

func StringToBoolWithFormat

func StringToBoolWithFormat(str String, format string) Bool

StringToBoolWithFormat creates a binding that connects a String data item to a Bool and is presented using the specified format. Changes to the Bool will be parsed and if the format matches and the parse is successful it will be pushed to the String. Setting the Bool will push a formatted value into the String.

Since: 2.0

type BoolList

type BoolList interface {
	DataList

	Append(value bool) error
	Get() ([]bool, error)
	GetValue(index int) (bool, error)
	Prepend(value bool) error
	Set(list []bool) error
	SetValue(index int, value bool) error
}

BoolList supports binding a list of bool values.

Since: 2.0

func NewBoolList

func NewBoolList() BoolList

NewBoolList returns a bindable list of bool values.

Since: 2.0

type Bytes added in v2.2.0

type Bytes interface {
	DataItem
	Get() ([]byte, error)
	Set([]byte) error
}

Bytes supports binding a []byte value.

Since: 2.2

func NewBytes added in v2.2.0

func NewBytes() Bytes

NewBytes returns a bindable []byte value that is managed internally.

Since: 2.2

type BytesList added in v2.2.0

type BytesList interface {
	DataList

	Append(value []byte) error
	Get() ([][]byte, error)
	GetValue(index int) ([]byte, error)
	Prepend(value []byte) error
	Set(list [][]byte) error
	SetValue(index int, value []byte) error
}

BytesList supports binding a list of []byte values.

Since: 2.2

func NewBytesList added in v2.2.0

func NewBytesList() BytesList

NewBytesList returns a bindable list of []byte values.

Since: 2.2

type DataItem

type DataItem interface {
	// AddListener attaches a new change listener to this DataItem.
	// Listeners are called each time the data inside this DataItem changes.
	// Additionally the listener will be triggered upon successful connection to get the current value.
	AddListener(DataListener)
	// RemoveListener will detach the specified change listener from the DataItem.
	// Disconnected listener will no longer be triggered when changes occur.
	RemoveListener(DataListener)
}

DataItem is the base interface for all bindable data items.

Since: 2.0

type DataList

type DataList interface {
	DataItem
	GetItem(index int) (DataItem, error)
	Length() int
}

DataList is the base interface for all bindable data lists.

Since: 2.0

type DataListener

type DataListener interface {
	DataChanged()
}

DataListener is any object that can register for changes in a bindable DataItem. See NewDataListener to define a new listener using just an inline function.

Since: 2.0

func NewDataListener

func NewDataListener(fn func()) DataListener

NewDataListener is a helper function that creates a new listener type from a simple callback function.

Since: 2.0

type DataMap

type DataMap interface {
	DataItem
	GetItem(string) (DataItem, error)
	Keys() []string
}

DataMap is the base interface for all bindable data maps.

Since: 2.0

type ExternalBool

type ExternalBool interface {
	Bool
	Reload() error
}

ExternalBool supports binding a bool value to an external value.

Since: 2.0

func BindBool

func BindBool(v *bool) ExternalBool

BindBool returns a new bindable value that controls the contents of the provided bool variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalBoolList

type ExternalBoolList interface {
	BoolList

	Reload() error
}

ExternalBoolList supports binding a list of bool values from an external variable.

Since: 2.0

func BindBoolList

func BindBoolList(v *[]bool) ExternalBoolList

BindBoolList returns a bound list of bool values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalBytes added in v2.2.0

type ExternalBytes interface {
	Bytes
	Reload() error
}

ExternalBytes supports binding a []byte value to an external value.

Since: 2.2

func BindBytes added in v2.2.0

func BindBytes(v *[]byte) ExternalBytes

BindBytes returns a new bindable value that controls the contents of the provided []byte variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.2

type ExternalBytesList added in v2.2.0

type ExternalBytesList interface {
	BytesList

	Reload() error
}

ExternalBytesList supports binding a list of []byte values from an external variable.

Since: 2.2

func BindBytesList added in v2.2.0

func BindBytesList(v *[][]byte) ExternalBytesList

BindBytesList returns a bound list of []byte values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.2

type ExternalFloat

type ExternalFloat interface {
	Float
	Reload() error
}

ExternalFloat supports binding a float64 value to an external value.

Since: 2.0

func BindFloat

func BindFloat(v *float64) ExternalFloat

BindFloat returns a new bindable value that controls the contents of the provided float64 variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalFloatList

type ExternalFloatList interface {
	FloatList

	Reload() error
}

ExternalFloatList supports binding a list of float64 values from an external variable.

Since: 2.0

func BindFloatList

func BindFloatList(v *[]float64) ExternalFloatList

BindFloatList returns a bound list of float64 values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalInt

type ExternalInt interface {
	Int
	Reload() error
}

ExternalInt supports binding a int value to an external value.

Since: 2.0

func BindInt

func BindInt(v *int) ExternalInt

BindInt returns a new bindable value that controls the contents of the provided int variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalIntList

type ExternalIntList interface {
	IntList

	Reload() error
}

ExternalIntList supports binding a list of int values from an external variable.

Since: 2.0

func BindIntList

func BindIntList(v *[]int) ExternalIntList

BindIntList returns a bound list of int values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalRune

type ExternalRune interface {
	Rune
	Reload() error
}

ExternalRune supports binding a rune value to an external value.

Since: 2.0

func BindRune

func BindRune(v *rune) ExternalRune

BindRune returns a new bindable value that controls the contents of the provided rune variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalRuneList

type ExternalRuneList interface {
	RuneList

	Reload() error
}

ExternalRuneList supports binding a list of rune values from an external variable.

Since: 2.0

func BindRuneList

func BindRuneList(v *[]rune) ExternalRuneList

BindRuneList returns a bound list of rune values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalString

type ExternalString interface {
	String
	Reload() error
}

ExternalString supports binding a string value to an external value.

Since: 2.0

func BindString

func BindString(v *string) ExternalString

BindString returns a new bindable value that controls the contents of the provided string variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalStringList

type ExternalStringList interface {
	StringList

	Reload() error
}

ExternalStringList supports binding a list of string values from an external variable.

Since: 2.0

func BindStringList

func BindStringList(v *[]string) ExternalStringList

BindStringList returns a bound list of string values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.0

type ExternalURI added in v2.1.0

type ExternalURI interface {
	URI
	Reload() error
}

ExternalURI supports binding a fyne.URI value to an external value.

Since: 2.1

func BindURI added in v2.1.0

func BindURI(v *fyne.URI) ExternalURI

BindURI returns a new bindable value that controls the contents of the provided fyne.URI variable. If your code changes the content of the variable this refers to you should call Reload() to inform the bindings.

Since: 2.1

type ExternalURIList added in v2.1.0

type ExternalURIList interface {
	URIList

	Reload() error
}

ExternalURIList supports binding a list of fyne.URI values from an external variable.

Since: 2.1

func BindURIList added in v2.1.0

func BindURIList(v *[]fyne.URI) ExternalURIList

BindURIList returns a bound list of fyne.URI values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.1

type ExternalUntyped added in v2.1.0

type ExternalUntyped interface {
	Untyped
	Reload() error
}

ExternalUntyped supports binding a interface{} value to an external value.

Since: 2.1

func BindUntyped added in v2.1.0

func BindUntyped(v interface{}) ExternalUntyped

BindUntyped returns a bindable interface{} value that is bound to an external type. The parameter must be a pointer to the type you wish to bind.

Since: 2.1

type ExternalUntypedList added in v2.1.0

type ExternalUntypedList interface {
	UntypedList

	Reload() error
}

ExternalUntypedList supports binding a list of interface{} values from an external variable.

Since: 2.1

func BindUntypedList added in v2.1.0

func BindUntypedList(v *[]interface{}) ExternalUntypedList

BindUntypedList returns a bound list of interface{} values, based on the contents of the passed slice. If your code changes the content of the slice this refers to you should call Reload() to inform the bindings.

Since: 2.1

type ExternalUntypedMap

type ExternalUntypedMap interface {
	UntypedMap
	Reload() error
}

ExternalUntypedMap is a map data binding with all values untyped (interface{}), connected to an external data source.

Since: 2.0

func BindUntypedMap

func BindUntypedMap(d *map[string]interface{}) ExternalUntypedMap

BindUntypedMap creates a new map binding of string to interface{} based on the data passed. If your code changes the content of the map this refers to you should call Reload() to inform the bindings.

Since: 2.0

type Float

type Float interface {
	DataItem
	Get() (float64, error)
	Set(float64) error
}

Float supports binding a float64 value.

Since: 2.0

func BindPreferenceFloat

func BindPreferenceFloat(key string, p fyne.Preferences) Float

BindPreferenceFloat returns a bindable float64 value that is managed by the application preferences. Changes to this value will be saved to application storage and when the app starts the previous values will be read.

Since: 2.0

func NewFloat

func NewFloat() Float

NewFloat returns a bindable float64 value that is managed internally.

Since: 2.0

func StringToFloat

func StringToFloat(str String) Float

StringToFloat creates a binding that connects a String data item to a Float. Changes to the String will be parsed and pushed to the Float if the parse was successful, and setting the Float update the String binding.

Since: 2.0

func StringToFloatWithFormat

func StringToFloatWithFormat(str String, format string) Float

StringToFloatWithFormat creates a binding that connects a String data item to a Float and is presented using the specified format. Changes to the Float will be parsed and if the format matches and the parse is successful it will be pushed to the String. Setting the Float will push a formatted value into the String.

Since: 2.0

type FloatList

type FloatList interface {
	DataList

	Append(value float64) error
	Get() ([]float64, error)
	GetValue(index int) (float64, error)
	Prepend(value float64) error
	Set(list []float64) error
	SetValue(index int, value float64) error
}

FloatList supports binding a list of float64 values.

Since: 2.0

func NewFloatList

func NewFloatList() FloatList

NewFloatList returns a bindable list of float64 values.

Since: 2.0

type Int

type Int interface {
	DataItem
	Get() (int, error)
	Set(int) error
}

Int supports binding a int value.

Since: 2.0

func BindPreferenceInt

func BindPreferenceInt(key string, p fyne.Preferences) Int

BindPreferenceInt returns a bindable int value that is managed by the application preferences. Changes to this value will be saved to application storage and when the app starts the previous values will be read.

Since: 2.0

func NewInt

func NewInt() Int

NewInt returns a bindable int value that is managed internally.

Since: 2.0

func StringToInt

func StringToInt(str String) Int

StringToInt creates a binding that connects a String data item to a Int. Changes to the String will be parsed and pushed to the Int if the parse was successful, and setting the Int update the String binding.

Since: 2.0

func StringToIntWithFormat

func StringToIntWithFormat(str String, format string) Int

StringToIntWithFormat creates a binding that connects a String data item to a Int and is presented using the specified format. Changes to the Int will be parsed and if the format matches and the parse is successful it will be pushed to the String. Setting the Int will push a formatted value into the String.

Since: 2.0

type IntList

type IntList interface {
	DataList

	Append(value int) error
	Get() ([]int, error)
	GetValue(index int) (int, error)
	Prepend(value int) error
	Set(list []int) error
	SetValue(index int, value int) error
}

IntList supports binding a list of int values.

Since: 2.0

func NewIntList

func NewIntList() IntList

NewIntList returns a bindable list of int values.

Since: 2.0

type Rune

type Rune interface {
	DataItem
	Get() (rune, error)
	Set(rune) error
}

Rune supports binding a rune value.

Since: 2.0

func NewRune

func NewRune() Rune

NewRune returns a bindable rune value that is managed internally.

Since: 2.0

type RuneList

type RuneList interface {
	DataList

	Append(value rune) error
	Get() ([]rune, error)
	GetValue(index int) (rune, error)
	Prepend(value rune) error
	Set(list []rune) error
	SetValue(index int, value rune) error
}

RuneList supports binding a list of rune values.

Since: 2.0

func NewRuneList

func NewRuneList() RuneList

NewRuneList returns a bindable list of rune values.

Since: 2.0

type String

type String interface {
	DataItem
	Get() (string, error)
	Set(string) error
}

String supports binding a string value.

Since: 2.0

func BindPreferenceString

func BindPreferenceString(key string, p fyne.Preferences) String

BindPreferenceString returns a bindable string value that is managed by the application preferences. Changes to this value will be saved to application storage and when the app starts the previous values will be read.

Since: 2.0

func BoolToString

func BoolToString(v Bool) String

BoolToString creates a binding that connects a Bool data item to a String. Changes to the Bool will be pushed to the String and setting the string will parse and set the Bool if the parse was successful.

Since: 2.0

func BoolToStringWithFormat

func BoolToStringWithFormat(v Bool, format string) String

BoolToStringWithFormat creates a binding that connects a Bool data item to a String and is presented using the specified format. Changes to the Bool will be pushed to the String and setting the string will parse and set the Bool if the string matches the format and its parse was successful.

Since: 2.0

func FloatToString

func FloatToString(v Float) String

FloatToString creates a binding that connects a Float data item to a String. Changes to the Float will be pushed to the String and setting the string will parse and set the Float if the parse was successful.

Since: 2.0

func FloatToStringWithFormat

func FloatToStringWithFormat(v Float, format string) String

FloatToStringWithFormat creates a binding that connects a Float data item to a String and is presented using the specified format. Changes to the Float will be pushed to the String and setting the string will parse and set the Float if the string matches the format and its parse was successful.

Since: 2.0

func IntToString

func IntToString(v Int) String

IntToString creates a binding that connects a Int data item to a String. Changes to the Int will be pushed to the String and setting the string will parse and set the Int if the parse was successful.

Since: 2.0

func IntToStringWithFormat

func IntToStringWithFormat(v Int, format string) String

IntToStringWithFormat creates a binding that connects a Int data item to a String and is presented using the specified format. Changes to the Int will be pushed to the String and setting the string will parse and set the Int if the string matches the format and its parse was successful.

Since: 2.0

func NewSprintf added in v2.2.0

func NewSprintf(format string, b ...DataItem) String

NewSprintf returns a String binding that format its content using the format string and the provide additional parameter that must be other data bindings. This data binding use fmt.Sprintf and fmt.Scanf internally and will have all the same limitation as those function.

Since: 2.2

func NewString

func NewString() String

NewString returns a bindable string value that is managed internally.

Since: 2.0

func StringToStringWithFormat added in v2.2.0

func StringToStringWithFormat(str String, format string) String

StringToStringWithFormat creates a binding that converts a string to another string using the specified format. Changes to the returned String will be pushed to the passed in String and setting a new string value will parse and set the underlying String if it matches the format and the parse was successful.

Since: 2.2

func URIToString added in v2.1.0

func URIToString(v URI) String

URIToString creates a binding that connects a URI data item to a String. Changes to the URI will be pushed to the String and setting the string will parse and set the URI if the parse was successful.

Since: 2.1

type StringList

type StringList interface {
	DataList

	Append(value string) error
	Get() ([]string, error)
	GetValue(index int) (string, error)
	Prepend(value string) error
	Set(list []string) error
	SetValue(index int, value string) error
}

StringList supports binding a list of string values.

Since: 2.0

func NewStringList

func NewStringList() StringList

NewStringList returns a bindable list of string values.

Since: 2.0

type Struct

type Struct interface {
	DataMap
	GetValue(string) (interface{}, error)
	SetValue(string, interface{}) error
	Reload() error
}

Struct is the base interface for a bound struct type.

Since: 2.0

func BindStruct

func BindStruct(i interface{}) Struct

BindStruct creates a new map binding of string to interface{} using the struct passed as data. The key for each item is a string representation of each exported field with the value set as an interface{}. Only exported fields are included.

Since: 2.0

type URI added in v2.1.0

type URI interface {
	DataItem
	Get() (fyne.URI, error)
	Set(fyne.URI) error
}

URI supports binding a fyne.URI value.

Since: 2.1

func NewURI added in v2.1.0

func NewURI() URI

NewURI returns a bindable fyne.URI value that is managed internally.

Since: 2.1

func StringToURI added in v2.1.0

func StringToURI(str String) URI

StringToURI creates a binding that connects a String data item to a URI. Changes to the String will be parsed and pushed to the URI if the parse was successful, and setting the URI update the String binding.

Since: 2.1

type URIList added in v2.1.0

type URIList interface {
	DataList

	Append(value fyne.URI) error
	Get() ([]fyne.URI, error)
	GetValue(index int) (fyne.URI, error)
	Prepend(value fyne.URI) error
	Set(list []fyne.URI) error
	SetValue(index int, value fyne.URI) error
}

URIList supports binding a list of fyne.URI values.

Since: 2.1

func NewURIList added in v2.1.0

func NewURIList() URIList

NewURIList returns a bindable list of fyne.URI values.

Since: 2.1

type Untyped

type Untyped interface {
	DataItem
	Get() (interface{}, error)
	Set(interface{}) error
}

Untyped supports binding a interface{} value.

Since: 2.1

func NewUntyped added in v2.1.0

func NewUntyped() Untyped

NewUntyped returns a bindable interface{} value that is managed internally.

Since: 2.1

type UntypedList added in v2.1.0

type UntypedList interface {
	DataList

	Append(value interface{}) error
	Get() ([]interface{}, error)
	GetValue(index int) (interface{}, error)
	Prepend(value interface{}) error
	Set(list []interface{}) error
	SetValue(index int, value interface{}) error
}

UntypedList supports binding a list of interface{} values.

Since: 2.1

func NewUntypedList added in v2.1.0

func NewUntypedList() UntypedList

NewUntypedList returns a bindable list of interface{} values.

Since: 2.1

type UntypedMap

type UntypedMap interface {
	DataMap
	Delete(string)
	Get() (map[string]interface{}, error)
	GetValue(string) (interface{}, error)
	Set(map[string]interface{}) error
	SetValue(string, interface{}) error
}

UntypedMap is a map data binding with all values Untyped (interface{}).

Since: 2.0

func NewUntypedMap

func NewUntypedMap() UntypedMap

NewUntypedMap creates a new, empty map binding of string to interface{}.

Since: 2.0

Jump to

Keyboard shortcuts

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