gui-for-ffmpeg/theme/repository.go
Leonid Nikitin d69767f5e9
Remove bbolt database dependency
Replaced bbolt-based database handling with Fyne built-in preferences for storing application settings. Deleted migration logic, database initialization, and error handling related to bbolt, simplifying the codebase and reducing external dependencies.
2025-05-30 00:34:33 +05:00

29 lines
639 B
Go

package theme
import "git.kor-elf.net/kor-elf/gui-for-ffmpeg/setting"
type RepositoryContract interface {
GetCode() string
Save(code string) setting.Setting
}
type Repository struct {
settingRepository setting.RepositoryContract
}
func NewRepository(settingRepository setting.RepositoryContract) *Repository {
return &Repository{settingRepository: settingRepository}
}
func (r Repository) GetCode() string {
name := r.settingRepository.GetValue("theme")
if len(name) == 0 {
return "default"
}
return name
}
func (r Repository) Save(code string) setting.Setting {
return r.settingRepository.CreateOrUpdate("theme", code)
}