From 610eae215aa3b8b324e8bf0cbe4f2f9b4fa00662 Mon Sep 17 00:00:00 2001 From: vCaesar Date: Mon, 2 Jan 2017 19:01:10 +0800 Subject: [PATCH] Add AddEvent f1-f12 --- event/goEvent.h | 7 +++++++ robotgo.go | 32 ++++++++++++++++++++++++++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/event/goEvent.h b/event/goEvent.h index 38b27c7..3028911 100644 --- a/event/goEvent.h +++ b/event/goEvent.h @@ -120,6 +120,13 @@ void dispatch_proc(iohook_event * const event) { snprintf(buffer + length, sizeof(buffer) - length, ",keycode=%u,rawcode=0x%X", event->data.keyboard.keycode, event->data.keyboard.rawcode); + int akeycode=(uint16_t) event->data.keyboard.keycode; + // printf("atoi(str)---%d\n", atoi(cevent)); + if (akeycode==atoi(cevent)){ + int astop=aStop(); + // printf("%d\n",astop); + cstatus=0; + } break; case EVENT_KEY_TYPED: diff --git a/robotgo.go b/robotgo.go index 96e1e44..0b0bade 100644 --- a/robotgo.go +++ b/robotgo.go @@ -615,6 +615,7 @@ func Convert(args ...interface{}) { } /* + ------------ --- --- ------------ ---- ---- ------------ ************ *** *** ************ ***** **** ************ ---- --- --- ---- ------ ---- ------------ @@ -623,12 +624,39 @@ func Convert(args ...interface{}) { **** ******** **** **** ****** **** ------------ ------ ------------ ---- ----- ---- ************ **** ************ **** **** **** - */ +//Map a map +type Map map[string]interface{} + //AddEvent Add Event func AddEvent(aeve string) int { - cs := C.CString(aeve) + keycode := Map{ + "f1": "59", + "f2": "60", + "f3": "61", + "f4": "62", + "f5": "63", + "f6": "64", + "f7": "65", + "f8": "66", + "f9": "67", + "f10": "68", + "f11": "69", + "f12": "70", + } + + var cs *C.char + var keve string + + if len(aeve) > 1 { + keve = keycode[aeve].(string) + cs = C.CString(keve) + } else { + cs = C.CString(aeve) + } + + // cs := C.CString(aeve) eve := C.aEvent(cs) // Println("event@@", eve) geve := int(eve)