From 7d2afe1ca176d0eb76f65523ed7ebcbca702d0c1 Mon Sep 17 00:00:00 2001 From: Benjamin Chausse Date: Thu, 16 Jan 2025 00:20:12 -0500 Subject: Central UI (#26) * migrate to urfave/cli V3 * Remove slider background * Force the use of TrueColor everywhere * All ui info in one location * Fix BinaryFill Example * Make unfocused tabs more faint * Fix color input width * Ctrl-c overrides color input and quits termpicker * docs: remove redundant comment * fix: refactor picker View() --- internal/slider/slider.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'internal/slider') diff --git a/internal/slider/slider.go b/internal/slider/slider.go index 2d47249..dbf4093 100644 --- a/internal/slider/slider.go +++ b/internal/slider/slider.go @@ -2,8 +2,10 @@ package slider import ( "fmt" + "strings" "github.com/ChausseBenjamin/termpicker/internal/progress" + "github.com/ChausseBenjamin/termpicker/internal/ui" "github.com/charmbracelet/bubbles/key" tea "github.com/charmbracelet/bubbletea" ) @@ -18,10 +20,8 @@ type Model struct { func New(label byte, maxVal int, opts ...progress.Option) Model { slider := Model{ - label: label, - progress: progress.New( - progress.WithoutPercentage(), - ), + label: label, + progress: progress.New(), max: maxVal, current: maxVal / 2, mappings: newKeybinds(), @@ -32,7 +32,7 @@ func New(label byte, maxVal int, opts ...progress.Option) Model { return slider } -func (m Model) Title() string { return fmt.Sprintf("%c", m.label) } +func (m Model) Title() string { return fmt.Sprintf("%c:", m.label) } func (m Model) Init() tea.Cmd { // Triggering a frame message Update here will force the progress bar to @@ -79,5 +79,9 @@ func (m Model) ViewValue(current int) string { } func (m Model) View() string { - return fmt.Sprintf("%v: %v %v", m.Title(), m.progress.View(), m.ViewValue(m.current)) + return strings.Join([]string{ + ui.Style().SliderLabel.Render(m.Title()), + m.progress.View(), + ui.Style().SliderVal.Render(m.ViewValue(m.current)), + }, " ") } -- cgit v1.2.3