From 316e5e9db4678d6b3fc545db6e8c54e23d6585e4 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Mon, 17 Feb 2014 02:34:58 -0500 Subject: Split out the dialog functions into portable and non-portable code to keep the package documentation in the portable code only. --- dialog.go | 17 +++++++++++++++++ dialog_windows.go | 12 +++++------- 2 files changed, 22 insertions(+), 7 deletions(-) create mode 100644 dialog.go diff --git a/dialog.go b/dialog.go new file mode 100644 index 0000000..d152e78 --- /dev/null +++ b/dialog.go @@ -0,0 +1,17 @@ +// 7 february 2014 +package main + +import ( + "fmt" +) + + +// MsgBox displays an informational message box to the user with just an OK button. +func MsgBox(title string, textfmt string, args ...interface{}) { + msgBox(title, fmt.Sprintf(textfmt, args...)) +} + +// MsgBoxError displays a message box to the user with just an OK button and an icon indicating an error. +func MsgBoxError(title string, textfmt string, args ...interface{}) { + msgBoxError(title, fmt.Sprintf(textfmt, args...)) +} diff --git a/dialog_windows.go b/dialog_windows.go index 6a01f1b..292f801 100644 --- a/dialog_windows.go +++ b/dialog_windows.go @@ -73,7 +73,7 @@ var ( _messageBox = user32.NewProc("MessageBoxW") ) -func msgBox(lpText string, lpCaption string, uType uint32) (result int) { +func _msgBox(lpText string, lpCaption string, uType uint32) (result int) { r1, _, err := _messageBox.Call( uintptr(_NULL), uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr(lpText))), @@ -85,13 +85,11 @@ func msgBox(lpText string, lpCaption string, uType uint32) (result int) { return int(r1) } -// MsgBox displays an informational message box to the user with just an OK button. -func MsgBox(title string, textfmt string, args ...interface{}) { +func msgBox(title string, text string) { // TODO add an icon? - msgBox(fmt.Sprintf(textfmt, args...), title, _MB_OK) + _msgBox(text, title, _MB_OK) } -// MsgBoxError displays a message box to the user with just an OK button and an icon indicating an error. -func MsgBoxError(title string, textfmt string, args ...interface{}) { - msgBox(fmt.Sprintf(textfmt, args...), title, _MB_OK | _MB_ICONERROR) +func msgBoxError(title string, text string) { + _msgBox(text, title, _MB_OK | _MB_ICONERROR) } -- cgit v1.2.3