diff options
| author | Jeff Carr <[email protected]> | 2025-02-09 04:33:30 -0600 |
|---|---|---|
| committer | Jeff Carr <[email protected]> | 2025-02-09 04:33:30 -0600 |
| commit | c00084bf3fe773bfeee538dcb7f8ee2a85865d29 (patch) | |
| tree | eaab36a58e8f59eae604a8893116228e334d5a06 | |
| parent | 9a08b37be40781681e5432774d6bc60a7a7816f1 (diff) | |
better window title colors
| -rw-r--r-- | colorNew.go | 57 | ||||
| -rw-r--r-- | window.go | 21 |
2 files changed, 62 insertions, 16 deletions
diff --git a/colorNew.go b/colorNew.go index 557b148..0300293 100644 --- a/colorNew.go +++ b/colorNew.go @@ -9,6 +9,17 @@ import ( "github.com/awesome-gocui/gocui" ) +func (tk *guiWidget) updateColor() { + if tk.v == nil { + return + } + tk.v.FrameColor = tk.color.frame + tk.v.FgColor = tk.color.fg + tk.v.BgColor = tk.color.bg + tk.v.SelFgColor = tk.color.selFg + tk.v.SelBgColor = tk.color.selBg +} + func (tk *guiWidget) setColorWindowFrame() { if tk.color == nil { tk.color = new(colorT) @@ -19,6 +30,7 @@ func (tk *guiWidget) setColorWindowFrame() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.AttrNone + tk.updateColor() return } tk.color.frame = gocui.AttrNone @@ -26,10 +38,12 @@ func (tk *guiWidget) setColorWindowFrame() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.AttrNone + + tk.updateColor() } // weird. lots of color problems for me on debian sid using the traditional Andy Herzfield 'gnome' -func (tk *guiWidget) setColorWindowTitle() { +func (tk *guiWidget) setColorWindowTitleActive() { if tk.color == nil { tk.color = new(colorT) } @@ -39,6 +53,7 @@ func (tk *guiWidget) setColorWindowTitle() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.ColorBlue + tk.updateColor() return } tk.color.frame = gocui.ColorWhite @@ -46,6 +61,30 @@ func (tk *guiWidget) setColorWindowTitle() { tk.color.bg = gocui.ColorBlue tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.ColorBlue + + tk.updateColor() +} + +func (tk *guiWidget) setColorWindowTitle() { + if tk.color == nil { + tk.color = new(colorT) + } + if me.dark { // use a dark color palette + tk.color.frame = gocui.AttrNone + tk.color.fg = gocui.ColorBlue + tk.color.bg = gocui.AttrNone + tk.color.selFg = gocui.ColorWhite + tk.color.selBg = gocui.ColorBlue + tk.updateColor() + return + } + tk.color.frame = gocui.ColorWhite + tk.color.fg = gocui.ColorBlue + tk.color.bg = gocui.AttrNone + tk.color.selFg = gocui.ColorWhite + tk.color.selBg = gocui.ColorBlue + + tk.updateColor() } func (tk *guiWidget) setColorBG() { @@ -58,6 +97,7 @@ func (tk *guiWidget) setColorBG() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.AttrNone + tk.updateColor() return } tk.color.frame = gocui.ColorWhite @@ -65,6 +105,8 @@ func (tk *guiWidget) setColorBG() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.AttrNone + + tk.updateColor() } func (tk *guiWidget) setColorLabel() { @@ -77,6 +119,7 @@ func (tk *guiWidget) setColorLabel() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.AttrNone + tk.updateColor() return } tk.color.frame = gocui.AttrNone @@ -84,6 +127,8 @@ func (tk *guiWidget) setColorLabel() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.ColorWhite + + tk.updateColor() } func (tk *guiWidget) setColorButtonDense() { @@ -96,6 +141,7 @@ func (tk *guiWidget) setColorButtonDense() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.ColorBlue + tk.updateColor() return } tk.color.frame = gocui.AttrNone @@ -103,6 +149,8 @@ func (tk *guiWidget) setColorButtonDense() { tk.color.bg = gocui.ColorBlue tk.color.selFg = gocui.ColorBlue tk.color.selBg = gocui.AttrNone + + tk.updateColor() } func (tk *guiWidget) setColorButton() { @@ -115,6 +163,7 @@ func (tk *guiWidget) setColorButton() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.ColorBlue + tk.updateColor() return } tk.color.frame = gocui.ColorBlue @@ -122,6 +171,8 @@ func (tk *guiWidget) setColorButton() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.ColorWhite tk.color.selBg = gocui.ColorBlue + + tk.updateColor() } func (tk *guiWidget) setColorInput() { @@ -134,6 +185,7 @@ func (tk *guiWidget) setColorInput() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.ColorYellow tk.color.selBg = gocui.ColorBlack + tk.updateColor() return } tk.color.frame = gocui.ColorYellow @@ -141,6 +193,7 @@ func (tk *guiWidget) setColorInput() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.ColorYellow tk.color.selBg = gocui.ColorBlack + tk.updateColor() } func (tk *guiWidget) setColorModal() { @@ -153,6 +206,7 @@ func (tk *guiWidget) setColorModal() { tk.color.bg = gocui.ColorBlack tk.color.selFg = gocui.ColorBlack tk.color.selBg = gocui.AttrNone + tk.updateColor() return } tk.color.frame = gocui.ColorRed @@ -160,4 +214,5 @@ func (tk *guiWidget) setColorModal() { tk.color.bg = gocui.AttrNone tk.color.selFg = gocui.AttrNone tk.color.selBg = gocui.ColorWhite + tk.updateColor() } @@ -19,7 +19,7 @@ func (tk *guiWidget) setTitle(s string) { if tk.v == nil { return } - tk.setColorWindowTitle() + tk.setColorWindowTitleActive() rect := tk.gocuiSize rect.w1 = rect.w0 + tk.full.Width() + 1 // rect.h1 = rect.h0 + 1 @@ -56,7 +56,8 @@ func (tk *guiWidget) redrawWindow(w int, h int) { tk.hasTabs = false tk.DrawAt(w, h) - tk.setColor(&colorActiveW) // sets the window to Green BG + // tk.setColor(&colorActiveW) // sets the window to Green BG + tk.setColorWindowTitleActive() if tk.window.collapsed { // don't show anything but the title bar @@ -70,22 +71,11 @@ func (tk *guiWidget) redrawWindow(w int, h int) { tk.full.h0 = tk.force.h0 tk.setFullSize() - /* - v, err := me.baseGui.SetView(tk.cuiName, tk.gocuiSize.w0, tk.gocuiSize.h0, tk.gocuiSize.w1, tk.gocuiSize.h1, 0) - if err != nil { - log.Info("crap. got an err", err) - } - if tk.v != v { - log.Info("crap. got another problem v != tk.v") - } - */ tk.Show() tk.v.Clear() fmt.Fprint(tk.v, "ZZZ"+tk.GetText()) tk.showWidgets() - // RE-VERIFY THIS CAN'T BE DONE IN A BETTER WAY. However, for now, this works finally so I am leaving it alone - if tk.windowFrame == nil { tk.addWindowFrameTK(0 - tk.node.WidgetId) tk.windowFrame.node.State.Label = "" // temporary name. blank out when ready for release @@ -116,7 +106,7 @@ func (tk *guiWidget) redrawWindow(w int, h int) { tk.showWidgets() // draw the window title - tk.setTitle(tk.node.GetLabel() + " jwc") + tk.setTitle(tk.node.GetLabel()) } // re-draws the buttons for each of the windows @@ -195,7 +185,8 @@ func (tk *guiWidget) makeWindowActive() { for _, tk := range me.allwin { tk.window.order += 1 tk.window.active = false - tk.setColor(&colorWindow) // color for inactive windows + // tk.setColor(&colorWindow) // color for inactive windows + tk.setColorWindowTitle() } // set this window as the active one |
