theme

package
v0.1.85 Latest Latest
Warning

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

Go to latest
Published: Feb 9, 2026 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetDarken

func GetDarken(update ColorUpdate) float32

func GetLighten

func GetLighten(update ColorUpdate) float32

func IsSpecifiedColor

func IsSpecifiedColor(colorDescriptor ColorDescriptor) bool

Types

type BackgroundColorRoleDescriptors

type BackgroundColorRoleDescriptors struct {
	Background   ColorDescriptor
	OnBackground ColorDescriptor
}

type BackgroundColorRoles

type BackgroundColorRoles interface {
	Background() ColorRole
	OnBackground() ColorRole
}

type BasicColorRoleDescriptors

type BasicColorRoleDescriptors struct {
	BasicBg         ColorDescriptor
	BasicFg         ColorDescriptor
	BasicContrastBg ColorDescriptor
	BasicContrastFg ColorDescriptor
}

Roles for Original Gioui Matrial Theme Palette

type BasicColorRoles

type BasicColorRoles interface {
	BasicBg() ColorRole
	BasicFg() ColorRole
	BasicContrastBg() ColorRole
	BasicContrastFg() ColorRole
}

Roles for Original Gioui Matrial Theme Palette

type BasicTheme

type BasicTheme = material.Theme

type ColorDescriptor

type ColorDescriptor interface {
	AppendUpdate(update ColorUpdate) ColorDescriptor
	SetOpacity(opacity OpacityLevel) ColorDescriptor
	Lighten(percentage float32) ColorDescriptor
	Darken(percentage float32) ColorDescriptor
	Compare(other ColorDescriptor) bool
	Updates() []ColorUpdate
}
var ColorUnspecified ColorDescriptor = &colorDescriptor{
	color:   graphics.ColorUnspecified,
	isColor: true,
}

func CoalesceColor

func CoalesceColor(ptr, def ColorDescriptor) ColorDescriptor

func ColorLerp

func ColorLerp(start, stop ColorDescriptor, fraction float32) ColorDescriptor

func SpecificColor

func SpecificColor(color graphics.Color) ColorDescriptor

func TakeOrElseColor

func TakeOrElseColor(colorDescriptor, defaultColor ColorDescriptor) ColorDescriptor

func ThemeRoleColor

func ThemeRoleColor(colorRole ColorRole) ColorDescriptor

type ColorRole

type ColorRole = colorrole.ColorRole

type ColorRoleDescriptors

type ColorRoleDescriptors struct {
	ColorRolesDescriptors
	BasicColorRoleDescriptors
}

func NewColorRoleDescriptors

func NewColorRoleDescriptors() ColorRoleDescriptors

type ColorRoles

type ColorRoles interface {
	M3ColorRoles
	BasicColorRoles
}

type ColorRolesDescriptors

type ColorRolesDescriptors struct {
	PrimaryRoles         PrimaryColorRoleDescriptors
	SecondaryRoles       SecondaryColorRoleDescriptors
	TertiaryRoles        TertiaryColorRoleDescriptors
	SurfaceRoles         SurfaceColorRoleDescriptors
	InverseRoles         InverseColorRoleDescriptors
	BackgroundColorRoles BackgroundColorRoleDescriptors
	OutlineRoles         OutlineColorRoleDescriptors
	ErrorRoles           ErrorColorRoleDescriptors
	ScrimRoles           ScrimColorRoleDescriptors
}

type ColorUpdate

type ColorUpdate interface {
	Action() ColorUpdateActions
	Value() any
	Compare(other ColorUpdate) bool
	// contains filtered or unexported methods
}

type ColorUpdateActions

type ColorUpdateActions int
const (
	SetOpacityColorUpdateAction ColorUpdateActions = iota
	LightenColorUpdateAction
	DarkenColorUpdateAction
	LerpColorUpdateAction
)

type ColorUpdateTyped

type ColorUpdateTyped[T comparable] struct {
	// contains filtered or unexported fields
}

func Darken

func Darken(percentage float32) *ColorUpdateTyped[float32]

func Lighten

func Lighten(percentage float32) *ColorUpdateTyped[float32]

func SetOpacity

func SetOpacity(value OpacityLevel) *ColorUpdateTyped[OpacityLevel]

func (ColorUpdateTyped[T]) Action

func (u ColorUpdateTyped[T]) Action() ColorUpdateActions

func (ColorUpdateTyped[T]) Any

func (u ColorUpdateTyped[T]) Any() ColorUpdate

func (ColorUpdateTyped[T]) Compare

func (u ColorUpdateTyped[T]) Compare(other ColorUpdate) bool

func (ColorUpdateTyped[T]) CompareTyped

func (u ColorUpdateTyped[T]) CompareTyped(other ColorUpdateTyped[T]) bool

func (ColorUpdateTyped[T]) Value

