summaryrefslogtreecommitdiff
path: root/prev/uitask_darwin.go
diff options
context:
space:
mode:
authorPietro Gagliardi <[email protected]>2015-12-11 20:37:59 -0500
committerPietro Gagliardi <[email protected]>2015-12-11 20:37:59 -0500
commitf8e3f12ab02b528f2a05a4f713d7af7ea8e44b42 (patch)
tree82dedf4d37f0f6d31e88ebb2ca1ce6499dead261 /prev/uitask_darwin.go
parente34c561ed5bedeb180437ec165882b98d70d38c1 (diff)
LET'S GET THIS FINAL REWRITE EVER STARTED
Diffstat (limited to 'prev/uitask_darwin.go')
-rw-r--r--prev/uitask_darwin.go41
1 files changed, 41 insertions, 0 deletions
diff --git a/prev/uitask_darwin.go b/prev/uitask_darwin.go
new file mode 100644
index 0000000..13de8e0
--- /dev/null
+++ b/prev/uitask_darwin.go
@@ -0,0 +1,41 @@
+// 8 july 2014
+
+package ui
+
+import (
+ "fmt"
+ "unsafe"
+)
+
+// #cgo CFLAGS: -mmacosx-version-min=10.7 -DMACOSX_DEPLOYMENT_TARGET=10.7
+// #cgo LDFLAGS: -mmacosx-version-min=10.7 -lobjc -framework Foundation -framework AppKit
+// #include "objc_darwin.h"
+import "C"
+
+func uiinit() error {
+ var errmsg *C.char
+
+ errmsg = nil
+ C.uiinit(&errmsg)
+ if errmsg != nil {
+ return fmt.Errorf("package ui initialization failed: %s", C.GoString(errmsg))
+ }
+ return nil
+}
+
+func uimsgloop() {
+ C.uimsgloop()
+}
+
+func uistop() {
+ C.uistop()
+}
+
+func issue(f *func()) {
+ C.issue(unsafe.Pointer(f))
+}
+
+//export doissue
+func doissue(fp unsafe.Pointer) {
+ perform(fp)
+}