func GetWindowGeometry(windowId WindowID) (left, top, right, bottom int) { C.XPLMGetWindowGeometry( C.XPLMWindowID(windowId), (*C.int)(unsafe.Pointer(&left)), (*C.int)(unsafe.Pointer(&top)), (*C.int)(unsafe.Pointer(&right)), (*C.int)(unsafe.Pointer(&bottom))) return }
func IsWindowInFront(windowId WindowID) bool { return C.XPLMIsWindowInFront(C.XPLMWindowID(windowId)) == 1 }
func BringWindowToFront(windowId WindowID) { C.XPLMBringWindowToFront(C.XPLMWindowID(windowId)) }
func TakeKeyboardFocus(windowId WindowID) { C.XPLMTakeKeyboardFocus(C.XPLMWindowID(windowId)) }
func SetWindowRefCon(windowId WindowID, ref interface{}) { id := (*C.char)(C.XPLMGetWindowRefCon(C.XPLMWindowID(windowId))) windows[id].Ref = ref }
func GetWindowRefCon(windowId WindowID) interface{} { id := (*C.char)(C.XPLMGetWindowRefCon(C.XPLMWindowID(windowId))) return windows[id].Ref }
func SetWindowIsVisible(windowId WindowID, isVisible bool) { C.XPLMSetWindowIsVisible(C.XPLMWindowID(windowId), C.int(goplane.FromBoolToInt(isVisible))) }
func GetWindowIsVisible(windowId WindowID) bool { return C.XPLMGetWindowIsVisible(C.XPLMWindowID(windowId)) == 1 }
func SetWindowGeometry(windowId WindowID, left, top, right, bottom int) { C.XPLMSetWindowGeometry(C.XPLMWindowID(windowId), C.int(left), C.int(top), C.int(right), C.int(bottom)) }
func DestroyWindow(windowId WindowID) { C.XPLMDestroyWindow(C.XPLMWindowID(windowId)) }