func (u ColorUpdateTyped[T]) Value() T

type ErrorColorRoleDescriptors

type ErrorColorRoleDescriptors struct {
	Error       ColorDescriptor
	OnError     ColorDescriptor
	Container   ColorDescriptor
	OnContainer ColorDescriptor
}

type ErrorColorRoles

type ErrorColorRoles interface {
	Error() ColorRole
	OnError() ColorRole
	ErrorContainer() ColorRole
	OnErrorContainer() ColorRole
}

type GradientConfig

type GradientConfig struct {
	// Stops define the color points in the gradient
	Stops []GradientStop
	// Direction specifies how the gradient flows
	Direction GradientDirection
}

GradientConfig defines a theme-aware gradient All colors are ColorDescriptors that will be resolved at runtime, allowing gradients to adapt when themes change

func DiagonalGradient

func DiagonalGradient(stops []GradientStop) GradientConfig

DiagonalGradient creates a top-left to bottom-right gradient

func HorizontalGradient

func HorizontalGradient(stops []GradientStop) GradientConfig

HorizontalGradient creates a left-to-right gradient

func NewGradientConfig

func NewGradientConfig(stops []GradientStop, direction GradientDirection) GradientConfig

NewGradientConfig creates a new gradient configuration

func VerticalGradient

func VerticalGradient(stops []GradientStop) GradientConfig

VerticalGradient creates a top-to-bottom gradient

type GradientDirection

type GradientDirection int

GradientDirection specifies the direction of a gradient

const (
	// GradientVertical creates a top-to-bottom gradient
	GradientVertical GradientDirection = iota
	// GradientHorizontal creates a left-to-right gradient
	GradientHorizontal
	// GradientDiagonal creates a top-left to bottom-right gradient
	GradientDiagonal
)

type GradientStop

type GradientStop struct {
	// Position in the gradient from 0.0 (start) to 1.0 (end)
	Position float32
	// Color descriptor for this stop, will be resolved at runtime
	Color ColorDescriptor
}

GradientStop represents a color point in a gradient

type InverseColorRoleDescriptors

type InverseColorRoleDescriptors struct {
	Surface   ColorDescriptor
	OnSurface ColorDescriptor
	Primary   ColorDescriptor
}

type InverseColorRoles

type InverseColorRoles interface {
	InverseSurface() ColorRole
	OnInverseSurface() ColorRole
	InversePrimary() ColorRole
}

type LerpColorUpdate

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

func LerpColor

func LerpColor(stop ColorDescriptor, fraction float32) LerpColorUpdate

func (LerpColorUpdate) Action

func (LerpColorUpdate) Compare

func (u LerpColorUpdate) Compare(other ColorUpdate) bool

func (LerpColorUpdate) Value

func (u LerpColorUpdate) Value() any

type LerpColorUpdateParams

type LerpColorUpdateParams struct {
	Stop     ColorDescriptor
	Fraction float32
}

func GetLerp

func GetLerp(update ColorUpdate) LerpColorUpdateParams

type M3ColorRoles

type M3ColorRoles interface {
	PrimaryRoles() PrimaryColorRoles
	SecondaryRoles() SecondaryColorRoles
	TertiaryRoles() TertiaryColorRoles
	SurfaceRoles() SurfaceColorRoles
	InverseRoles() InverseColorRoles
	BackgroundColorRoles() BackgroundColorRoles
	OutlineRoles() OutlineColorRoles
	ErrorRoles() ErrorColorRoles
	ScrimRoles() ScrimColorRoles
}

type OpacityLevel

type OpacityLevel = token.OpacityLevel

func GetOpacity

func GetOpacity(update ColorUpdate) OpacityLevel

type OutlineColorRoleDescriptors

type OutlineColorRoleDescriptors struct {
	Outline        ColorDescriptor
	OutlineVariant ColorDescriptor
}

type OutlineColorRoles

type OutlineColorRoles interface {
	Outline() ColorRole
	OutlineVariant() ColorRole
}

type PrimaryColorRoleDescriptors

type PrimaryColorRoleDescriptors struct {
	Primary        ColorDescriptor
	OnPrimary      ColorDescriptor
	Container      ColorDescriptor
	OnContainer    ColorDescriptor
	Fixed          ColorDescriptor
	OnFixed        ColorDescriptor
	FixedVariant   ColorDescriptor
	OnFixedVariant ColorDescriptor
}

type PrimaryColorRoles

type PrimaryColorRoles interface {
	Primary() ColorRole
	OnPrimary() ColorRole
	PrimaryContainer() ColorRole
	OnPrimaryContainer() ColorRole
	PrimaryFixed() ColorRole
	OnPrimaryFixed() ColorRole
	PrimaryFixedVariant() ColorRole
	OnPrimaryFixedVariant() ColorRole
}

type ResolvableColor

