summaryrefslogtreecommitdiff
path: root/internal/gui/widgets.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-05 19:10:47 +0200
committerPaul Buetow <paul@buetow.org>2026-03-05 19:10:47 +0200
commit506367ede7e668b26dc870b64261e93fccd89f9b (patch)
tree60f13948bdada9d94dfc77742243ce4667cdf686 /internal/gui/widgets.go
parenteab0beccfdf2c41cb23490cb30add516125831fb (diff)
chore: release v0.8.1v0.8.1
Diffstat (limited to 'internal/gui/widgets.go')
-rw-r--r--internal/gui/widgets.go38
1 files changed, 24 insertions, 14 deletions
diff --git a/internal/gui/widgets.go b/internal/gui/widgets.go
index df74027..6e40391 100644
--- a/internal/gui/widgets.go
+++ b/internal/gui/widgets.go
@@ -30,25 +30,35 @@ type ImageDisplay struct {
func NewImageDisplay() *ImageDisplay {
d := &ImageDisplay{}
- // Create image canvas
- d.imageCanvas = canvas.NewImageFromResource(nil)
- d.imageCanvas.FillMode = canvas.ImageFillContain
- d.imageCanvas.SetMinSize(fyne.NewSize(200, 150)) // Half the size
+ d.imageCanvas = newImageCanvas()
+ d.imageLabel = newImageLabel()
+ d.container = newImageContainer(d.imageCanvas, d.imageLabel)
- // Create label
- d.imageLabel = widget.NewLabel("No image")
- d.imageLabel.Alignment = fyne.TextAlignCenter
+ d.ExtendBaseWidget(d)
+ return d
+}
+
+func newImageCanvas() *canvas.Image {
+ img := canvas.NewImageFromResource(nil)
+ img.FillMode = canvas.ImageFillContain
+ img.SetMinSize(fyne.NewSize(200, 150)) // Half the size
+ return img
+}
- // Create main container - no navigation buttons here
- d.container = container.NewBorder(
+func newImageLabel() *widget.Label {
+ label := widget.NewLabel("No image")
+ label.Alignment = fyne.TextAlignCenter
+ return label
+}
+
+func newImageContainer(img *canvas.Image, label *widget.Label) *fyne.Container {
+ // Create main container with the image centered and its label at the bottom.
+ return container.NewBorder(
nil,
- d.imageLabel,
+ label,
nil, nil,
- d.imageCanvas,
+ img,
)
-
- d.ExtendBaseWidget(d)
- return d
}
// CreateRenderer implements fyne.Widget