From bf5a7df4608a0cdf5b1c145fcf2002560f3ecf44 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Fri, 10 Mar 2023 00:20:47 +0900 Subject: refactor: move common snippet to util.go --- cmd/util.go | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 cmd/util.go (limited to 'cmd/util.go') diff --git a/cmd/util.go b/cmd/util.go new file mode 100644 index 0000000..93199da --- /dev/null +++ b/cmd/util.go @@ -0,0 +1,29 @@ +package cmd + +import ( + "github.com/nsfisis/term-clock/internal/term" +) + +func calcSquareSize(scr *term.Screen) (int, int, int, int) { + // Calculate square width/height and offset. + scrW, scrH := scr.Size() + // 17 + // <---------------> + // ### ### ### ### ^ + // # # # # # # # # # | + // # # # # # # # # | 5 + // # # # # # # # # # | + // ### ### ### ### v + squareW := scrW / (17 + 2) + squareH := scrH / (5 + 2) + if squareH > squareW { + squareH = squareW + } + if squareW > squareH*3/2 { + squareW = squareH * 3 / 2 + } + xOffset := (scrW - squareW*17) / 2 + yOffset := (scrH - squareH*5) / 2 + + return squareW, squareH, xOffset, yOffset +} -- cgit v1.2.3-70-g09d2