LiVES  3.2.0
keyboard.h
Go to the documentation of this file.
1 // keyboard.h
2 // LiVES
3 // (c) G. Finch 2004 - 2016 <salsaman+lives@gmail.com>
4 // see file ../COPYING for licensing details
5 
6 #define LIVES_XEVENT_TYPE_KEYPRESS 2
7 #define LIVES_XEVENT_TYPE_KEYRELEASE 3
8 
9 // repeating keys
10 uint16_t cached_key;
11 uint16_t cached_mod;
12 
13 // these keys should be cached on a key down and sent every time until a key up
14 #define key_left 100
15 #define key_left2 113
16 #define key_right 102
17 #define key_right2 114
18 #define key_up 98
19 #define key_up2 111
20 #define key_down 104
21 #define key_down2 116
22 
23 boolean key_press_or_release(LiVESWidget *, LiVESXEventKey *, livespointer);
24 
25 boolean ext_triggers_poll(livespointer);
26 
27 /* #if defined HAVE_X11 */
28 /* LiVESFilterReturn filter_func(LiVESXXEvent *xevent, LiVESXEvent *event, livespointer data); ///< unused ? */
29 /* #endif */
30 
31 void handle_cached_keys(void);
32 
33 boolean pl_key_function(boolean down, uint16_t unicode, uint16_t keymod);
34 
36 
37 boolean faster_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
38 
39 boolean slower_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
40 
41 boolean more_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
42 
43 boolean less_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
44 
45 boolean skip_back_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
46 
47 boolean skip_forward_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
48 
49 boolean stop_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
50 
51 boolean rec_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
52 
53 boolean loop_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
54 
55 boolean loop_cont_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
56 
57 boolean ping_pong_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
58 
59 boolean dblsize_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
60 
61 boolean showfct_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
62 
63 boolean showsubs_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
64 
65 boolean fullscreen_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
66 
67 boolean sepwin_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
68 
69 boolean fade_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
70 
71 boolean volup_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
72 boolean voldown_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data);
73 
74 #define EXT_TRIGGER_INTERVAL 4 // polling time for osc / midi / joystick etc. (milliseconds)
75 
76 #define KEY_RPT_INTERVAL 40 // repeat rate for cached keys (ctrl-left, ctrl-right, ctrl-up, ctrl-down) (milliseconds)
77 
79 /* can be over-ridden in prefs */
80 #define DEF_MIDI_CHECK_RATE 1000
81 
83 #define DEF_MIDI_RPT 1000
less_callback
boolean less_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:368
faster_callback
boolean faster_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:377
fade_callback
boolean fade_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:467
loop_callback
boolean loop_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:488
stop_callback
boolean stop_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:432
voldown_callback
boolean voldown_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:423
more_callback
boolean more_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:387
sepwin_callback
boolean sepwin_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:446
ext_triggers_poll
boolean ext_triggers_poll(livespointer)
poll for external playback start
Definition: keyboard.c:67
handle_cached_keys
void handle_cached_keys(void)
smooth the key repeat for scratching
Definition: keyboard.c:141
showfct_callback
boolean showfct_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:474
cached_mod
uint16_t cached_mod
Definition: keyboard.h:11
showsubs_callback
boolean showsubs_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:481
key_press_or_release
boolean key_press_or_release(LiVESWidget *, LiVESXEventKey *, livespointer)
wrapper for pl_key_function
Definition: keyboard.c:134
fullscreen_callback
boolean fullscreen_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:439
cached_key
uint16_t cached_key
Definition: keyboard.h:10
rec_callback
boolean rec_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:502
ping_pong_callback
boolean ping_pong_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:460
volup_callback
boolean volup_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:414
pl_key_function
boolean pl_key_function(boolean down, uint16_t unicode, uint16_t keymod)
all funky stuff with keys
Definition: keyboard.c:151
dblsize_callback
boolean dblsize_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:495
skip_back_callback
boolean skip_back_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:396
skip_forward_callback
boolean skip_forward_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:405
slower_callback
boolean slower_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:358
loop_cont_callback
boolean loop_cont_callback(LiVESAccelGroup *, LiVESWidgetObject *, uint32_t, LiVESXModifierType, livespointer user_data)
Definition: keyboard.c:453