diff options
Diffstat (limited to 'control.go')
| -rw-r--r-- | control.go | 107 |
1 files changed, 0 insertions, 107 deletions
diff --git a/control.go b/control.go deleted file mode 100644 index 94ea34f..0000000 --- a/control.go +++ /dev/null @@ -1,107 +0,0 @@ -// 12 december 2015 - -package ui - -import ( - "unsafe" -) - -// #include "ui.h" -import "C" - -// Control represents a GUI control. It provdes methods -// common to all Controls. -// -// To create a new Control, implement the control on -// the libui side, then provide access to that control on -// the Go side via an implementation of Control as -// described. -type Control interface { - // Destroy destroys the Control. - // - // Implementations should do any necessary cleanup, - // then call LibuiControlDestroy. - Destroy() - - // LibuiControl returns the libui uiControl pointer that backs - // the Control. This is only used by package ui itself and should - // not be called by programs. - LibuiControl() uintptr - - // Handle returns the OS-level handle that backs the - // Control. On OSs that use reference counting for - // controls, Handle does not increment the reference - // count; you are sharing package ui's reference. - // - // Implementations should call LibuiControlHandle and - // document exactly what kind of handle is returned. - Handle() uintptr - - // Show shows the Control. - // - // Implementations should call LibuiControlShow. - Show() - - // Hide shows the Control. Hidden controls do not participate - // in layout (that is, Box, Grid, etc. does not reserve space for - // hidden controls). - // - // Implementations should call LibuiControlHide. - Hide() - - // Enable enables the Control. - // - // Implementations should call LibuiControlEnable. - Enable() - - // Disable disables the Control. - // - // Implementations should call LibuiControlDisable. - Disable() -} - -func touiControl(c uintptr) *C.uiControl { - return (*C.uiControl)(unsafe.Pointer(c)) -} - -// LibuiControlDestroy allows implementations of Control -// to call the libui function uiControlDestroy. -func LibuiControlDestroy(c uintptr) { - C.uiControlDestroy(touiControl(c)) -} - -// LibuiControlHandle allows implementations of Control -// to call the libui function uiControlHandle. -func LibuiControlHandle(c uintptr) uintptr { - return uintptr(C.uiControlHandle(touiControl(c))) -} - -// LibuiControlShow allows implementations of Control -// to call the libui function uiControlShow. -func LibuiControlShow(c uintptr) { - C.uiControlShow(touiControl(c)) -} - -// LibuiControlHide allows implementations of Control -// to call the libui function uiControlHide. -func LibuiControlHide(c uintptr) { - C.uiControlHide(touiControl(c)) -} - -// LibuiControlEnable allows implementations of Control -// to call the libui function uiControlEnable. -func LibuiControlEnable(c uintptr) { - C.uiControlEnable(touiControl(c)) -} - -// LibuiControlDisable allows implementations of Control -// to call the libui function uiControlDisable. -func LibuiControlDisable(c uintptr) { - C.uiControlDisable(touiControl(c)) -} - -// LibuiFreeText allows implementations of Control -// to call the libui function uiFreeText. -func LibuiFreeText(c uintptr) { - C.uiFreeText((*C.char)(unsafe.Pointer(c))) -} |
