Startscreen

This commit is contained in:
2026-04-06 22:58:41 +02:00
parent 2032e61672
commit c0f8dd2bdb

View File

@@ -6,6 +6,7 @@ package main
import ( import (
"log" "log"
gc "github.com/rthornton128/goncurses" gc "github.com/rthornton128/goncurses"
) )
@@ -17,37 +18,30 @@ func main() {
log.Fatal(err) log.Fatal(err)
} }
defer gc.End() defer gc.End()
gc.Echo(false)
// HasColors can be used to determine whether the current terminal
// has the capability of using colours. You could then chose whether or
// not to use some other mechanism, like using A_REVERSE, instead
if !gc.HasColors() { if !gc.HasColors() {
log.Fatal("Example requires a colour capable terminal") log.Fatal("Example requires a colour capable terminal")
} }
// Must be called after Init but before using any colour related functions
if err := gc.StartColor(); err != nil { if err := gc.StartColor(); err != nil {
log.Fatal(err) log.Fatal(err)
} }
gc.Echo(false)
// Initialize a colour pair. Should only fail if an improper pair value
// is given
if err := gc.InitPair(1, gc.C_BLACK, gc.C_CYAN); err != nil { if err := gc.InitPair(1, gc.C_BLACK, gc.C_CYAN); err != nil {
log.Fatal("InitPair failed: ", err) log.Fatal("InitPair failed: ", err)
} }
stdscr.Keypad(true) stdscr.Keypad(true)
// ColorOn/Off is a shortcut to calling AttrOn/Off(gc.ColorPair(pair))
stdscr.ColorOn(1) stdscr.ColorOn(1)
stdscr.SetBackground(gc.Char(' ') | gc.ColorPair(1)) stdscr.SetBackground(gc.Char(' ') | gc.ColorPair(1))
stdscr.MovePrint(12, 30, "Hello, World!!!") stdscr.Box(gc.ACS_VLINE, gc.ACS_HLINE)
stdscr.MovePrint(13, 30, "Hello, World in Color!!!") // Window title
stdscr.MovePrint(0, 2, " Pipewire setup utility ")
stdscr.Refresh() stdscr.Refresh()
// Main loop
stdscr.GetChar() stdscr.GetChar()
// end
stdscr.ColorOff(1) stdscr.ColorOff(1)
} }