type ResolvableColor interface {
	ResolveColorDescriptor(colorDesc ColorDescriptor) ThemeColor
}

type ScrimColorRoleDescriptors

type ScrimColorRoleDescriptors struct {
	Scrim  ColorDescriptor
	Shadow ColorDescriptor
}

type ScrimColorRoles

type ScrimColorRoles interface {
	Scrim() ColorRole
	Shadow() ColorRole
}

type SecondaryColorRoleDescriptors

type SecondaryColorRoleDescriptors struct {
	Secondary      ColorDescriptor
	OnSecondary    ColorDescriptor
	Container      ColorDescriptor
	OnContainer    ColorDescriptor
	Fixed          ColorDescriptor
	OnFixed        ColorDescriptor
	FixedVariant   ColorDescriptor
	OnFixedVariant ColorDescriptor
}

type SecondaryColorRoles

type SecondaryColorRoles interface {
	Secondary() ColorRole
	OnSecondary() ColorRole
	SecondaryContainer() ColorRole
	OnSecondaryContainer() ColorRole
	SecondaryFixed() ColorRole
	OnSecondaryFixed() ColorRole
	SecondaryFixedVariant() ColorRole
	OnSecondaryFixedVariant() ColorRole
}

type SurfaceColorRoleDescriptors

type SurfaceColorRoleDescriptors struct {
	Surface          ColorDescriptor
	OnSurface        ColorDescriptor
	Variant          ColorDescriptor
	OnVariant        ColorDescriptor
	Dim              ColorDescriptor
	Bright           ColorDescriptor
	ContainerLowest  ColorDescriptor
	ContainerLow     ColorDescriptor
	Container        ColorDescriptor
	ContainerHigh    ColorDescriptor
	ContainerHighest ColorDescriptor
}

type SurfaceColorRoles

type SurfaceColorRoles interface {
	Surface() ColorRole
	OnSurface() ColorRole
	SurfaceVariant() ColorRole
	OnSurfaceVariant() ColorRole
	SurfaceDim() ColorRole
	SurfaceBright() ColorRole
	SurfaceContainerLowest() ColorRole
	SurfaceContainerLow() ColorRole
	SurfaceContainer() ColorRole
	SurfaceContainerHigh() ColorRole
	SurfaceContainerHighest() ColorRole
}

type TertiaryColorRoleDescriptors

type TertiaryColorRoleDescriptors struct {
	Tertiary       ColorDescriptor
	OnTertiary     ColorDescriptor
	Container      ColorDescriptor
	OnContainer    ColorDescriptor
	Fixed          ColorDescriptor
	OnFixed        ColorDescriptor
	FixedVariant   ColorDescriptor
	OnFixedVariant ColorDescriptor
}

type TertiaryColorRoles

type TertiaryColorRoles interface {
	Tertiary() ColorRole
	OnTertiary() ColorRole
	TertiaryContainer() ColorRole
	OnTertiaryContainer() ColorRole
	TertiaryFixed() ColorRole
	OnTertiaryFixed() ColorRole
	TertiaryFixedVariant() ColorRole
	OnTertiaryFixedVariant() ColorRole
}

type Theme

type Theme = token.Theme

type ThemeBasicColorReaderFunc

type ThemeBasicColorReaderFunc func(theme *BasicTheme) ThemeColor

type ThemeColor

type ThemeColor interface {
	AsHex() string
	AsNRGBA() color.NRGBA
	SetOpacity(opacity OpacityLevel) ThemeColor
	AsTokenColor() TokenColor
	// contains filtered or unexported methods
}

func ThemeColorFromColor

func ThemeColorFromColor(color color.Color) ThemeColor

func ThemeColorFromGraphicsColor

func ThemeColorFromGraphicsColor(color graphics.Color) ThemeColor

func ThemeColorFromNRGBA

func ThemeColorFromNRGBA(color color.NRGBA) ThemeColor

func ThemeColorFromTokenColor

func ThemeColorFromTokenColor(color TokenColor) ThemeColor

type ThemeColorHelper

type ThemeColorHelper interface {
	ColorSelector() *ColorRoleDescriptors
	SpecificColor(color graphics.Color) ColorDescriptor
	UnspecifiedColor() ColorDescriptor
}
var ColorHelper ThemeColorHelper = nil

type ThemeColorReaderFunc

type ThemeColorReaderFunc func(theme *Theme) ThemeColor

type ThemeColorResolver

type ThemeColorResolver interface {
	ResolveColorDescriptor(colorDesc ColorDescriptor) ThemeColor
}

type ThemeManager

type ThemeManager interface {
	Material3ThemeInit(gtx layout.Context) layout.Context

	ThemeColorResolver
	// contains filtered or unexported methods
}

Runtime

func GetThemeManager

func GetThemeManager() ThemeManager

Deprecated, use local providers

type TokenColor

type TokenColor = token.MatColor

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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