diff options
Diffstat (limited to 'redo/textfield_darwin.go')
| -rw-r--r-- | redo/textfield_darwin.go | 50 |
1 files changed, 40 insertions, 10 deletions
diff --git a/redo/textfield_darwin.go b/redo/textfield_darwin.go index 0b248a7..475bda7 100644 --- a/redo/textfield_darwin.go +++ b/redo/textfield_darwin.go @@ -10,29 +10,59 @@ import ( import "C" type textField struct { - *controlbase + _id C.id } -func finishNewTextField(id C.id) *textField { +func newTextField() *textField { return &textField{ - controlbase: newControl(id), + _id: C.newTextField(), } } -func newTextField() *textField { - return finishNewTextField(C.newTextField()) -} - func newPasswordField() *textField { - return finishNewTextField(C.newPasswordField()) + return &textField{ + _id: C.newPasswordField(), + } } func (t *textField) Text() string { - return C.GoString(C.textFieldText(t.id)) + return C.GoString(C.textFieldText(t._id)) } func (t *textField) SetText(text string) { ctext := C.CString(text) defer C.free(unsafe.Pointer(ctext)) - C.textFieldSetText(t.id, ctext) + C.textFieldSetText(t._id, ctext) +} + +func (t *textField) id() C.id { + return t._id +} + +func (t *textField) setParent(p *controlParent) { + basesetParent(t, p) +} + +func (t *textField) containerShow() { + basecontainerShow(t) +} + +func (t *textField) containerHide() { + basecontainerHide(t) +} + +func (t *textField) allocate(x int, y int, width int, height int, d *sizing) []*allocation { + return baseallocate(t, x, y, width, height, d) +} + +func (t *textField) preferredSize(d *sizing) (width, height int) { + return basepreferredSize(t, d) +} + +func (t *textField) commitResize(a *allocation, d *sizing) { + basecommitResize(t, a, d) +} + +func (t *textField) getAuxResizeInfo(d *sizing) { + basegetAuxResizeInfo(t, d) } |
