common

package
v2.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 12, 2024 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Process ProcessInfo // Process information
	Build   BuildInfo   // Build information
)

Functions

func AllTrue added in v2.5.0

func AllTrue(items []bool) bool

func AllZero added in v2.5.0

func AllZero(items []uint) bool

func CacheEnabled added in v2.4.0

func CacheEnabled() bool

func CacheFolderPath

func CacheFolderPath(name string) string

func ConfigFolderPath

func ConfigFolderPath(name string) string

func Feature added in v2.5.0

func Feature(name string) bool

func HashString added in v2.5.0

func HashString(text string) string

func InitArgs

func InitArgs(introspect map[string][]string)

func InitCache

func InitCache()

func InitConfig

func InitConfig()

func InitFiles

func InitFiles(toml, icon []byte)

func InitInfo added in v2.5.0

func InitInfo(name, version, commit, date, source string)

func IsInList

func IsInList(item string, items []string) bool

func IsInsideRect

func IsInsideRect(p Point, g Geometry) bool

func Latest

func Latest(source string) string

func ParseArgs added in v2.5.0

func ParseArgs(flags *flag.FlagSet, args []string) []string

func ReverseList added in v2.5.0

func ReverseList[T any](items []T) []T

func TruncateString added in v2.5.0

func TruncateString(s string, max int) string

func VersionToInt

func VersionToInt(version string) int

Types

type Arguments

type Arguments struct {
	Cache  string // Argument for cache folder path
	Config string // Argument for config file path
	Lock   string // Argument for lock file path
	Sock   string // Argument for sock file path
	Log    string // Argument for log file path
	VVV    bool   // Argument for very very verbose mode
	VV     bool   // Argument for very verbose mode
	V      bool   // Argument for verbose mode
	Dbus   struct {
		Listen   bool     // Argument for dbus listen flag
		Method   string   // Argument for dbus method name
		Property string   // Argument for dbus property name
		Args     []string // Argument for dbus method arguments
	}
}
var (
	Args Arguments // Parsed arguments
)

type BuildInfo

type BuildInfo struct {
	Name    string // Build name
	Version string // Build version
	Commit  string // Build commit
	Date    string // Build date
	Source  string // Build source
	Latest  string // Build latest
	Summary string // Build summary
}

type Cache

type Cache[T any] struct {
	Folder string // Cache file folder
	Name   string // Cache file name
	Data   T      // Cache file data
}

type Configuration

type Configuration struct {
	TilingEnabled     bool              `toml:"tiling_enabled"`      // Tile windows on startup
	TilingLayout      string            `toml:"tiling_layout"`       // Initial tiling layout
	TilingGui         int               `toml:"tiling_gui"`          // Time duration of gui
	TilingIcon        [][]string        `toml:"tiling_icon"`         // Menu entries of systray
	WindowIgnore      [][]string        `toml:"window_ignore"`       // Regex to ignore windows
	WindowMastersMax  int               `toml:"window_masters_max"`  // Maximum number of allowed masters
	WindowSlavesMax   int               `toml:"window_slaves_max"`   // Maximum number of allowed slaves
	WindowGapSize     int               `toml:"window_gap_size"`     // Gap size between windows
	WindowDecoration  bool              `toml:"window_decoration"`   // Show window decorations
	ProportionStep    float64           `toml:"proportion_step"`     // Master-slave area step size proportion
	ProportionMin     float64           `toml:"proportion_min"`      // Window size minimum proportion
	EdgeMargin        []int             `toml:"edge_margin"`         // Margin values of tiling area
	EdgeMarginPrimary []int             `toml:"edge_margin_primary"` // Margin values of primary tiling area
	EdgeCornerSize    int               `toml:"edge_corner_size"`    // Size of square defining edge corners
	EdgeCenterSize    int               `toml:"edge_center_size"`    // Length of rectangle defining edge centers
	Colors            map[string][]int  `toml:"colors"`              // List of color values for gui elements
	Keys              map[string]string `toml:"keys"`                // Event bindings for keyboard shortcuts
	Corners           map[string]string `toml:"corners"`             // Event bindings for hot-corner actions
	Systray           map[string]string `toml:"systray"`             // Event bindings for systray icon
}
var (
	Config Configuration // Decoded config values
)

type FileData

type FileData struct {
	Toml []byte // Default config file
	Icon []byte // Application icon
}
var (
	File FileData // Embedded file bytes
)

type Geometry added in v2.5.0

type Geometry struct {
	X      int // Object geometry x position
	Y      int // Object geometry y position
	Width  int // Object geometry width dimension
	Height int // Object geometry height dimension
}

func CreateGeometry added in v2.5.0

func CreateGeometry(r xrect.Rect) *Geometry

func (*Geometry) Center added in v2.5.0

func (g *Geometry) Center() Point

func (*Geometry) Pieces added in v2.5.0

func (g *Geometry) Pieces() (int, int, int, int)

func (*Geometry) Rect added in v2.5.0

func (g *Geometry) Rect() xrect.Rect

type Map added in v2.5.0

type Map = map[string]interface{} // Generic map type

type Point added in v2.5.0

type Point struct {
	X int // Object point x position
	Y int // Object point y position
}

func CreatePoint added in v2.5.0

func CreatePoint(x int, y int) *Point

type ProcessInfo added in v2.5.0

type ProcessInfo struct {
	Id     int    // Process id
	Path   string // Process path
	Host   string // Process host
	System string // Process system
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL