59 lines
1.0 KiB
Go
59 lines
1.0 KiB
Go
// 16 august 2014
|
|
|
|
package ui
|
|
|
|
import (
|
|
"unsafe"
|
|
)
|
|
|
|
// #include "objc_darwin.h"
|
|
import "C"
|
|
|
|
type group struct {
|
|
_id C.id
|
|
|
|
*container
|
|
}
|
|
|
|
func newGroup(text string, control Control) Group {
|
|
g := new(group)
|
|
g.container = newContainer(control)
|
|
g._id = C.newGroup(g.container.id)
|
|
g.SetText(text)
|
|
return g
|
|
}
|
|
|
|
func (g *group) Text() string {
|
|
return C.GoString(C.groupText(g._id))
|
|
}
|
|
|
|
func (g *group) SetText(text string) {
|
|
ctext := C.CString(text)
|
|
defer C.free(unsafe.Pointer(ctext))
|
|
C.groupSetText(g._id, ctext)
|
|
}
|
|
|
|
func (g *group) id() C.id {
|
|
return g._id
|
|
}
|
|
|
|
func (g *group) setParent(p *controlParent) {
|
|
basesetParent(g, p)
|
|
}
|
|
|
|
func (g *group) allocate(x int, y int, width int, height int, d *sizing) []*allocation {
|
|
return baseallocate(g, x, y, width, height, d)
|
|
}
|
|
|
|
func (g *group) preferredSize(d *sizing) (width, height int) {
|
|
return basepreferredSize(g, d)
|
|
}
|
|
|
|
func (g *group) commitResize(a *allocation, d *sizing) {
|
|
basecommitResize(g, a, d)
|
|
}
|
|
|
|
func (g *group) getAuxResizeInfo(d *sizing) {
|
|
basegetAuxResizeInfo(g, d)
|
|
}
|