parent
20e637f68c
commit
272f7147ab
@ -1,96 +0,0 @@
|
||||
// ------------------------------------------------------------------------
|
||||
// Project active2
|
||||
// Active Thing (activething.com) git.activething.com/go
|
||||
//
|
||||
// File name color.go
|
||||
// Created by DEV
|
||||
// Modified 27/03/2024
|
||||
//
|
||||
// Copyright 2024 activething.com
|
||||
// ------------------------------------------------------------------------
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
// ------------------------------------------------------------------------
|
||||
|
||||
package ftext
|
||||
|
||||
import "fmt"
|
||||
|
||||
const (
|
||||
|
||||
ColorNone Color = 0
|
||||
ColorBlack Color = 29 + iota
|
||||
ColorRed
|
||||
ColorGreen
|
||||
ColorYellow
|
||||
ColorBlue
|
||||
ColorMagenta
|
||||
ColorCyan
|
||||
ColorWhite
|
||||
)
|
||||
|
||||
|
||||
type (
|
||||
|
||||
Color uint8
|
||||
)
|
||||
|
||||
|
||||
func (c Color) BeginColorString() string {
|
||||
if !c.IsValid() {
|
||||
return ""
|
||||
}
|
||||
return fmt.Sprintf("\u001B[%dm",uint8(c))
|
||||
}
|
||||
|
||||
func (c Color) EndColorString () string {
|
||||
if !c.IsValid() {
|
||||
return ""
|
||||
}
|
||||
return "\x1b[0m"
|
||||
}
|
||||
|
||||
|
||||
func (c Color) StringColor(str string) string {
|
||||
if !c.IsValid() {
|
||||
return str
|
||||
}
|
||||
return fmt.Sprintf("\x1b[%dm%s\x1b[0m", uint8(c),str)
|
||||
}
|
||||
|
||||
|
||||
func (c Color) SprintfColor(fm string, params ...any) string {
|
||||
if !c.IsValid() {
|
||||
return fmt.Sprintf(fm,params...)
|
||||
}
|
||||
return fmt.Sprintf("\x1b[%dm%s\x1b[0m", uint8(c),fmt.Sprintf(fm,params...)) }
|
||||
|
||||
|
||||
func (c Color) Name () string {
|
||||
switch c {
|
||||
case ColorBlack : return "black"
|
||||
case ColorRed : return "red"
|
||||
case ColorGreen : return "green"
|
||||
case ColorYellow : return "yellow"
|
||||
case ColorBlue : return "blue"
|
||||
case ColorMagenta: return "magenta"
|
||||
case ColorCyan : return "cyan"
|
||||
case ColorWhite :
|
||||
return "white"
|
||||
default:return ""
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func (c Color) IsValid() bool {
|
||||
return c >= ColorBlack && c <= ColorWhite
|
||||
}
|
||||
Loading…
Reference in new issue