From 70245a23f662bcf2ad84cf199cea9b3adf8646fe Mon Sep 17 00:00:00 2001 From: eeeXun Date: Wed, 19 Oct 2022 03:02:02 +0800 Subject: [PATCH] Themes to map --- color.go | 61 +++++++++++++++++++++++++++++--------------------------- ui.go | 2 ++ 2 files changed, 34 insertions(+), 29 deletions(-) diff --git a/color.go b/color.go index 0966d4d..973980f 100644 --- a/color.go +++ b/color.go @@ -4,7 +4,7 @@ import ( "github.com/gdamore/tcell/v2" ) -type color_theme struct { +type palette struct { bg tcell.Color fg tcell.Color gray tcell.Color @@ -17,27 +17,30 @@ type color_theme struct { } var ( - Gruvbox color_theme = color_theme{ - bg: tcell.NewHexColor(0x282828), - fg: tcell.NewHexColor(0xebdbb2), - gray: tcell.NewHexColor(0x928374), - red: tcell.NewHexColor(0xfb4934), - green: tcell.NewHexColor(0xfabd2f), - yellow: tcell.NewHexColor(0xfabd2f), - blue: tcell.NewHexColor(0x83a598), - purple: tcell.NewHexColor(0xd3869b), - cyan: tcell.NewHexColor(0x8ec07c), - } - Nord color_theme = color_theme{ - bg: tcell.NewHexColor(0x3b4252), - fg: tcell.NewHexColor(0xeceff4), - gray: tcell.NewHexColor(0x4c566a), - red: tcell.NewHexColor(0xbf616a), - green: tcell.NewHexColor(0xa3be8c), - yellow: tcell.NewHexColor(0xebcb8b), - blue: tcell.NewHexColor(0x81a1c1), - purple: tcell.NewHexColor(0xb48ead), - cyan: tcell.NewHexColor(0x8fbcbb), + themes_name = []string{"Gruvbox", "Nord"} + Themes = map[string]palette{ + "Gruvbox": { + bg: tcell.NewHexColor(0x282828), + fg: tcell.NewHexColor(0xebdbb2), + gray: tcell.NewHexColor(0x928374), + red: tcell.NewHexColor(0xfb4934), + green: tcell.NewHexColor(0xfabd2f), + yellow: tcell.NewHexColor(0xfabd2f), + blue: tcell.NewHexColor(0x83a598), + purple: tcell.NewHexColor(0xd3869b), + cyan: tcell.NewHexColor(0x8ec07c), + }, + "Nord": { + bg: tcell.NewHexColor(0x3b4252), + fg: tcell.NewHexColor(0xeceff4), + gray: tcell.NewHexColor(0x4c566a), + red: tcell.NewHexColor(0xbf616a), + green: tcell.NewHexColor(0xa3be8c), + yellow: tcell.NewHexColor(0xebcb8b), + blue: tcell.NewHexColor(0x81a1c1), + purple: tcell.NewHexColor(0xb48ead), + cyan: tcell.NewHexColor(0x8fbcbb), + }, } ) @@ -55,11 +58,11 @@ type Window struct { } func (w *Window) color_init() { - w.src.background_color = Gruvbox.bg - w.src.border_color = Gruvbox.red - w.src.foreground_color = Gruvbox.fg - w.src.selected_color = Gruvbox.gray - w.dest.background_color = Gruvbox.bg - w.dest.border_color = Gruvbox.blue - w.dest.foreground_color = Gruvbox.fg + w.src.background_color = Themes["Gruvbox"].bg + w.src.border_color = Themes["Gruvbox"].red + w.src.foreground_color = Themes["Gruvbox"].fg + w.src.selected_color = Themes["Gruvbox"].gray + w.dest.background_color = Themes["Gruvbox"].bg + w.dest.border_color = Themes["Gruvbox"].blue + w.dest.foreground_color = Themes["Gruvbox"].fg } diff --git a/ui.go b/ui.go index 44ff533..e18dee4 100644 --- a/ui.go +++ b/ui.go @@ -44,6 +44,8 @@ func InputHandle(event *tcell.EventKey) *tcell.EventKey { dest_box.SetText("PPP") case tcell.KeyCtrlT: dest_box.SetText("TTT") + case tcell.KeyCtrlS: + dest_box.SetText("SSS") } return event