diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-06-09 23:56:19 -0500 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-08-20 15:57:19 +0200 |
| commit | 1f60222589d6c717a48617860830009cd44f52dd (patch) | |
| tree | c82e54bac92fdab0f17f1fb1fb5f8e957aa2eb3f /go/ui | |
| parent | f44d47f0b0a1a2ff8a1420490e877be813cb2ce6 (diff) | |
| download | muhqs-game-1f60222589d6c717a48617860830009cd44f52dd.tar.gz muhqs-game-1f60222589d6c717a48617860830009cd44f52dd.zip | |
fix ToggleCardView blocking other widgets
Diffstat (limited to 'go/ui')
| -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{} { |
