keystate: Use keycode
This commit is contained in:
@ -15,5 +15,8 @@ void squeek_key_add_symbol(struct squeek_key* key,
|
||||
const char *tooltip);
|
||||
uint32_t squeek_key_is_pressed(struct squeek_key *key);
|
||||
void squeek_key_set_pressed(struct squeek_key *key, uint32_t pressed);
|
||||
uint32_t squeek_key_get_keycode(struct squeek_key *key);
|
||||
void squeek_key_set_keycode(struct squeek_key *key, uint32_t keycode);
|
||||
|
||||
struct squeek_symbol *squeek_key_get_symbol(struct squeek_key* key, uint32_t level);
|
||||
#endif
|
||||
|
||||
@ -41,7 +41,7 @@ pub mod c {
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C"
|
||||
fn squeek_key_is_pressed(key: *const KeyState) -> u32{
|
||||
fn squeek_key_is_pressed(key: *const KeyState) -> u32 {
|
||||
let key = unsafe { &*key };
|
||||
return key.pressed as u32;
|
||||
}
|
||||
@ -53,6 +53,20 @@ pub mod c {
|
||||
key.pressed = pressed != 0;
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C"
|
||||
fn squeek_key_get_keycode(key: *const KeyState) -> u32 {
|
||||
let key = unsafe { &*key };
|
||||
return key.keycode as u32;
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub extern "C"
|
||||
fn squeek_key_set_keycode(key: *mut KeyState, code: u32) {
|
||||
let key = unsafe { &mut *key };
|
||||
key.keycode = code;
|
||||
}
|
||||
|
||||
// TODO: this will receive data from the filesystem,
|
||||
// so it should handle garbled strings in the future
|
||||
#[no_mangle]
|
||||
|
||||
Reference in New Issue
Block a user