aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cocoa_bridge.rs51
-rw-r--r--src/lib.rs2
-rw-r--r--src/parser.rs1
3 files changed, 28 insertions, 26 deletions
diff --git a/src/cocoa_bridge.rs b/src/cocoa_bridge.rs
index f2d5f45..fe65533 100644
--- a/src/cocoa_bridge.rs
+++ b/src/cocoa_bridge.rs
@@ -2,8 +2,8 @@ use std::ffi::CString;
use std::ptr;
use std::slice;
-use cocoa::base::nil;
-use cocoa::foundation::{NSArray, NSAutoreleasePool, NSDictionary};
+// use cocoa::base::nil;
+// use cocoa::foundation::{NSArray, NSAutoreleasePool, NSDictionary};
use libc::{c_char, size_t};
use {HeadphoneButton, MapGroup, MapKind};
@@ -12,28 +12,28 @@ use {HeadphoneButton, MapGroup, MapKind};
struct renameMeMapGroup {
}
-pub extern "C" fn parse_mappings() {
- let sample_maps = "map <up> k
-map <down> j";
-
- let map_group = MapGroup::parse(sample_maps).unwrap();
-
- unsafe {
- let _pool = NSAutoreleasePool::new(nil);
-
- let maps = NSDictionary::init(nil).autorelease();
- let modes = NSDictionary::init(nil).autorelease();
-
- for (trigger, action) in map_group.maps {
- // let t = NSArray::arrayWithObjects(nil, &trigger).autorelease();
-
- // maps.
- }
-
- for (trigger, modes) in map_group.modes {
- }
- }
-}
+// pub extern "C" fn parse_mappings() {
+// let sample_maps = "map <up> k
+// map <down> j";
+//
+// let map_group = MapGroup::parse(sample_maps).unwrap();
+//
+// unsafe {
+// let _pool = NSAutoreleasePool::new(nil);
+//
+// let maps = NSDictionary::init(nil).autorelease();
+// let modes = NSDictionary::init(nil).autorelease();
+//
+// for (trigger, action) in map_group.maps {
+// // let t = NSArray::arrayWithObjects(nil, &trigger).autorelease();
+//
+// // maps.
+// }
+//
+// for (trigger, modes) in map_group.modes {
+// }
+// }
+// }
// Different method:
// Call Rust function with trigger
@@ -97,7 +97,8 @@ pub extern "C" fn run_key_action(
trigger: &[HeadphoneButton]
) -> Option<KeyActionResult> {
let sample_maps = "map <up> k
-map <down> j";
+map <down> j
+map <play><down> works!";
// Figure out how to persist this without re-parsing
let map_group = MapGroup::parse(sample_maps).unwrap();
diff --git a/src/lib.rs b/src/lib.rs
index cf7dd1e..3124178 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,4 +1,4 @@
-extern crate cocoa;
+// extern crate cocoa;
#[macro_use]
extern crate combine;
diff --git a/src/parser.rs b/src/parser.rs
index c6c8cce..1d9aa56 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -23,6 +23,7 @@ pub enum HeadphoneButton {
type Trigger = Vec<HeadphoneButton>;
type Action = String;
+#[repr(C)]
#[derive(Debug, PartialEq)]
pub enum MapKind {
Map,