aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2026-03-03 14:29:13 -0500
committerSam Anthony <sam@samanthony.xyz>2026-03-03 14:29:13 -0500
commit474f4984f8be450524eedd3e89bcbfdfa1b4f516 (patch)
treef36f3f23dddeecb5d281c5146265a5b357b92039
parent0a0b9b8cc9cdc0ffe1819de0266dd1e3c3eb564f (diff)
downloadgui-474f4984f8be450524eedd3e89bcbfdfa1b4f516.zip
fix compiler errors
-rw-r--r--lay/strain/solve.go8
-rw-r--r--mux.go6
-rw-r--r--win/win.go7
3 files changed, 11 insertions, 10 deletions
diff --git a/lay/strain/solve.go b/lay/strain/solve.go
index e1a89d8..7fd3c03 100644
--- a/lay/strain/solve.go
+++ b/lay/strain/solve.go
@@ -146,9 +146,9 @@ func (s *Solver) addSizeConstraint(constr Constraint, fieldIdx int) error {
fieldConstrs := &s.fieldSizeConstrs[fieldIdx]
// Clear mutually exclusive constraints and replace with new one
- switch constr.Dim {
+ switch constr.Dimension {
case Width:
- width := s.style.Pixels(constr.Value).Round()
+ width := float64(s.style.Pixels(constr.Value).Round())
switch constr.Op {
case casso.EQ:
s.removeConstraints(fieldConstrs.widthEq, fieldConstrs.widthGte, fieldConstrs.widthLte)
@@ -175,7 +175,7 @@ func (s *Solver) addSizeConstraint(constr Constraint, fieldIdx int) error {
panic(fmt.Sprintf("unreachable: impossible %T: %v", constr.Op, constr.Op))
}
case Height:
- height := s.style.Pixels(constr.Value).Round()
+ height := float64(s.style.Pixels(constr.Value).Round())
switch constr.Op {
case casso.EQ:
s.removeConstraints(fieldConstrs.heightEq, fieldConstrs.heightGte, fieldConstrs.heightLte)
@@ -202,7 +202,7 @@ func (s *Solver) addSizeConstraint(constr Constraint, fieldIdx int) error {
panic(fmt.Sprintf("unreachable: impossible %T: %v", constr.Op, constr.Op))
}
default:
- panic(fmt.Sprintf("unreachable: impossible %T: %v", constr.Dim, constr.Dim))
+ panic(fmt.Sprintf("unreachable: impossible %T: %v", constr.Dimension, constr.Dimension))
}
return nil
diff --git a/mux.go b/mux.go
index d251793..e2b9f0b 100644
--- a/mux.go
+++ b/mux.go
@@ -78,13 +78,13 @@ func (mux *Mux) MakeEnv() Env {
type muxEnv struct {
events <-chan Event
draw chan<- func(draw.Image) image.Rectangle
- impose chan<- Constraint
+ impose chan<- strain.Constraint
finish chan<- struct{}
}
func (m *muxEnv) Events() <-chan Event { return m.events }
func (m *muxEnv) Draw() chan<- func(draw.Image) image.Rectangle { return m.draw }
-func (m *muxEnv) Impose() chan<- Constraint { return m.impose }
+func (m *muxEnv) Impose() chan<- strain.Constraint { return m.impose }
func (m *muxEnv) Close() {
m.finish <- *new(struct{})
@@ -96,7 +96,7 @@ func (m *muxEnv) Close() {
func (mux *Mux) makeEnv(master bool) Env {
eventsOut, eventsIn := MakeEventsChan()
draws := make(chan func(draw.Image) image.Rectangle)
- imposes := make(chan Constraint)
+ imposes := make(chan strain.Constraint)
finish := make(chan struct{})
env := &muxEnv{eventsOut, draws, imposes, finish}
diff --git a/win/win.go b/win/win.go
index 06f3f68..4040f94 100644
--- a/win/win.go
+++ b/win/win.go
@@ -9,6 +9,7 @@ import (
"unsafe"
"github.com/faiface/gui"
+ "github.com/faiface/gui/lay/strain"
"github.com/faiface/mainthread"
"github.com/go-gl/gl/v2.1/gl"
"github.com/go-gl/glfw/v3.2/glfw"
@@ -23,7 +24,7 @@ type Win struct {
eventsOut <-chan gui.Event
eventsIn chan<- gui.Event
draw chan func(draw.Image) image.Rectangle
- impose chan gui.Constraint
+ impose chan strain.Constraint
newSize chan image.Rectangle
ctx context.Context
@@ -56,7 +57,7 @@ func New(opts ...Option) (*Win, error) {
eventsOut: eventsOut,
eventsIn: eventsIn,
draw: make(chan func(draw.Image) image.Rectangle),
- impose: make(chan gui.Constraint),
+ impose: make(chan strain.Constraint),
newSize: make(chan image.Rectangle),
ctx: ctx,
cancel: cancel,
@@ -136,7 +137,7 @@ func (w *Win) Draw() chan<- func(draw.Image) image.Rectangle { return w.draw }
// Impose returns the impose channel of the window.
// The window ignores constraints sent to the impose channel.
-func (w *Win) Impose() chan<- gui.Constraint { return w.impose }
+func (w *Win) Impose() chan<- strain.Constraint { return w.impose }
// Close destroys the window.
func (w *Win) Close() {