diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-06-09 23:56:19 -0500 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-07-03 22:01:22 -0400 |
| commit | 87c925928a8f604df3ac3c5d591a651125a22ee2 (patch) | |
| tree | b20b6e1bcdd38af46777535d06d436ffb4980c84 | |
| parent | 3b8874cd6d53842288f7531eca1f1b6def06899e (diff) | |
| download | muhqs-game-87c925928a8f604df3ac3c5d591a651125a22ee2.tar.gz muhqs-game-87c925928a8f604df3ac3c5d591a651125a22ee2.zip | |
fix ToggleCardView blocking other widgets
| -rw-r--r-- | go/ui/cardView.go | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/go/ui/cardView.go b/go/ui/cardView.go index f30b811c..960f9230 100644 --- a/go/ui/cardView.go +++ b/go/ui/cardView.go @@ -52,21 +52,23 @@ type ToggleCardView struct { expanded bool } -func NewToggleCardView(x, y, wdth, hght int, card string) *ToggleCardView { +func NewToggleCardView(x, y, wdth, hght int, cardPath string) *ToggleCardView { cv := &ToggleCardView{ EventHandlersMap: NewEventHandlersMap(), - cv: NewScaledCardView(x, y, wdth, hght, card), + cv: NewScaledCardView(x, y, wdth, hght, cardPath), expanded: true} cv.tgglBtn = NewSimpleButton(x, y+10, 80, 50, ">", func(b *SimpleButton) { shift := float64(cv.cv.Width - 80) if cv.expanded { b.label = "<" - cv.cv.Op.GeoM.Translate(shift, 0) + // cv.cv.Op.GeoM.Translate(shift, 0) + cv.cv.X = cv.cv.X + int(shift) cv.tgglBtn.X = cv.tgglBtn.X + int(shift) - 20 } else { b.label = ">" - cv.cv.Op.GeoM.Reset() + // cv.cv.Op.GeoM.Reset() + cv.cv.X = cv.cv.X - int(shift) cv.tgglBtn.X = cv.tgglBtn.X - int(shift) + 20 } cv.tgglBtn.ForceRedraw() @@ -81,11 +83,12 @@ func (cv *ToggleCardView) Draw(screen *ebiten.Image) { } func (cv *ToggleCardView) Layout() (int, int) { + // FIXME: include btn layout return cv.cv.Layout() } func (cv *ToggleCardView) Contains(x, y int) bool { - return cv.cv.Contains(x, y) + return cv.cv.Contains(x, y) || cv.tgglBtn.Contains(x, y) } func (cv *ToggleCardView) FindObjectAt(x, y int) interface{} { |
