File: builder.go

package info (click to toggle)
golang-github-twstrike-gotk3adapter 0.0~git20170505.0.901a95d%2Bds-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 1,232 kB
  • sloc: ruby: 478; makefile: 4
file content (52 lines) | stat: -rw-r--r-- 1,138 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
package gtka

import (
	"github.com/gotk3/gotk3/gtk"
	"github.com/twstrike/gotk3adapter/gliba"
	"github.com/twstrike/gotk3adapter/glibi"
	"github.com/twstrike/gotk3adapter/gtki"
)

type builder struct {
	*gliba.Object
	internal *gtk.Builder
}

func wrapBuilderSimple(v *gtk.Builder) *builder {
	if v == nil {
		return nil
	}
	return &builder{gliba.WrapObjectSimple(v.Object), v}
}

func wrapBuilder(v *gtk.Builder, e error) (*builder, error) {
	return wrapBuilderSimple(v), e
}

func unwrapBuilder(v gtki.Builder) *gtk.Builder {
	if v == nil {
		return nil
	}
	return v.(*builder).internal
}

func (v *builder) AddFromString(v1 string) error {
	return v.internal.AddFromString(v1)
}

func (v *builder) AddFromResource(v1 string) error {
	return v.internal.AddFromResource(v1)
}

func (v *builder) GetObject(v1 string) (glibi.Object, error) {
	vx1, vx2 := v.internal.GetObject(v1)
	return Wrap(vx1).(glibi.Object), vx2
}

func (v *builder) ConnectSignals(v1 map[string]interface{}) {
	newSignals := make(map[string]interface{})
	for k, vv := range v1 {
		newSignals[k] = gliba.FixupFunction(vv)
	}
	v.internal.ConnectSignals(newSignals)
}