summaryrefslogtreecommitdiff
path: root/redo/dialog_windows.go
blob: 80f7ac60dd091c9606e48c24e8b5e98212209c33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// 18 august 2014

package ui

import (
	"unsafe"
)

// #include "winapi_windows.h"
import "C"

func (w *window) openFile(f func(filename string)) {
	C.openFile(w.hwnd, unsafe.Pointer(&f))
}

//export finishOpenFile
func finishOpenFile(name *C.WCHAR, fp unsafe.Pointer) {
	f := (*func(string))(fp)
	if name == nil {
		(*f)("")
		return
	}
	defer C.free(unsafe.Pointer(name))
	(*f)(wstrToString(name))
}