diff --git a/stddialogs.go b/stddialogs.go index ed12772..f30c75f 100644 --- a/stddialogs.go +++ b/stddialogs.go @@ -5,8 +5,6 @@ package ui // #include "ui.h" import "C" -// TODO OpenFile, SaveFile, MsgBox - // TODO func MsgBoxError(w *Window, title string, description string) { ctitle := C.CString(title) @@ -15,3 +13,25 @@ func MsgBoxError(w *Window, title string, description string) { freestr(ctitle) freestr(cdescription) } + +func OpenFile(w *Window) string { + cname := C.uiOpenFile(w.w) + name := C.GoString(cname) + freestr(cname) + return name +} + +func SaveFile(w *Window) string { + cname := C.uiSaveFile(w.w) + name := C.GoString(cname) + freestr(cname) + return name +} + +func MsgBox(w *Window, title string, description string) { + ctitle := C.CString(title) + cdescription := C.CString(description) + C.uiMsgBox(w.w, ctitle, cdescription) + freestr(ctitle) + freestr(cdescription) +}