package main import ( _ "embed" "github.com/diamondburned/gotk4/pkg/gdk/v4" "github.com/diamondburned/gotk4/pkg/gdkpixbuf/v2" ) //go:embed debug.png var defaultAvatarBytes []byte //go:embed failed_load.png var failedBytes []byte //go:embed assets/owner.png var ownerMedalBytes []byte //go:embed assets/admin.png var adminMedalBytes []byte //go:embed assets/member.png var memberMedalBytes []byte //go:embed assets/noaffiliation.png var noneMedalBytes []byte //go:embed assets/outcast.png var outcastMedalBytes []byte //go:embed assets/cancel.png var cancelBytes []byte //go:embed assets/status_away.png var sABytes []byte //go:embed assets/status_busy.png var sBBytes []byte //go:embed assets/status_chatty.png var sCBytes []byte //go:embed assets/status_online.png var sOBytes []byte //go:embed assets/status_xa.png var xaBytes []byte //go:embed assets/tag.png var tagBytes []byte //go:embed assets/lambda-disabled.png var logoDisabledBytes []byte //go:embed assets/group.png var groupBytes []byte //go:embed assets/door_in.png var doorInBytes []byte //go:embed assets/door_out.png var doorOutBytes []byte //go:embed assets/large_group.png var largeGroupBytes []byte //go:embed assets/world.png var worldBytes []byte //go:embed assets/disconnect.png var disconnectBytes []byte //go:embed assets/chart_bar.png var barBytes []byte //go:embed assets/chart_bar_laggy.png var barLaggyBytes []byte //go:embed assets/ok.png var okBytes []byte //go:embed assets/hourglass.png var hourglassBytes []byte //go:embed assets/connect_tls.png var connectBytes []byte //go:embed assets/comment.png var commentBytes []byte //go:embed assets/information.png var informationBytes []byte //go:embed assets/car.png var carBytes []byte //go:embed assets/car_high.png var carHighBytes []byte // muc icons //go:embed assets/muc_open.png var mucOpenBytes []byte //go:embed assets/muc_membersonly.png var mucMembersOnlyBytes []byte //go:embed assets/muc_passwordprotected.png var mucPasswordProtectedBytes []byte //go:embed assets/muc_unsecured.png var mucUnsecuredBytes []byte //go:embed assets/muc_hidden.png var mucHiddenBytes []byte //go:embed assets/muc_public.png var mucPublicBytes []byte //go:embed assets/muc_unmoderated.png var mucUnmoderatedBytes []byte //go:embed assets/muc_moderated.png var mucModeratedBytes []byte //go:embed assets/muc_nonanonymous.png var mucNonAnonymousBytes []byte //go:embed assets/muc_semianonymous.png var mucSemiAnonymousBytes []byte //go:embed assets/muc_persistent.png var mucPersistentBytes []byte //go:embed assets/muc_temporary.png var mucTemporaryBytes []byte //go:embed assets/moderate.png var moderateBytes []byte func loadAsset(key string, data []byte) { loader := gdkpixbuf.NewPixbufLoader() loader.Write(data) loader.Close() clientAssets[key] = gdk.NewTextureForPixbuf(loader.Pixbuf()) } func init() { for key, data := range map[string][]byte{ "DefaultAvatar": defaultAvatarBytes, "FailedAvatar": failedBytes, "owner": ownerMedalBytes, "admin": adminMedalBytes, "member": memberMedalBytes, "none": noneMedalBytes, "outcast": outcastMedalBytes, "cancel": cancelBytes, "tag": tagBytes, "disabled_logo": logoDisabledBytes, "group": groupBytes, "door_in": doorInBytes, "door_out": doorOutBytes, "large_group": largeGroupBytes, "world": worldBytes, "disconnect": disconnectBytes, "chart_bar": barBytes, "chart_bar_laggy": barLaggyBytes, "ok": okBytes, "hourglass": hourglassBytes, "connect": connectBytes, "comment": commentBytes, "information": informationBytes, "status_away": sABytes, "status_dnd": sBBytes, "status_chat": sCBytes, "status_xa": xaBytes, "status_": sOBytes, "car": carBytes, "car_high": carHighBytes, "muc_open": mucOpenBytes, "muc_membersonly": mucMembersOnlyBytes, "muc_passwordprotected": mucPasswordProtectedBytes, "muc_unsecured": mucUnsecuredBytes, "muc_hidden": mucHiddenBytes, "muc_public": mucPublicBytes, "muc_unmoderated": mucUnmoderatedBytes, "muc_moderated": mucModeratedBytes, "muc_nonanonymous": mucNonAnonymousBytes, "muc_semianonymous": mucSemiAnonymousBytes, "muc_persistent": mucPersistentBytes, "muc_temporary": mucTemporaryBytes, "moderate": moderateBytes, } { loadAsset(key, data) } }