root/include/keyboard.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 #ifndef KEYBOARD_H
   2 #define KEYBOARD_H
   3 
   4 // CHDK Keyboard / Button interface
   5 
   6 // Note: used in modules and platform independent code. 
   7 // Do not add platform dependent stuff in here (#ifdef/#endif compile options or camera dependent values)
   8 
   9 #define KEY_UP              1
  10 #define KEY_DOWN            2
  11 #define KEY_LEFT            3
  12 #define KEY_RIGHT           4
  13 #define KEY_SET             5
  14 #define KEY_SHOOT_HALF      6
  15 #define KEY_SHOOT_FULL      7   // includes KEY_SHOOT_HALF press/release. See also KEY_SHOOT_FULL_ONLY.
  16 #define KEY_ZOOM_IN         8
  17 #define KEY_ZOOM_OUT        9
  18 #define KEY_MENU            10
  19 #define KEY_DISPLAY         11
  20 #define KEY_PRINT           12  //S-series: Shortcut
  21 #define KEY_ERASE           13  //S-series: Func
  22 #define KEY_ISO             14  //S-series
  23 #define KEY_FLASH           15  //S-series
  24 #define KEY_MF              16  //S-series
  25 #define KEY_MACRO           17  //S-series
  26 #define KEY_VIDEO           18  //S-series
  27 #define KEY_TIMER           19  //S-series
  28 #define KEY_EXPO_CORR       20  //G-series
  29 #define KEY_MICROPHONE      21
  30 #define KEY_FACE            22  //SX100IS
  31 #define KEY_DUMMY           23  //dummy key for pressing to disable energy saving in alt mode
  32 
  33 // SX30
  34 #define KEY_ZOOM_IN1        24  // SX30 has three zoom speeds each way
  35 #define KEY_ZOOM_IN2        25
  36 #define KEY_ZOOM_IN3        26
  37 #define KEY_ZOOM_OUT1       27
  38 #define KEY_ZOOM_OUT2       28
  39 #define KEY_ZOOM_OUT3       29
  40 #define KEY_ZOOM_ASSIST     30  // SX30 new button
  41 
  42 // G12
  43 #define KEY_AE_LOCK                 31  // G12 AE/FE Lock button
  44 #define KEY_METERING        32  // G12 metering mode button
  45 
  46 //SX220 
  47 #define KEY_PLAYBACK        33 
  48 #define KEY_LEFT_SOFT       34  // jogdial keys have two steps 
  49 #define KEY_RIGHT_SOFT      35 
  50 #define KEY_UP_SOFT         36 
  51 #define KEY_DOWN_SOFT       37  
  52 
  53 #define KEY_SHOOT_FULL_ONLY 38  // As KEY_SHOOT_FULL but press/release KEY_SHOOT_HALF is not included
  54 
  55 #define KEY_POWER           39
  56 
  57 //A810/A1300/A2300/A2400/A4000
  58 #define KEY_HELP            40
  59 
  60 //D10/A490/A495
  61 #define KEY_MODE            41
  62 
  63 //S90/S95/S100/S110
  64 #define KEY_RING_FUNC       42
  65 
  66 // dedicated wifi connect button (G7x)
  67 #define KEY_WIFI            43
  68 
  69 //SX530 - Framing Assist Lock feature to help reduce camera shake on the telephoto end.
  70 #define KEY_FRAMING_ASSIST  44
  71 
  72 //SX520 - drive mode button
  73 #define KEY_DRIVE_MODE      45
  74 
  75 //SX400/SX410 - Switching from the AUTO mode to another mode and vice versa.
  76 #define KEY_AUTO            46
  77 
  78 #define JOGDIAL_LEFT        100
  79 #define JOGDIAL_RIGHT       101
  80 #define FRONTDIAL_LEFT      102
  81 #define FRONTDIAL_RIGHT     103
  82 
  83 /******************************************************************/
  84 
  85 extern void kbd_key_press(long key);
  86 extern void kbd_key_release(long key);
  87 extern void kbd_key_release_all();
  88 extern long kbd_is_key_pressed(long key);
  89 extern long kbd_is_key_clicked(long key);
  90 extern long kbd_get_pressed_key();
  91 extern long kbd_get_clicked_key();
  92 extern long kbd_get_autoclicked_key();
  93 extern long kbd_use_zoom_as_mf();
  94 extern void kbd_set_extra_button(short);
  95 extern long get_jogdial_direction(void);
  96 
  97 extern void JogDial_CW(void);
  98 extern void JogDial_CCW(void);
  99 
 100 extern void enter_alt();
 101 extern void exit_alt();
 102 
 103 /******************************************************************/
 104 
 105 #endif

/* [<][>][^][v][top][bottom][index][help] */