Parcourir la source

config: refactor

ayn2op il y a 9 mois
Parent
commit
7fe4ff7df1
2 fichiers modifiés avec 40 ajouts et 37 suppressions
  1. 39 0
      internal/config/border.go
  2. 1 37
      internal/config/theme.go

+ 39 - 0
internal/config/border.go

@@ -0,0 +1,39 @@
+package config
+
+import "github.com/ayn2op/tview"
+
+type (
+	TitleTheme struct {
+		ThemeStyle
+		Alignment AlignmentWrapper `toml:"alignment"`
+	}
+
+	BorderTheme struct {
+		ThemeStyle
+		Enabled bool             `toml:"enabled"`
+		Padding [4]int           `toml:"padding"`
+		Set     BorderSetWrapper `toml:"set"`
+	}
+)
+
+type BorderSetWrapper struct{ tview.BorderSet }
+
+func (bw *BorderSetWrapper) UnmarshalTOML(val any) error {
+	s, ok := val.(string)
+	if !ok {
+		return errInvalidType
+	}
+
+	switch s {
+	case "plain":
+		bw.BorderSet = tview.BorderSetPlain()
+	case "round":
+		bw.BorderSet = tview.BorderSetRound()
+	case "thick":
+		bw.BorderSet = tview.BorderSetThick()
+	case "double":
+		bw.BorderSet = tview.BorderSetDouble()
+	}
+
+	return nil
+}

+ 1 - 37
internal/config/theme.go

@@ -7,31 +7,7 @@ import (
 	"github.com/gdamore/tcell/v2"
 )
 
-var (
-	errInvalidType = errors.New("invalid type")
-)
-
-type BorderSetWrapper struct{ tview.BorderSet }
-
-func (bw *BorderSetWrapper) UnmarshalTOML(val any) error {
-	s, ok := val.(string)
-	if !ok {
-		return errInvalidType
-	}
-
-	switch s {
-	case "plain":
-		bw.BorderSet = tview.BorderSetPlain()
-	case "round":
-		bw.BorderSet = tview.BorderSetRound()
-	case "thick":
-		bw.BorderSet = tview.BorderSetThick()
-	case "double":
-		bw.BorderSet = tview.BorderSetDouble()
-	}
-
-	return nil
-}
+var errInvalidType = errors.New("invalid type")
 
 type AlignmentWrapper struct{ tview.Alignment }
 
@@ -113,18 +89,6 @@ type (
 		ActiveStyle StyleWrapper `toml:"active_style"`
 	}
 
-	TitleTheme struct {
-		ThemeStyle
-		Alignment AlignmentWrapper `toml:"alignment"`
-	}
-
-	BorderTheme struct {
-		ThemeStyle
-		Enabled bool             `toml:"enabled"`
-		Padding [4]int           `toml:"padding"`
-		Set     BorderSetWrapper `toml:"set"`
-	}
-
 	GuildsTreeTheme struct {
 		AutoExpandFolders bool   `toml:"auto_expand_folders"`
 		Graphics          bool   `toml:"graphics"`