2020-06-13 07:29:32 +00:00
|
|
|
package icons
|
|
|
|
|
|
|
|
import (
|
|
|
|
"log"
|
|
|
|
|
|
|
|
"github.com/gotk3/gotk3/gdk"
|
|
|
|
)
|
|
|
|
|
|
|
|
// static assets
|
2020-07-16 05:41:21 +00:00
|
|
|
var assets = map[string]*gdk.Pixbuf{}
|
|
|
|
|
2020-07-17 00:21:14 +00:00
|
|
|
func Logo256Variant2(sz int) *gdk.Pixbuf {
|
|
|
|
return loadPixbuf(__cchat_variant2_256, sz)
|
2020-07-16 05:41:21 +00:00
|
|
|
}
|
2020-06-13 07:29:32 +00:00
|
|
|
|
2020-07-17 00:21:14 +00:00
|
|
|
func Logo256(sz int) *gdk.Pixbuf {
|
|
|
|
return loadPixbuf(__cchat_256, sz)
|
2020-06-13 07:29:32 +00:00
|
|
|
}
|
|
|
|
|
2020-07-17 00:21:14 +00:00
|
|
|
func loadPixbuf(data []byte, sz int) *gdk.Pixbuf {
|
2020-06-13 07:29:32 +00:00
|
|
|
l, err := gdk.PixbufLoaderNew()
|
|
|
|
if err != nil {
|
|
|
|
log.Fatalln("Failed to create a pixbuf loader for icons:", err)
|
|
|
|
}
|
|
|
|
|
2020-07-17 00:21:14 +00:00
|
|
|
if sz > 0 {
|
|
|
|
l.Connect("size-prepared", func() { l.SetSize(sz, sz) })
|
|
|
|
}
|
|
|
|
|
2020-07-16 05:41:21 +00:00
|
|
|
p, err := l.WriteAndReturnPixbuf(data)
|
2020-06-13 07:29:32 +00:00
|
|
|
if err != nil {
|
|
|
|
log.Fatalln("Failed to write and return pixbuf:", err)
|
|
|
|
}
|
|
|
|
|
|
|
|
return p
|
|
|
|
}
|