File: style_context.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 (43 lines) | stat: -rw-r--r-- 1,008 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
package gtka

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

type styleContext struct {
	*gliba.Object
	internal *gtk.StyleContext
}

func wrapStyleContextSimple(v *gtk.StyleContext) *styleContext {
	if v == nil {
		return nil
	}
	return &styleContext{gliba.WrapObjectSimple(v.Object), v}
}

func wrapStyleContext(v *gtk.StyleContext, e error) (*styleContext, error) {
	return wrapStyleContextSimple(v), e
}

func unwrapStyleContext(v gtki.StyleContext) *gtk.StyleContext {
	if v == nil {
		return nil
	}
	return v.(*styleContext).internal
}

func (v *styleContext) AddClass(v1 string) {
	v.internal.AddClass(v1)
}

func (v *styleContext) AddProvider(v1 gtki.StyleProvider, v2 uint) {
	v.internal.AddProvider(unwrapStyleProvider(v1), v2)
}

func (v *styleContext) GetProperty2(v1 string, v2 gtki.StateFlags) (interface{}, error) {
	vx1, vx2 := v.internal.GetProperty(v1, gtk.StateFlags(v2))
	return gliba.WrapAllGuard(vx1), vx2
}