class library for a TS Keyboard, then press enter and the values are stored and the keypad disappears.
Fork of F7_TSKeypad_MultiKey by
F7_TSKeyboard.cpp@1:a236c0568cdf, 2017-06-20 (annotated)
- Committer:
- Armand
- Date:
- Tue Jun 20 11:58:10 2017 +0000
- Revision:
- 1:a236c0568cdf
- Child:
- 2:c5532af8da08
F7_TSKeyboard
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Armand | 1:a236c0568cdf | 1 | #include "F7_TSKeyboard.h" |
Armand | 1:a236c0568cdf | 2 | #include "mbed.h" |
Armand | 1:a236c0568cdf | 3 | |
Armand | 1:a236c0568cdf | 4 | F7_TSKeyboard::F7_TSKeyboard() |
Armand | 1:a236c0568cdf | 5 | { |
Armand | 1:a236c0568cdf | 6 | btnsize = 35; |
Armand | 1:a236c0568cdf | 7 | state = 0; |
Armand | 1:a236c0568cdf | 8 | key = 0; |
Armand | 1:a236c0568cdf | 9 | Caps = 0; |
Armand | 1:a236c0568cdf | 10 | Func = 0; |
Armand | 1:a236c0568cdf | 11 | |
Armand | 1:a236c0568cdf | 12 | status = ts.Init(lcd.GetXSize(), lcd.GetYSize()); |
Armand | 1:a236c0568cdf | 13 | if (status != TS_OK) |
Armand | 1:a236c0568cdf | 14 | { |
Armand | 1:a236c0568cdf | 15 | lcd.Clear(LCD_COLOR_RED); |
Armand | 1:a236c0568cdf | 16 | lcd.SetBackColor(LCD_COLOR_RED); |
Armand | 1:a236c0568cdf | 17 | lcd.SetTextColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 18 | lcd.DisplayStringAt(0, LINE(5), (uint8_t *)"TOUCHSCREEN INIT FAIL", CENTER_MODE); |
Armand | 1:a236c0568cdf | 19 | while(1); |
Armand | 1:a236c0568cdf | 20 | } |
Armand | 1:a236c0568cdf | 21 | else |
Armand | 1:a236c0568cdf | 22 | { |
Armand | 1:a236c0568cdf | 23 | OK = 1; |
Armand | 1:a236c0568cdf | 24 | |
Armand | 1:a236c0568cdf | 25 | } |
Armand | 1:a236c0568cdf | 26 | |
Armand | 1:a236c0568cdf | 27 | ticker.attach(callback(this, &F7_TSKeyboard::Detect_isr),0.01); |
Armand | 1:a236c0568cdf | 28 | } |
Armand | 1:a236c0568cdf | 29 | |
Armand | 1:a236c0568cdf | 30 | void F7_TSKeyboard::Detect_isr() |
Armand | 1:a236c0568cdf | 31 | { |
Armand | 1:a236c0568cdf | 32 | if(OK) |
Armand | 1:a236c0568cdf | 33 | { |
Armand | 1:a236c0568cdf | 34 | ts.GetState(&TS_State); |
Armand | 1:a236c0568cdf | 35 | |
Armand | 1:a236c0568cdf | 36 | if (TS_State.touchDetected) |
Armand | 1:a236c0568cdf | 37 | { |
Armand | 1:a236c0568cdf | 38 | |
Armand | 1:a236c0568cdf | 39 | ///////////////////////check correct touch////////////////////////////////////////////////////////////// |
Armand | 1:a236c0568cdf | 40 | if(TS_State.touchX[0]>= keypadstartX[0][0] && TS_State.touchX[0]<= keypadendX[0][0] && TS_State.touchY[0]>= keypadstartY[0][0] && TS_State.touchY[0]<= keypadendY[0][0] && keypad == 1) |
Armand | 1:a236c0568cdf | 41 | { |
Armand | 1:a236c0568cdf | 42 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 43 | button = 1; |
Armand | 1:a236c0568cdf | 44 | if(button == key) |
Armand | 1:a236c0568cdf | 45 | { |
Armand | 1:a236c0568cdf | 46 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 47 | lcd.FillRect(keypadstartX[0][0], keypadstartY[0][0], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 48 | } |
Armand | 1:a236c0568cdf | 49 | |
Armand | 1:a236c0568cdf | 50 | } |
Armand | 1:a236c0568cdf | 51 | else if(TS_State.touchX[0]>= keypadstartX[0][1] && TS_State.touchX[0]<= keypadendX[0][1] && TS_State.touchY[0]>= keypadstartY[0][1] && TS_State.touchY[0]<= keypadendY[0][1] && keypad == 1) |
Armand | 1:a236c0568cdf | 52 | { |
Armand | 1:a236c0568cdf | 53 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 54 | button = 2; |
Armand | 1:a236c0568cdf | 55 | if(button == key) |
Armand | 1:a236c0568cdf | 56 | { |
Armand | 1:a236c0568cdf | 57 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 58 | lcd.FillRect(keypadstartX[0][1], keypadstartY[0][1], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 59 | } |
Armand | 1:a236c0568cdf | 60 | } |
Armand | 1:a236c0568cdf | 61 | else if(TS_State.touchX[0]>= keypadstartX[0][2] && TS_State.touchX[0]<= keypadendX[0][2] && TS_State.touchY[0]>= keypadstartY[0][2] && TS_State.touchY[0]<= keypadendY[0][2] && keypad == 1) |
Armand | 1:a236c0568cdf | 62 | { |
Armand | 1:a236c0568cdf | 63 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 64 | button = 3; |
Armand | 1:a236c0568cdf | 65 | if(button == key) |
Armand | 1:a236c0568cdf | 66 | { |
Armand | 1:a236c0568cdf | 67 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 68 | lcd.FillRect(keypadstartX[0][2], keypadstartY[0][2], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 69 | } |
Armand | 1:a236c0568cdf | 70 | } |
Armand | 1:a236c0568cdf | 71 | else if(TS_State.touchX[0]>= keypadstartX[0][3] && TS_State.touchX[0]<= keypadendX[0][3] && TS_State.touchY[0]>= keypadstartY[0][3] && TS_State.touchY[0]<= keypadendY[0][3] && keypad == 1) |
Armand | 1:a236c0568cdf | 72 | { |
Armand | 1:a236c0568cdf | 73 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 74 | button = 4; |
Armand | 1:a236c0568cdf | 75 | if(button == key) |
Armand | 1:a236c0568cdf | 76 | { |
Armand | 1:a236c0568cdf | 77 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 78 | lcd.FillRect(keypadstartX[0][3], keypadstartY[0][3], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 79 | } |
Armand | 1:a236c0568cdf | 80 | } |
Armand | 1:a236c0568cdf | 81 | else if(TS_State.touchX[0]>= keypadstartX[0][4] && TS_State.touchX[0]<= keypadendX[0][4] && TS_State.touchY[0]>= keypadstartY[0][4] && TS_State.touchY[0]<= keypadendY[0][4] && keypad == 1) |
Armand | 1:a236c0568cdf | 82 | { |
Armand | 1:a236c0568cdf | 83 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 84 | button = 5; |
Armand | 1:a236c0568cdf | 85 | if(button == key) |
Armand | 1:a236c0568cdf | 86 | { |
Armand | 1:a236c0568cdf | 87 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 88 | lcd.FillRect(keypadstartX[0][4], keypadstartY[0][4], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 89 | } |
Armand | 1:a236c0568cdf | 90 | } |
Armand | 1:a236c0568cdf | 91 | else if(TS_State.touchX[0]>= keypadstartX[0][5] && TS_State.touchX[0]<= keypadendX[0][5] && TS_State.touchY[0]>= keypadstartY[0][5] && TS_State.touchY[0]<= keypadendY[0][5] && keypad == 1) |
Armand | 1:a236c0568cdf | 92 | { |
Armand | 1:a236c0568cdf | 93 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 94 | button = 6; |
Armand | 1:a236c0568cdf | 95 | if(button == key) |
Armand | 1:a236c0568cdf | 96 | { |
Armand | 1:a236c0568cdf | 97 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 98 | lcd.FillRect(keypadstartX[0][5], keypadstartY[0][5], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 99 | } |
Armand | 1:a236c0568cdf | 100 | } |
Armand | 1:a236c0568cdf | 101 | else if(TS_State.touchX[0]>= keypadstartX[0][6] && TS_State.touchX[0]<= keypadendX[0][6] && TS_State.touchY[0]>= keypadstartY[0][6] && TS_State.touchY[0]<= keypadendY[0][6] && keypad == 1) |
Armand | 1:a236c0568cdf | 102 | { |
Armand | 1:a236c0568cdf | 103 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 104 | button = 7; |
Armand | 1:a236c0568cdf | 105 | if(button == key) |
Armand | 1:a236c0568cdf | 106 | { |
Armand | 1:a236c0568cdf | 107 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 108 | lcd.FillRect(keypadstartX[0][6], keypadstartY[0][6], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 109 | } |
Armand | 1:a236c0568cdf | 110 | } |
Armand | 1:a236c0568cdf | 111 | else if(TS_State.touchX[0]>= keypadstartX[0][7] && TS_State.touchX[0]<= keypadendX[0][7] && TS_State.touchY[0]>= keypadstartY[0][7] && TS_State.touchY[0]<= keypadendY[0][7] && keypad == 1) |
Armand | 1:a236c0568cdf | 112 | { |
Armand | 1:a236c0568cdf | 113 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 114 | button = 8; |
Armand | 1:a236c0568cdf | 115 | if(button == key) |
Armand | 1:a236c0568cdf | 116 | { |
Armand | 1:a236c0568cdf | 117 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 118 | lcd.FillRect(keypadstartX[0][7], keypadstartY[0][7], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 119 | } |
Armand | 1:a236c0568cdf | 120 | } |
Armand | 1:a236c0568cdf | 121 | else if(TS_State.touchX[0]>= keypadstartX[0][8] && TS_State.touchX[0]<= keypadendX[0][8] && TS_State.touchY[0]>= keypadstartY[0][8] && TS_State.touchY[0]<= keypadendY[0][8] && keypad == 1) |
Armand | 1:a236c0568cdf | 122 | { |
Armand | 1:a236c0568cdf | 123 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 124 | button = 9; |
Armand | 1:a236c0568cdf | 125 | if(button == key) |
Armand | 1:a236c0568cdf | 126 | { |
Armand | 1:a236c0568cdf | 127 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 128 | lcd.FillRect(keypadstartX[0][8], keypadstartY[0][8], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 129 | } |
Armand | 1:a236c0568cdf | 130 | } |
Armand | 1:a236c0568cdf | 131 | else if(TS_State.touchX[0]>= keypadstartX[0][9] && TS_State.touchX[0]<= keypadendX[0][9] && TS_State.touchY[0]>= keypadstartY[0][9] && TS_State.touchY[0]<= keypadendY[0][9] && keypad == 1) |
Armand | 1:a236c0568cdf | 132 | { |
Armand | 1:a236c0568cdf | 133 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 134 | button = 10; |
Armand | 1:a236c0568cdf | 135 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 136 | lcd.FillRect(keypadstartX[0][9], keypadstartY[0][9], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 137 | } |
Armand | 1:a236c0568cdf | 138 | else if(TS_State.touchX[0]>= keypadstartX[1][0] && TS_State.touchX[0]<= keypadendX[1][0] && TS_State.touchY[0]>= keypadstartY[1][0] && TS_State.touchY[0]<= keypadendY[1][0] && keypad == 1) |
Armand | 1:a236c0568cdf | 139 | { |
Armand | 1:a236c0568cdf | 140 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 141 | button = 11; |
Armand | 1:a236c0568cdf | 142 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 143 | lcd.FillRect(keypadstartX[1][0], keypadstartY[1][0], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 144 | } |
Armand | 1:a236c0568cdf | 145 | else if(TS_State.touchX[0]>= keypadstartX[1][1] && TS_State.touchX[0]<= keypadendX[1][1] && TS_State.touchY[0]>= keypadstartY[1][1] && TS_State.touchY[0]<= keypadendY[1][1] && keypad == 1) |
Armand | 1:a236c0568cdf | 146 | { |
Armand | 1:a236c0568cdf | 147 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 148 | button = 12; |
Armand | 1:a236c0568cdf | 149 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 150 | lcd.FillRect(keypadstartX[1][1], keypadstartY[1][1], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 151 | } |
Armand | 1:a236c0568cdf | 152 | else if(TS_State.touchX[0]>= keypadstartX[1][2] && TS_State.touchX[0]<= keypadendX[1][2] && TS_State.touchY[0]>= keypadstartY[1][2] && TS_State.touchY[0]<= keypadendY[1][2] && keypad == 1) |
Armand | 1:a236c0568cdf | 153 | { |
Armand | 1:a236c0568cdf | 154 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 155 | button = 13; |
Armand | 1:a236c0568cdf | 156 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 157 | lcd.FillRect(keypadstartX[1][2], keypadstartY[1][2], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 158 | } |
Armand | 1:a236c0568cdf | 159 | else if(TS_State.touchX[0]>= keypadstartX[1][3] && TS_State.touchX[0]<= keypadendX[1][3] && TS_State.touchY[0]>= keypadstartY[1][3] && TS_State.touchY[0]<= keypadendY[1][3] && keypad == 1) |
Armand | 1:a236c0568cdf | 160 | { |
Armand | 1:a236c0568cdf | 161 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 162 | button = 14; |
Armand | 1:a236c0568cdf | 163 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 164 | lcd.FillRect(keypadstartX[1][3], keypadstartY[1][3], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 165 | } |
Armand | 1:a236c0568cdf | 166 | else if(TS_State.touchX[0]>= keypadstartX[1][4] && TS_State.touchX[0]<= keypadendX[1][4] && TS_State.touchY[0]>= keypadstartY[1][4] && TS_State.touchY[0]<= keypadendY[1][4] && keypad == 1) |
Armand | 1:a236c0568cdf | 167 | { |
Armand | 1:a236c0568cdf | 168 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 169 | button = 15; |
Armand | 1:a236c0568cdf | 170 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 171 | lcd.FillRect(keypadstartX[1][4], keypadstartY[1][4], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 172 | } |
Armand | 1:a236c0568cdf | 173 | else if(TS_State.touchX[0]>= keypadstartX[1][5] && TS_State.touchX[0]<= keypadendX[1][5] && TS_State.touchY[0]>= keypadstartY[1][5] && TS_State.touchY[0]<= keypadendY[1][5] && keypad == 1) |
Armand | 1:a236c0568cdf | 174 | { |
Armand | 1:a236c0568cdf | 175 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 176 | button = 16; |
Armand | 1:a236c0568cdf | 177 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 178 | lcd.FillRect(keypadstartX[1][5], keypadstartY[1][5], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 179 | } |
Armand | 1:a236c0568cdf | 180 | else if(TS_State.touchX[0]>= keypadstartX[1][6] && TS_State.touchX[0]<= keypadendX[1][6] && TS_State.touchY[0]>= keypadstartY[1][6] && TS_State.touchY[0]<= keypadendY[1][6] && keypad == 1) |
Armand | 1:a236c0568cdf | 181 | { |
Armand | 1:a236c0568cdf | 182 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 183 | button = 17; |
Armand | 1:a236c0568cdf | 184 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 185 | lcd.FillRect(keypadstartX[1][6], keypadstartY[1][6], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 186 | } |
Armand | 1:a236c0568cdf | 187 | else if(TS_State.touchX[0]>= keypadstartX[1][7] && TS_State.touchX[0]<= keypadendX[1][7] && TS_State.touchY[0]>= keypadstartY[1][7] && TS_State.touchY[0]<= keypadendY[1][7] && keypad == 1) |
Armand | 1:a236c0568cdf | 188 | { |
Armand | 1:a236c0568cdf | 189 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 190 | button = 18; |
Armand | 1:a236c0568cdf | 191 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 192 | lcd.FillRect(keypadstartX[1][7], keypadstartY[1][7], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 193 | } |
Armand | 1:a236c0568cdf | 194 | else if(TS_State.touchX[0]>= keypadstartX[1][8] && TS_State.touchX[0]<= keypadendX[1][8] && TS_State.touchY[0]>= keypadstartY[1][8] && TS_State.touchY[0]<= keypadendY[1][8] && keypad == 1) |
Armand | 1:a236c0568cdf | 195 | { |
Armand | 1:a236c0568cdf | 196 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 197 | button = 19; |
Armand | 1:a236c0568cdf | 198 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 199 | lcd.FillRect(keypadstartX[1][8], keypadstartY[1][8], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 200 | } |
Armand | 1:a236c0568cdf | 201 | else if(TS_State.touchX[0]>= keypadstartX[1][9] && TS_State.touchX[0]<= keypadendX[1][9] && TS_State.touchY[0]>= keypadstartY[1][9] && TS_State.touchY[0]<= keypadendY[1][9] && keypad == 1) |
Armand | 1:a236c0568cdf | 202 | { |
Armand | 1:a236c0568cdf | 203 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 204 | button = 20; |
Armand | 1:a236c0568cdf | 205 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 206 | lcd.FillRect(keypadstartX[1][9], keypadstartY[1][9], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 207 | } |
Armand | 1:a236c0568cdf | 208 | else if(TS_State.touchX[0]>= keypadstartX[2][0] && TS_State.touchX[0]<= keypadendX[2][0] && TS_State.touchY[0]>= keypadstartY[2][0] && TS_State.touchY[0]<= keypadendY[2][0] && keypad == 1) |
Armand | 1:a236c0568cdf | 209 | { |
Armand | 1:a236c0568cdf | 210 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 211 | button = 21; |
Armand | 1:a236c0568cdf | 212 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 213 | lcd.FillRect(keypadstartX[2][0], keypadstartY[2][0], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 214 | } |
Armand | 1:a236c0568cdf | 215 | else if(TS_State.touchX[0]>= keypadstartX[2][1] && TS_State.touchX[0]<= keypadendX[2][1] && TS_State.touchY[0]>= keypadstartY[2][1] && TS_State.touchY[0]<= keypadendY[2][1] && keypad == 1) |
Armand | 1:a236c0568cdf | 216 | { |
Armand | 1:a236c0568cdf | 217 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 218 | button = 22; |
Armand | 1:a236c0568cdf | 219 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 220 | lcd.FillRect(keypadstartX[2][1], keypadstartY[2][1], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 221 | } |
Armand | 1:a236c0568cdf | 222 | else if(TS_State.touchX[0]>= keypadstartX[2][2] && TS_State.touchX[0]<= keypadendX[2][2] && TS_State.touchY[0]>= keypadstartY[2][2] && TS_State.touchY[0]<= keypadendY[2][2] && keypad == 1) |
Armand | 1:a236c0568cdf | 223 | { |
Armand | 1:a236c0568cdf | 224 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 225 | button = 23; |
Armand | 1:a236c0568cdf | 226 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 227 | lcd.FillRect(keypadstartX[2][2], keypadstartY[2][2], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 228 | } |
Armand | 1:a236c0568cdf | 229 | else if(TS_State.touchX[0]>= keypadstartX[2][3] && TS_State.touchX[0]<= keypadendX[2][3] && TS_State.touchY[0]>= keypadstartY[2][3] && TS_State.touchY[0]<= keypadendY[2][3] && keypad == 1) |
Armand | 1:a236c0568cdf | 230 | { |
Armand | 1:a236c0568cdf | 231 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 232 | button = 24; |
Armand | 1:a236c0568cdf | 233 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 234 | lcd.FillRect(keypadstartX[2][3], keypadstartY[2][3], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 235 | } |
Armand | 1:a236c0568cdf | 236 | else if(TS_State.touchX[0]>= keypadstartX[2][4] && TS_State.touchX[0]<= keypadendX[2][4] && TS_State.touchY[0]>= keypadstartY[2][4] && TS_State.touchY[0]<= keypadendY[2][4] && keypad == 1) |
Armand | 1:a236c0568cdf | 237 | { |
Armand | 1:a236c0568cdf | 238 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 239 | button = 25; |
Armand | 1:a236c0568cdf | 240 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 241 | lcd.FillRect(keypadstartX[2][4], keypadstartY[2][4], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 242 | } |
Armand | 1:a236c0568cdf | 243 | else if(TS_State.touchX[0]>= keypadstartX[2][5] && TS_State.touchX[0]<= keypadendX[2][5] && TS_State.touchY[0]>= keypadstartY[2][5] && TS_State.touchY[0]<= keypadendY[2][5] && keypad == 1) |
Armand | 1:a236c0568cdf | 244 | { |
Armand | 1:a236c0568cdf | 245 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 246 | button = 26; |
Armand | 1:a236c0568cdf | 247 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 248 | lcd.FillRect(keypadstartX[2][5], keypadstartY[2][5], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 249 | } |
Armand | 1:a236c0568cdf | 250 | else if(TS_State.touchX[0]>= keypadstartX[2][6] && TS_State.touchX[0]<= keypadendX[2][6] && TS_State.touchY[0]>= keypadstartY[2][6] && TS_State.touchY[0]<= keypadendY[2][6] && keypad == 1) |
Armand | 1:a236c0568cdf | 251 | { |
Armand | 1:a236c0568cdf | 252 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 253 | button = 27; |
Armand | 1:a236c0568cdf | 254 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 255 | lcd.FillRect(keypadstartX[2][6], keypadstartY[2][6], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 256 | } |
Armand | 1:a236c0568cdf | 257 | else if(TS_State.touchX[0]>= keypadstartX[2][7] && TS_State.touchX[0]<= keypadendX[2][7] && TS_State.touchY[0]>= keypadstartY[2][7] && TS_State.touchY[0]<= keypadendY[2][7] && keypad == 1) |
Armand | 1:a236c0568cdf | 258 | { |
Armand | 1:a236c0568cdf | 259 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 260 | button = 28; |
Armand | 1:a236c0568cdf | 261 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 262 | lcd.FillRect(keypadstartX[2][7], keypadstartY[2][7], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 263 | } |
Armand | 1:a236c0568cdf | 264 | else if(TS_State.touchX[0]>= keypadstartX[2][8] && TS_State.touchX[0]<= keypadendX[2][8] && TS_State.touchY[0]>= keypadstartY[2][8] && TS_State.touchY[0]<= keypadendY[2][8] && keypad == 1) |
Armand | 1:a236c0568cdf | 265 | { |
Armand | 1:a236c0568cdf | 266 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 267 | button = 29; |
Armand | 1:a236c0568cdf | 268 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 269 | lcd.FillRect(keypadstartX[2][8], keypadstartY[2][8], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 270 | } |
Armand | 1:a236c0568cdf | 271 | else if(TS_State.touchX[0]>= keypadstartX[2][9] && TS_State.touchX[0]<= keypadendX[2][9] && TS_State.touchY[0]>= keypadstartY[2][9] && TS_State.touchY[0]<= keypadendY[2][9] && keypad == 1) |
Armand | 1:a236c0568cdf | 272 | { |
Armand | 1:a236c0568cdf | 273 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 274 | button = 30; |
Armand | 1:a236c0568cdf | 275 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 276 | lcd.FillRect(keypadstartX[2][9], keypadstartY[2][9], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 277 | } |
Armand | 1:a236c0568cdf | 278 | else if(TS_State.touchX[0]>= keypadstartX[3][0] && TS_State.touchX[0]<= keypadendX[3][0] && TS_State.touchY[0]>= keypadstartY[3][0] && TS_State.touchY[0]<= keypadendY[3][0] && keypad == 1) |
Armand | 1:a236c0568cdf | 279 | { |
Armand | 1:a236c0568cdf | 280 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 281 | button = 31; |
Armand | 1:a236c0568cdf | 282 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 283 | lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 284 | } |
Armand | 1:a236c0568cdf | 285 | else if(TS_State.touchX[0]>= keypadstartX[3][1] && TS_State.touchX[0]<= keypadendX[3][1] && TS_State.touchY[0]>= keypadstartY[3][1] && TS_State.touchY[0]<= keypadendY[3][1] && keypad == 1) |
Armand | 1:a236c0568cdf | 286 | { |
Armand | 1:a236c0568cdf | 287 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 288 | button = 32; |
Armand | 1:a236c0568cdf | 289 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 290 | lcd.FillRect(keypadstartX[3][1], keypadstartY[3][1], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 291 | } |
Armand | 1:a236c0568cdf | 292 | else if(TS_State.touchX[0]>= keypadstartX[3][2] && TS_State.touchX[0]<= keypadendX[3][2] && TS_State.touchY[0]>= keypadstartY[3][2] && TS_State.touchY[0]<= keypadendY[3][2] && keypad == 1) |
Armand | 1:a236c0568cdf | 293 | { |
Armand | 1:a236c0568cdf | 294 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 295 | button = 33; |
Armand | 1:a236c0568cdf | 296 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 297 | lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 298 | } |
Armand | 1:a236c0568cdf | 299 | else if(TS_State.touchX[0]>= keypadstartX[3][3] && TS_State.touchX[0]<= keypadendX[3][3] && TS_State.touchY[0]>= keypadstartY[3][3] && TS_State.touchY[0]<= keypadendY[3][3] && keypad == 1) |
Armand | 1:a236c0568cdf | 300 | { |
Armand | 1:a236c0568cdf | 301 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 302 | button = 34; |
Armand | 1:a236c0568cdf | 303 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 304 | lcd.FillRect(keypadstartX[3][3], keypadstartY[3][3], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 305 | } |
Armand | 1:a236c0568cdf | 306 | else if(TS_State.touchX[0]>= keypadstartX[3][4] && TS_State.touchX[0]<= keypadendX[3][4] && TS_State.touchY[0]>= keypadstartY[3][4] && TS_State.touchY[0]<= keypadendY[3][4] && keypad == 1) |
Armand | 1:a236c0568cdf | 307 | { |
Armand | 1:a236c0568cdf | 308 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 309 | button = 35; |
Armand | 1:a236c0568cdf | 310 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 311 | lcd.FillRect(keypadstartX[3][4], keypadstartY[3][4], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 312 | } |
Armand | 1:a236c0568cdf | 313 | else if(TS_State.touchX[0]>= keypadstartX[3][5] && TS_State.touchX[0]<= keypadendX[3][5] && TS_State.touchY[0]>= keypadstartY[3][5] && TS_State.touchY[0]<= keypadendY[3][5] && keypad == 1) |
Armand | 1:a236c0568cdf | 314 | { |
Armand | 1:a236c0568cdf | 315 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 316 | button = 36; |
Armand | 1:a236c0568cdf | 317 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 318 | lcd.FillRect(keypadstartX[3][5], keypadstartY[3][5], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 319 | } |
Armand | 1:a236c0568cdf | 320 | else if(TS_State.touchX[0]>= keypadstartX[3][6] && TS_State.touchX[0]<= keypadendX[3][6] && TS_State.touchY[0]>= keypadstartY[3][6] && TS_State.touchY[0]<= keypadendY[3][6] && keypad == 1) |
Armand | 1:a236c0568cdf | 321 | { |
Armand | 1:a236c0568cdf | 322 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 323 | button = 37; |
Armand | 1:a236c0568cdf | 324 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 325 | lcd.FillRect(keypadstartX[3][6], keypadstartY[3][6], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 326 | } |
Armand | 1:a236c0568cdf | 327 | else if(TS_State.touchX[0]>= keypadstartX[3][7] && TS_State.touchX[0]<= keypadendX[3][7] && TS_State.touchY[0]>= keypadstartY[3][7] && TS_State.touchY[0]<= keypadendY[3][7] && keypad == 1) |
Armand | 1:a236c0568cdf | 328 | { |
Armand | 1:a236c0568cdf | 329 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 330 | button = 38; |
Armand | 1:a236c0568cdf | 331 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 332 | lcd.FillRect(keypadstartX[3][7], keypadstartY[3][7], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 333 | } |
Armand | 1:a236c0568cdf | 334 | else if(TS_State.touchX[0]>= keypadstartX[3][8] && TS_State.touchX[0]<= keypadendX[3][8] && TS_State.touchY[0]>= keypadstartY[3][8] && TS_State.touchY[0]<= keypadendY[3][8] && keypad == 1) |
Armand | 1:a236c0568cdf | 335 | { |
Armand | 1:a236c0568cdf | 336 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 337 | button = 39; |
Armand | 1:a236c0568cdf | 338 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 339 | lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 340 | } |
Armand | 1:a236c0568cdf | 341 | else if(TS_State.touchX[0]>= keypadstartX[3][9] && TS_State.touchX[0]<= keypadendX[3][9] && TS_State.touchY[0]>= keypadstartY[3][9] && TS_State.touchY[0]<= keypadendY[3][9] && keypad == 1) |
Armand | 1:a236c0568cdf | 342 | { |
Armand | 1:a236c0568cdf | 343 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 344 | button = 40; |
Armand | 1:a236c0568cdf | 345 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 346 | lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9], btnsize, btnsize); |
Armand | 1:a236c0568cdf | 347 | } |
Armand | 1:a236c0568cdf | 348 | else if(TS_State.touchX[0]>= keypadstartX[3][2] && TS_State.touchX[0]<= keypadendX[3][2] + 190 && TS_State.touchY[0]>= keypadstartY[3][2] + 38 && TS_State.touchY[0]<= keypadendY[3][2] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 349 | { |
Armand | 1:a236c0568cdf | 350 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 351 | button = 41; |
Armand | 1:a236c0568cdf | 352 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 353 | lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2] + 38, 225, btnsize); |
Armand | 1:a236c0568cdf | 354 | } |
Armand | 1:a236c0568cdf | 355 | else if(TS_State.touchX[0]>= keypadstartX[3][0] && TS_State.touchX[0]<= keypadendX[3][0] + 38 && TS_State.touchY[0]>= keypadstartY[3][0] + 38 && TS_State.touchY[0]<= keypadendY[3][0] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 356 | { |
Armand | 1:a236c0568cdf | 357 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 358 | button = 42; |
Armand | 1:a236c0568cdf | 359 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 360 | lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0] + 38, 73, btnsize); |
Armand | 1:a236c0568cdf | 361 | } |
Armand | 1:a236c0568cdf | 362 | else if(TS_State.touchX[0]>= keypadstartX[3][8] && TS_State.touchX[0]<= keypadendX[3][8] && TS_State.touchY[0]>= keypadstartY[3][8] + 38 && TS_State.touchY[0]<= keypadendY[3][8] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 363 | { |
Armand | 1:a236c0568cdf | 364 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 365 | button = 43; |
Armand | 1:a236c0568cdf | 366 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 367 | lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8] + 38, btnsize, btnsize); |
Armand | 1:a236c0568cdf | 368 | } |
Armand | 1:a236c0568cdf | 369 | else if(TS_State.touchX[0]>= keypadstartX[3][9] && TS_State.touchX[0]<= keypadendX[3][9] + 38 && TS_State.touchY[0]>= keypadstartY[3][9] + 38 && TS_State.touchY[0]<= keypadendY[3][9] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 370 | { |
Armand | 1:a236c0568cdf | 371 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 372 | button = 44; |
Armand | 1:a236c0568cdf | 373 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 374 | lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9] + 38, 73, btnsize); |
Armand | 1:a236c0568cdf | 375 | } |
Armand | 1:a236c0568cdf | 376 | else if(TS_State.touchX[0]>= keypadstartX[0][9] + 38 && TS_State.touchX[0]<= keypadendX[0][9] + 38 && TS_State.touchY[0]>= keypadstartY[0][9] && TS_State.touchY[0]<= keypadendY[0][9] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 377 | { |
Armand | 1:a236c0568cdf | 378 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 379 | button = 45; |
Armand | 1:a236c0568cdf | 380 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 381 | lcd.FillRect(keypadstartX[0][9] + 38, keypadstartY[0][9], btnsize, 73); |
Armand | 1:a236c0568cdf | 382 | } |
Armand | 1:a236c0568cdf | 383 | else if(TS_State.touchX[0]>= keypadstartX[2][9] + 38 && TS_State.touchX[0]<= keypadendX[2][9] + 38 && TS_State.touchY[0]>= keypadstartY[2][9] && TS_State.touchY[0]<= keypadendY[2][9] + 38 && keypad == 1) |
Armand | 1:a236c0568cdf | 384 | { |
Armand | 1:a236c0568cdf | 385 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 386 | button = 46; |
Armand | 1:a236c0568cdf | 387 | lcd.SetTextColor(LCD_COLOR_GRAY); |
Armand | 1:a236c0568cdf | 388 | lcd.FillRect(keypadstartX[2][9] + 38, keypadstartY[2][9], btnsize, 73); |
Armand | 1:a236c0568cdf | 389 | } |
Armand | 1:a236c0568cdf | 390 | else |
Armand | 1:a236c0568cdf | 391 | { |
Armand | 1:a236c0568cdf | 392 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 393 | button = 0; |
Armand | 1:a236c0568cdf | 394 | } |
Armand | 1:a236c0568cdf | 395 | ////////////////////////////////////////////////////////////////////////////////////////////////////// |
Armand | 1:a236c0568cdf | 396 | } |
Armand | 1:a236c0568cdf | 397 | } |
Armand | 1:a236c0568cdf | 398 | } |
Armand | 1:a236c0568cdf | 399 | |
Armand | 1:a236c0568cdf | 400 | void F7_TSKeyboard::getkeys(char str[]) |
Armand | 1:a236c0568cdf | 401 | { |
Armand | 1:a236c0568cdf | 402 | uint8_t text2[40]; |
Armand | 1:a236c0568cdf | 403 | |
Armand | 1:a236c0568cdf | 404 | Bckclr = lcd.GetBackColor(); |
Armand | 1:a236c0568cdf | 405 | Txtclr = lcd.GetTextColor(); |
Armand | 1:a236c0568cdf | 406 | *FontSize = *lcd.GetFont(); |
Armand | 1:a236c0568cdf | 407 | |
Armand | 1:a236c0568cdf | 408 | lcd.ClearStringLine(0); |
Armand | 1:a236c0568cdf | 409 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 410 | lcd.SetTextColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 411 | lcd.FillRect(0, 0, 480, 20); |
Armand | 1:a236c0568cdf | 412 | |
Armand | 1:a236c0568cdf | 413 | while(Enter != 1) |
Armand | 1:a236c0568cdf | 414 | { |
Armand | 1:a236c0568cdf | 415 | wait(0.0001); |
Armand | 1:a236c0568cdf | 416 | |
Armand | 1:a236c0568cdf | 417 | switch(state) |
Armand | 1:a236c0568cdf | 418 | {////////check if pressed on screen/////// |
Armand | 1:a236c0568cdf | 419 | case 0: |
Armand | 1:a236c0568cdf | 420 | { |
Armand | 1:a236c0568cdf | 421 | if(TS_State.touchDetected) |
Armand | 1:a236c0568cdf | 422 | { |
Armand | 1:a236c0568cdf | 423 | frstprsx = TS_State.touchX[0]; |
Armand | 1:a236c0568cdf | 424 | frstprsy = TS_State.touchY[0]; |
Armand | 1:a236c0568cdf | 425 | state = 10; |
Armand | 1:a236c0568cdf | 426 | } |
Armand | 1:a236c0568cdf | 427 | //////////////////////////////////////// |
Armand | 1:a236c0568cdf | 428 | }break; |
Armand | 1:a236c0568cdf | 429 | ////////check if correctly pressed////////// |
Armand | 1:a236c0568cdf | 430 | case 10: |
Armand | 1:a236c0568cdf | 431 | { |
Armand | 1:a236c0568cdf | 432 | for(b = 0; b < 10; b++) |
Armand | 1:a236c0568cdf | 433 | { |
Armand | 1:a236c0568cdf | 434 | for(a = 0; a < 4; a++) |
Armand | 1:a236c0568cdf | 435 | { |
Armand | 1:a236c0568cdf | 436 | if(frstprsx >= keypadstartX[a][b] && frstprsx <= keypadendX[a][b] && frstprsy >= keypadstartY[a][b] && frstprsy <= keypadendY[a][b] || frstprsx >= keypadstartX[3][2] && frstprsx <= keypadendX[3][2] + 190 && frstprsy >= keypadstartY[3][2] + 38 && frstprsy <= keypadendY[3][2] + 38 || frstprsx >= keypadstartX[3][0] && frstprsx <= keypadendX[3][0] + 38 && frstprsy >= keypadstartY[3][0] + 38 && frstprsy <= keypadendY[3][0] + 38 || frstprsx >= keypadstartX[3][8] && frstprsx <= keypadendX[3][8] && frstprsy >= keypadstartY[3][8] + 38 && frstprsy <= keypadendY[3][8] + 38 || frstprsx >= keypadstartX[3][9] && frstprsx <= keypadendX[3][9] + 38 && frstprsy >= keypadstartY[3][9] + 38 && frstprsy <= keypadendY[3][9] + 38 || frstprsx >= keypadstartX[0][9] + 38 && frstprsx <= keypadendX[0][9] + 38 && frstprsy >= keypadstartY[0][9] && frstprsy <= keypadendY[0][9] + 38 || frstprsx >= keypadstartX[2][9] + 38 && frstprsx <= keypadendX[2][9] + 38 && frstprsy >= keypadstartY[2][9] && frstprsy <= keypadendY[2][9] + 38) |
Armand | 1:a236c0568cdf | 437 | { |
Armand | 1:a236c0568cdf | 438 | state = 15; |
Armand | 1:a236c0568cdf | 439 | correcttouch = 1; |
Armand | 1:a236c0568cdf | 440 | key = button; |
Armand | 1:a236c0568cdf | 441 | a = 9; |
Armand | 1:a236c0568cdf | 442 | b = 9; |
Armand | 1:a236c0568cdf | 443 | } |
Armand | 1:a236c0568cdf | 444 | else |
Armand | 1:a236c0568cdf | 445 | { |
Armand | 1:a236c0568cdf | 446 | state = 30; |
Armand | 1:a236c0568cdf | 447 | } |
Armand | 1:a236c0568cdf | 448 | } |
Armand | 1:a236c0568cdf | 449 | } |
Armand | 1:a236c0568cdf | 450 | |
Armand | 1:a236c0568cdf | 451 | }break; |
Armand | 1:a236c0568cdf | 452 | case 15: |
Armand | 1:a236c0568cdf | 453 | { |
Armand | 1:a236c0568cdf | 454 | if(button == key && button != 0) |
Armand | 1:a236c0568cdf | 455 | { |
Armand | 1:a236c0568cdf | 456 | if(TS_State.touchDetected == 0) |
Armand | 1:a236c0568cdf | 457 | { |
Armand | 1:a236c0568cdf | 458 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 459 | state = 20; |
Armand | 1:a236c0568cdf | 460 | } |
Armand | 1:a236c0568cdf | 461 | } |
Armand | 1:a236c0568cdf | 462 | else if(button != key || button == 0) |
Armand | 1:a236c0568cdf | 463 | { |
Armand | 1:a236c0568cdf | 464 | state = 30; |
Armand | 1:a236c0568cdf | 465 | } |
Armand | 1:a236c0568cdf | 466 | |
Armand | 1:a236c0568cdf | 467 | }break; |
Armand | 1:a236c0568cdf | 468 | ////////////button functions////////// |
Armand | 1:a236c0568cdf | 469 | case 20: |
Armand | 1:a236c0568cdf | 470 | { ////////button 1///////////// |
Armand | 1:a236c0568cdf | 471 | if(button == 1) |
Armand | 1:a236c0568cdf | 472 | { |
Armand | 1:a236c0568cdf | 473 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 474 | { |
Armand | 1:a236c0568cdf | 475 | keypressed = '@'; |
Armand | 1:a236c0568cdf | 476 | } |
Armand | 1:a236c0568cdf | 477 | else |
Armand | 1:a236c0568cdf | 478 | { |
Armand | 1:a236c0568cdf | 479 | keypressed = '1'; |
Armand | 1:a236c0568cdf | 480 | } |
Armand | 1:a236c0568cdf | 481 | a = 0; |
Armand | 1:a236c0568cdf | 482 | b = 0; |
Armand | 1:a236c0568cdf | 483 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 484 | state = 0; |
Armand | 1:a236c0568cdf | 485 | } |
Armand | 1:a236c0568cdf | 486 | else if(button == 2) |
Armand | 1:a236c0568cdf | 487 | { |
Armand | 1:a236c0568cdf | 488 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 489 | { |
Armand | 1:a236c0568cdf | 490 | keypressed = '#'; |
Armand | 1:a236c0568cdf | 491 | } |
Armand | 1:a236c0568cdf | 492 | else |
Armand | 1:a236c0568cdf | 493 | { |
Armand | 1:a236c0568cdf | 494 | keypressed = '2'; |
Armand | 1:a236c0568cdf | 495 | } |
Armand | 1:a236c0568cdf | 496 | a = 0; |
Armand | 1:a236c0568cdf | 497 | b = 0; |
Armand | 1:a236c0568cdf | 498 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 499 | state = 0; |
Armand | 1:a236c0568cdf | 500 | } |
Armand | 1:a236c0568cdf | 501 | else if(button == 3) |
Armand | 1:a236c0568cdf | 502 | { |
Armand | 1:a236c0568cdf | 503 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 504 | { |
Armand | 1:a236c0568cdf | 505 | keypressed = '$'; |
Armand | 1:a236c0568cdf | 506 | } |
Armand | 1:a236c0568cdf | 507 | else |
Armand | 1:a236c0568cdf | 508 | { |
Armand | 1:a236c0568cdf | 509 | keypressed = '3'; |
Armand | 1:a236c0568cdf | 510 | } |
Armand | 1:a236c0568cdf | 511 | a = 0; |
Armand | 1:a236c0568cdf | 512 | b = 0; |
Armand | 1:a236c0568cdf | 513 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 514 | state = 0; |
Armand | 1:a236c0568cdf | 515 | } |
Armand | 1:a236c0568cdf | 516 | else if(button == 4) |
Armand | 1:a236c0568cdf | 517 | { |
Armand | 1:a236c0568cdf | 518 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 519 | { |
Armand | 1:a236c0568cdf | 520 | keypressed = '%'; |
Armand | 1:a236c0568cdf | 521 | } |
Armand | 1:a236c0568cdf | 522 | else |
Armand | 1:a236c0568cdf | 523 | { |
Armand | 1:a236c0568cdf | 524 | keypressed = '4'; |
Armand | 1:a236c0568cdf | 525 | } |
Armand | 1:a236c0568cdf | 526 | a = 0; |
Armand | 1:a236c0568cdf | 527 | b = 0; |
Armand | 1:a236c0568cdf | 528 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 529 | state = 0; |
Armand | 1:a236c0568cdf | 530 | } |
Armand | 1:a236c0568cdf | 531 | else if(button == 5) |
Armand | 1:a236c0568cdf | 532 | { |
Armand | 1:a236c0568cdf | 533 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 534 | { |
Armand | 1:a236c0568cdf | 535 | keypressed = 38; |
Armand | 1:a236c0568cdf | 536 | } |
Armand | 1:a236c0568cdf | 537 | else |
Armand | 1:a236c0568cdf | 538 | { |
Armand | 1:a236c0568cdf | 539 | keypressed = '5'; |
Armand | 1:a236c0568cdf | 540 | } |
Armand | 1:a236c0568cdf | 541 | a = 0; |
Armand | 1:a236c0568cdf | 542 | b = 0; |
Armand | 1:a236c0568cdf | 543 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 544 | state = 0; |
Armand | 1:a236c0568cdf | 545 | } |
Armand | 1:a236c0568cdf | 546 | else if(button == 6) |
Armand | 1:a236c0568cdf | 547 | { |
Armand | 1:a236c0568cdf | 548 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 549 | { |
Armand | 1:a236c0568cdf | 550 | keypressed = '*'; |
Armand | 1:a236c0568cdf | 551 | } |
Armand | 1:a236c0568cdf | 552 | else |
Armand | 1:a236c0568cdf | 553 | { |
Armand | 1:a236c0568cdf | 554 | keypressed = '6'; |
Armand | 1:a236c0568cdf | 555 | } |
Armand | 1:a236c0568cdf | 556 | a = 0; |
Armand | 1:a236c0568cdf | 557 | b = 0; |
Armand | 1:a236c0568cdf | 558 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 559 | state = 0; |
Armand | 1:a236c0568cdf | 560 | } |
Armand | 1:a236c0568cdf | 561 | else if(button == 7) |
Armand | 1:a236c0568cdf | 562 | { |
Armand | 1:a236c0568cdf | 563 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 564 | { |
Armand | 1:a236c0568cdf | 565 | keypressed = '('; |
Armand | 1:a236c0568cdf | 566 | } |
Armand | 1:a236c0568cdf | 567 | else |
Armand | 1:a236c0568cdf | 568 | { |
Armand | 1:a236c0568cdf | 569 | keypressed = '7'; |
Armand | 1:a236c0568cdf | 570 | } |
Armand | 1:a236c0568cdf | 571 | a = 0; |
Armand | 1:a236c0568cdf | 572 | b = 0; |
Armand | 1:a236c0568cdf | 573 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 574 | state = 0; |
Armand | 1:a236c0568cdf | 575 | } |
Armand | 1:a236c0568cdf | 576 | else if(button == 8) |
Armand | 1:a236c0568cdf | 577 | { |
Armand | 1:a236c0568cdf | 578 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 579 | { |
Armand | 1:a236c0568cdf | 580 | keypressed = ')'; |
Armand | 1:a236c0568cdf | 581 | } |
Armand | 1:a236c0568cdf | 582 | else |
Armand | 1:a236c0568cdf | 583 | { |
Armand | 1:a236c0568cdf | 584 | keypressed = '8'; |
Armand | 1:a236c0568cdf | 585 | } |
Armand | 1:a236c0568cdf | 586 | a = 0; |
Armand | 1:a236c0568cdf | 587 | b = 0; |
Armand | 1:a236c0568cdf | 588 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 589 | state = 0; |
Armand | 1:a236c0568cdf | 590 | } |
Armand | 1:a236c0568cdf | 591 | else if(button == 9) |
Armand | 1:a236c0568cdf | 592 | { |
Armand | 1:a236c0568cdf | 593 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 594 | { |
Armand | 1:a236c0568cdf | 595 | keypressed = '-'; |
Armand | 1:a236c0568cdf | 596 | } |
Armand | 1:a236c0568cdf | 597 | else |
Armand | 1:a236c0568cdf | 598 | { |
Armand | 1:a236c0568cdf | 599 | keypressed = '9'; |
Armand | 1:a236c0568cdf | 600 | } |
Armand | 1:a236c0568cdf | 601 | a = 0; |
Armand | 1:a236c0568cdf | 602 | b = 0; |
Armand | 1:a236c0568cdf | 603 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 604 | state = 0; |
Armand | 1:a236c0568cdf | 605 | } |
Armand | 1:a236c0568cdf | 606 | else if(button == 10) |
Armand | 1:a236c0568cdf | 607 | { |
Armand | 1:a236c0568cdf | 608 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 609 | { |
Armand | 1:a236c0568cdf | 610 | keypressed = '+'; |
Armand | 1:a236c0568cdf | 611 | } |
Armand | 1:a236c0568cdf | 612 | else |
Armand | 1:a236c0568cdf | 613 | { |
Armand | 1:a236c0568cdf | 614 | keypressed = '0'; |
Armand | 1:a236c0568cdf | 615 | } |
Armand | 1:a236c0568cdf | 616 | a = 0; |
Armand | 1:a236c0568cdf | 617 | b = 0; |
Armand | 1:a236c0568cdf | 618 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 619 | state = 0; |
Armand | 1:a236c0568cdf | 620 | } |
Armand | 1:a236c0568cdf | 621 | else if(button == 11) |
Armand | 1:a236c0568cdf | 622 | { |
Armand | 1:a236c0568cdf | 623 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 624 | { |
Armand | 1:a236c0568cdf | 625 | keypressed = '='; |
Armand | 1:a236c0568cdf | 626 | } |
Armand | 1:a236c0568cdf | 627 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 628 | { |
Armand | 1:a236c0568cdf | 629 | keypressed = 'Q'; |
Armand | 1:a236c0568cdf | 630 | } |
Armand | 1:a236c0568cdf | 631 | else |
Armand | 1:a236c0568cdf | 632 | { |
Armand | 1:a236c0568cdf | 633 | keypressed = 'q'; |
Armand | 1:a236c0568cdf | 634 | } |
Armand | 1:a236c0568cdf | 635 | a = 0; |
Armand | 1:a236c0568cdf | 636 | b = 0; |
Armand | 1:a236c0568cdf | 637 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 638 | state = 0; |
Armand | 1:a236c0568cdf | 639 | } |
Armand | 1:a236c0568cdf | 640 | else if(button == 12) |
Armand | 1:a236c0568cdf | 641 | { |
Armand | 1:a236c0568cdf | 642 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 643 | { |
Armand | 1:a236c0568cdf | 644 | keypressed = '_'; |
Armand | 1:a236c0568cdf | 645 | } |
Armand | 1:a236c0568cdf | 646 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 647 | { |
Armand | 1:a236c0568cdf | 648 | keypressed = 'W'; |
Armand | 1:a236c0568cdf | 649 | } |
Armand | 1:a236c0568cdf | 650 | else |
Armand | 1:a236c0568cdf | 651 | { |
Armand | 1:a236c0568cdf | 652 | keypressed = 'w'; |
Armand | 1:a236c0568cdf | 653 | } |
Armand | 1:a236c0568cdf | 654 | a = 0; |
Armand | 1:a236c0568cdf | 655 | b = 0; |
Armand | 1:a236c0568cdf | 656 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 657 | state = 0; |
Armand | 1:a236c0568cdf | 658 | } |
Armand | 1:a236c0568cdf | 659 | else if(button == 13) |
Armand | 1:a236c0568cdf | 660 | { |
Armand | 1:a236c0568cdf | 661 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 662 | { |
Armand | 1:a236c0568cdf | 663 | keypressed = '^'; |
Armand | 1:a236c0568cdf | 664 | } |
Armand | 1:a236c0568cdf | 665 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 666 | { |
Armand | 1:a236c0568cdf | 667 | keypressed = 'E'; |
Armand | 1:a236c0568cdf | 668 | } |
Armand | 1:a236c0568cdf | 669 | else |
Armand | 1:a236c0568cdf | 670 | { |
Armand | 1:a236c0568cdf | 671 | keypressed = 'e'; |
Armand | 1:a236c0568cdf | 672 | } |
Armand | 1:a236c0568cdf | 673 | a = 0; |
Armand | 1:a236c0568cdf | 674 | b = 0; |
Armand | 1:a236c0568cdf | 675 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 676 | state = 0; |
Armand | 1:a236c0568cdf | 677 | } |
Armand | 1:a236c0568cdf | 678 | else if(button == 14) |
Armand | 1:a236c0568cdf | 679 | { |
Armand | 1:a236c0568cdf | 680 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 681 | { |
Armand | 1:a236c0568cdf | 682 | keypressed = ';'; |
Armand | 1:a236c0568cdf | 683 | } |
Armand | 1:a236c0568cdf | 684 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 685 | { |
Armand | 1:a236c0568cdf | 686 | keypressed = 'R'; |
Armand | 1:a236c0568cdf | 687 | } |
Armand | 1:a236c0568cdf | 688 | else |
Armand | 1:a236c0568cdf | 689 | { |
Armand | 1:a236c0568cdf | 690 | keypressed = 'r'; |
Armand | 1:a236c0568cdf | 691 | } |
Armand | 1:a236c0568cdf | 692 | a = 0; |
Armand | 1:a236c0568cdf | 693 | b = 0; |
Armand | 1:a236c0568cdf | 694 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 695 | state = 0; |
Armand | 1:a236c0568cdf | 696 | } |
Armand | 1:a236c0568cdf | 697 | else if(button == 15) |
Armand | 1:a236c0568cdf | 698 | { |
Armand | 1:a236c0568cdf | 699 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 700 | { |
Armand | 1:a236c0568cdf | 701 | keypressed = '"'; |
Armand | 1:a236c0568cdf | 702 | } |
Armand | 1:a236c0568cdf | 703 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 704 | { |
Armand | 1:a236c0568cdf | 705 | keypressed = 'T'; |
Armand | 1:a236c0568cdf | 706 | } |
Armand | 1:a236c0568cdf | 707 | else |
Armand | 1:a236c0568cdf | 708 | { |
Armand | 1:a236c0568cdf | 709 | keypressed = 't'; |
Armand | 1:a236c0568cdf | 710 | } |
Armand | 1:a236c0568cdf | 711 | a = 0; |
Armand | 1:a236c0568cdf | 712 | b = 0; |
Armand | 1:a236c0568cdf | 713 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 714 | state = 0; |
Armand | 1:a236c0568cdf | 715 | } |
Armand | 1:a236c0568cdf | 716 | else if(button == 16) |
Armand | 1:a236c0568cdf | 717 | { |
Armand | 1:a236c0568cdf | 718 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 719 | { |
Armand | 1:a236c0568cdf | 720 | keypressed = '\''; |
Armand | 1:a236c0568cdf | 721 | } |
Armand | 1:a236c0568cdf | 722 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 723 | { |
Armand | 1:a236c0568cdf | 724 | keypressed = 'Y'; |
Armand | 1:a236c0568cdf | 725 | } |
Armand | 1:a236c0568cdf | 726 | else |
Armand | 1:a236c0568cdf | 727 | { |
Armand | 1:a236c0568cdf | 728 | keypressed = 'y'; |
Armand | 1:a236c0568cdf | 729 | } |
Armand | 1:a236c0568cdf | 730 | a = 0; |
Armand | 1:a236c0568cdf | 731 | b = 0; |
Armand | 1:a236c0568cdf | 732 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 733 | state = 0; |
Armand | 1:a236c0568cdf | 734 | } |
Armand | 1:a236c0568cdf | 735 | else if(button == 17) |
Armand | 1:a236c0568cdf | 736 | { |
Armand | 1:a236c0568cdf | 737 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 738 | { |
Armand | 1:a236c0568cdf | 739 | keypressed = '<'; |
Armand | 1:a236c0568cdf | 740 | } |
Armand | 1:a236c0568cdf | 741 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 742 | { |
Armand | 1:a236c0568cdf | 743 | keypressed = 'U'; |
Armand | 1:a236c0568cdf | 744 | } |
Armand | 1:a236c0568cdf | 745 | else |
Armand | 1:a236c0568cdf | 746 | { |
Armand | 1:a236c0568cdf | 747 | keypressed = 'u'; |
Armand | 1:a236c0568cdf | 748 | } |
Armand | 1:a236c0568cdf | 749 | a = 0; |
Armand | 1:a236c0568cdf | 750 | b = 0; |
Armand | 1:a236c0568cdf | 751 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 752 | state = 0; |
Armand | 1:a236c0568cdf | 753 | } |
Armand | 1:a236c0568cdf | 754 | else if(button == 18) |
Armand | 1:a236c0568cdf | 755 | { |
Armand | 1:a236c0568cdf | 756 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 757 | { |
Armand | 1:a236c0568cdf | 758 | keypressed = '>'; |
Armand | 1:a236c0568cdf | 759 | } |
Armand | 1:a236c0568cdf | 760 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 761 | { |
Armand | 1:a236c0568cdf | 762 | keypressed = 'I'; |
Armand | 1:a236c0568cdf | 763 | } |
Armand | 1:a236c0568cdf | 764 | else |
Armand | 1:a236c0568cdf | 765 | { |
Armand | 1:a236c0568cdf | 766 | keypressed = 'i'; |
Armand | 1:a236c0568cdf | 767 | } |
Armand | 1:a236c0568cdf | 768 | a = 0; |
Armand | 1:a236c0568cdf | 769 | b = 0; |
Armand | 1:a236c0568cdf | 770 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 771 | state = 0; |
Armand | 1:a236c0568cdf | 772 | } |
Armand | 1:a236c0568cdf | 773 | else if(button == 19) |
Armand | 1:a236c0568cdf | 774 | { |
Armand | 1:a236c0568cdf | 775 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 776 | { |
Armand | 1:a236c0568cdf | 777 | keypressed = '/'; |
Armand | 1:a236c0568cdf | 778 | } |
Armand | 1:a236c0568cdf | 779 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 780 | { |
Armand | 1:a236c0568cdf | 781 | keypressed = 'O'; |
Armand | 1:a236c0568cdf | 782 | } |
Armand | 1:a236c0568cdf | 783 | else |
Armand | 1:a236c0568cdf | 784 | { |
Armand | 1:a236c0568cdf | 785 | keypressed = 'o'; |
Armand | 1:a236c0568cdf | 786 | } |
Armand | 1:a236c0568cdf | 787 | a = 0; |
Armand | 1:a236c0568cdf | 788 | b = 0; |
Armand | 1:a236c0568cdf | 789 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 790 | state = 0; |
Armand | 1:a236c0568cdf | 791 | } |
Armand | 1:a236c0568cdf | 792 | else if(button == 20) |
Armand | 1:a236c0568cdf | 793 | { |
Armand | 1:a236c0568cdf | 794 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 795 | { |
Armand | 1:a236c0568cdf | 796 | keypressed = '\\'; |
Armand | 1:a236c0568cdf | 797 | } |
Armand | 1:a236c0568cdf | 798 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 799 | { |
Armand | 1:a236c0568cdf | 800 | keypressed = 'P'; |
Armand | 1:a236c0568cdf | 801 | } |
Armand | 1:a236c0568cdf | 802 | else |
Armand | 1:a236c0568cdf | 803 | { |
Armand | 1:a236c0568cdf | 804 | keypressed = 'p'; |
Armand | 1:a236c0568cdf | 805 | } |
Armand | 1:a236c0568cdf | 806 | a = 0; |
Armand | 1:a236c0568cdf | 807 | b = 0; |
Armand | 1:a236c0568cdf | 808 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 809 | state = 0; |
Armand | 1:a236c0568cdf | 810 | } |
Armand | 1:a236c0568cdf | 811 | else if(button == 21) |
Armand | 1:a236c0568cdf | 812 | { |
Armand | 1:a236c0568cdf | 813 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 814 | { |
Armand | 1:a236c0568cdf | 815 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 816 | } |
Armand | 1:a236c0568cdf | 817 | else |
Armand | 1:a236c0568cdf | 818 | { |
Armand | 1:a236c0568cdf | 819 | keypressed = ':'; |
Armand | 1:a236c0568cdf | 820 | } |
Armand | 1:a236c0568cdf | 821 | a = 0; |
Armand | 1:a236c0568cdf | 822 | b = 0; |
Armand | 1:a236c0568cdf | 823 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 824 | state = 0; |
Armand | 1:a236c0568cdf | 825 | } |
Armand | 1:a236c0568cdf | 826 | else if(button == 22) |
Armand | 1:a236c0568cdf | 827 | { |
Armand | 1:a236c0568cdf | 828 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 829 | { |
Armand | 1:a236c0568cdf | 830 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 831 | } |
Armand | 1:a236c0568cdf | 832 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 833 | { |
Armand | 1:a236c0568cdf | 834 | keypressed = 'A'; |
Armand | 1:a236c0568cdf | 835 | } |
Armand | 1:a236c0568cdf | 836 | else |
Armand | 1:a236c0568cdf | 837 | { |
Armand | 1:a236c0568cdf | 838 | keypressed = 'a'; |
Armand | 1:a236c0568cdf | 839 | } |
Armand | 1:a236c0568cdf | 840 | a = 0; |
Armand | 1:a236c0568cdf | 841 | b = 0; |
Armand | 1:a236c0568cdf | 842 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 843 | state = 0; |
Armand | 1:a236c0568cdf | 844 | } |
Armand | 1:a236c0568cdf | 845 | else if(button == 23) |
Armand | 1:a236c0568cdf | 846 | { |
Armand | 1:a236c0568cdf | 847 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 848 | { |
Armand | 1:a236c0568cdf | 849 | keypressed = '`'; |
Armand | 1:a236c0568cdf | 850 | } |
Armand | 1:a236c0568cdf | 851 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 852 | { |
Armand | 1:a236c0568cdf | 853 | keypressed = 'S'; |
Armand | 1:a236c0568cdf | 854 | } |
Armand | 1:a236c0568cdf | 855 | else |
Armand | 1:a236c0568cdf | 856 | { |
Armand | 1:a236c0568cdf | 857 | keypressed = 's'; |
Armand | 1:a236c0568cdf | 858 | } |
Armand | 1:a236c0568cdf | 859 | a = 0; |
Armand | 1:a236c0568cdf | 860 | b = 0; |
Armand | 1:a236c0568cdf | 861 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 862 | state = 0; |
Armand | 1:a236c0568cdf | 863 | } |
Armand | 1:a236c0568cdf | 864 | else if(button == 24) |
Armand | 1:a236c0568cdf | 865 | { |
Armand | 1:a236c0568cdf | 866 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 867 | { |
Armand | 1:a236c0568cdf | 868 | keypressed = '~'; |
Armand | 1:a236c0568cdf | 869 | } |
Armand | 1:a236c0568cdf | 870 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 871 | { |
Armand | 1:a236c0568cdf | 872 | keypressed = 'D'; |
Armand | 1:a236c0568cdf | 873 | } |
Armand | 1:a236c0568cdf | 874 | else |
Armand | 1:a236c0568cdf | 875 | { |
Armand | 1:a236c0568cdf | 876 | keypressed = 'd'; |
Armand | 1:a236c0568cdf | 877 | } |
Armand | 1:a236c0568cdf | 878 | a = 0; |
Armand | 1:a236c0568cdf | 879 | b = 0; |
Armand | 1:a236c0568cdf | 880 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 881 | state = 0; |
Armand | 1:a236c0568cdf | 882 | } |
Armand | 1:a236c0568cdf | 883 | else if(button == 25) |
Armand | 1:a236c0568cdf | 884 | { |
Armand | 1:a236c0568cdf | 885 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 886 | { |
Armand | 1:a236c0568cdf | 887 | keypressed = '{'; |
Armand | 1:a236c0568cdf | 888 | } |
Armand | 1:a236c0568cdf | 889 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 890 | { |
Armand | 1:a236c0568cdf | 891 | keypressed = 'F'; |
Armand | 1:a236c0568cdf | 892 | } |
Armand | 1:a236c0568cdf | 893 | else |
Armand | 1:a236c0568cdf | 894 | { |
Armand | 1:a236c0568cdf | 895 | keypressed = 'f'; |
Armand | 1:a236c0568cdf | 896 | } |
Armand | 1:a236c0568cdf | 897 | a = 0; |
Armand | 1:a236c0568cdf | 898 | b = 0; |
Armand | 1:a236c0568cdf | 899 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 900 | state = 0; |
Armand | 1:a236c0568cdf | 901 | } |
Armand | 1:a236c0568cdf | 902 | else if(button == 26) |
Armand | 1:a236c0568cdf | 903 | { |
Armand | 1:a236c0568cdf | 904 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 905 | { |
Armand | 1:a236c0568cdf | 906 | keypressed = '}'; |
Armand | 1:a236c0568cdf | 907 | } |
Armand | 1:a236c0568cdf | 908 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 909 | { |
Armand | 1:a236c0568cdf | 910 | keypressed = 'G'; |
Armand | 1:a236c0568cdf | 911 | } |
Armand | 1:a236c0568cdf | 912 | else |
Armand | 1:a236c0568cdf | 913 | { |
Armand | 1:a236c0568cdf | 914 | keypressed = 'g'; |
Armand | 1:a236c0568cdf | 915 | } |
Armand | 1:a236c0568cdf | 916 | a = 0; |
Armand | 1:a236c0568cdf | 917 | b = 0; |
Armand | 1:a236c0568cdf | 918 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 919 | state = 0; |
Armand | 1:a236c0568cdf | 920 | } |
Armand | 1:a236c0568cdf | 921 | else if(button == 27) |
Armand | 1:a236c0568cdf | 922 | { |
Armand | 1:a236c0568cdf | 923 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 924 | { |
Armand | 1:a236c0568cdf | 925 | keypressed = '['; |
Armand | 1:a236c0568cdf | 926 | } |
Armand | 1:a236c0568cdf | 927 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 928 | { |
Armand | 1:a236c0568cdf | 929 | keypressed = 'H'; |
Armand | 1:a236c0568cdf | 930 | } |
Armand | 1:a236c0568cdf | 931 | else |
Armand | 1:a236c0568cdf | 932 | { |
Armand | 1:a236c0568cdf | 933 | keypressed = 'h'; |
Armand | 1:a236c0568cdf | 934 | } |
Armand | 1:a236c0568cdf | 935 | a = 0; |
Armand | 1:a236c0568cdf | 936 | b = 0; |
Armand | 1:a236c0568cdf | 937 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 938 | state = 0; |
Armand | 1:a236c0568cdf | 939 | } |
Armand | 1:a236c0568cdf | 940 | else if(button == 28) |
Armand | 1:a236c0568cdf | 941 | { |
Armand | 1:a236c0568cdf | 942 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 943 | { |
Armand | 1:a236c0568cdf | 944 | keypressed = ']'; |
Armand | 1:a236c0568cdf | 945 | } |
Armand | 1:a236c0568cdf | 946 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 947 | { |
Armand | 1:a236c0568cdf | 948 | keypressed = 'J'; |
Armand | 1:a236c0568cdf | 949 | } |
Armand | 1:a236c0568cdf | 950 | else |
Armand | 1:a236c0568cdf | 951 | { |
Armand | 1:a236c0568cdf | 952 | keypressed = 'j'; |
Armand | 1:a236c0568cdf | 953 | } |
Armand | 1:a236c0568cdf | 954 | a = 0; |
Armand | 1:a236c0568cdf | 955 | b = 0; |
Armand | 1:a236c0568cdf | 956 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 957 | state = 0; |
Armand | 1:a236c0568cdf | 958 | } |
Armand | 1:a236c0568cdf | 959 | else if(button == 29) |
Armand | 1:a236c0568cdf | 960 | { |
Armand | 1:a236c0568cdf | 961 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 962 | { |
Armand | 1:a236c0568cdf | 963 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 964 | } |
Armand | 1:a236c0568cdf | 965 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 966 | { |
Armand | 1:a236c0568cdf | 967 | keypressed = 'K'; |
Armand | 1:a236c0568cdf | 968 | } |
Armand | 1:a236c0568cdf | 969 | else |
Armand | 1:a236c0568cdf | 970 | { |
Armand | 1:a236c0568cdf | 971 | keypressed = 'k'; |
Armand | 1:a236c0568cdf | 972 | } |
Armand | 1:a236c0568cdf | 973 | a = 0; |
Armand | 1:a236c0568cdf | 974 | b = 0; |
Armand | 1:a236c0568cdf | 975 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 976 | state = 0; |
Armand | 1:a236c0568cdf | 977 | } |
Armand | 1:a236c0568cdf | 978 | else if(button == 30) |
Armand | 1:a236c0568cdf | 979 | { |
Armand | 1:a236c0568cdf | 980 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 981 | { |
Armand | 1:a236c0568cdf | 982 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 983 | } |
Armand | 1:a236c0568cdf | 984 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 985 | { |
Armand | 1:a236c0568cdf | 986 | keypressed = 'L'; |
Armand | 1:a236c0568cdf | 987 | } |
Armand | 1:a236c0568cdf | 988 | else |
Armand | 1:a236c0568cdf | 989 | { |
Armand | 1:a236c0568cdf | 990 | keypressed = 'l'; |
Armand | 1:a236c0568cdf | 991 | } |
Armand | 1:a236c0568cdf | 992 | a = 0; |
Armand | 1:a236c0568cdf | 993 | b = 0; |
Armand | 1:a236c0568cdf | 994 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 995 | state = 0; |
Armand | 1:a236c0568cdf | 996 | } |
Armand | 1:a236c0568cdf | 997 | else if(button == 31) |
Armand | 1:a236c0568cdf | 998 | { |
Armand | 1:a236c0568cdf | 999 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1000 | { |
Armand | 1:a236c0568cdf | 1001 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1002 | } |
Armand | 1:a236c0568cdf | 1003 | else |
Armand | 1:a236c0568cdf | 1004 | { |
Armand | 1:a236c0568cdf | 1005 | keypressed = ','; |
Armand | 1:a236c0568cdf | 1006 | } |
Armand | 1:a236c0568cdf | 1007 | a = 0; |
Armand | 1:a236c0568cdf | 1008 | b = 0; |
Armand | 1:a236c0568cdf | 1009 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1010 | state = 0; |
Armand | 1:a236c0568cdf | 1011 | } |
Armand | 1:a236c0568cdf | 1012 | else if(button == 32) |
Armand | 1:a236c0568cdf | 1013 | { |
Armand | 1:a236c0568cdf | 1014 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1015 | { |
Armand | 1:a236c0568cdf | 1016 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1017 | } |
Armand | 1:a236c0568cdf | 1018 | else |
Armand | 1:a236c0568cdf | 1019 | { |
Armand | 1:a236c0568cdf | 1020 | keypressed = '!'; |
Armand | 1:a236c0568cdf | 1021 | } |
Armand | 1:a236c0568cdf | 1022 | a = 0; |
Armand | 1:a236c0568cdf | 1023 | b = 0; |
Armand | 1:a236c0568cdf | 1024 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1025 | state = 0; |
Armand | 1:a236c0568cdf | 1026 | } |
Armand | 1:a236c0568cdf | 1027 | else if(button == 33) |
Armand | 1:a236c0568cdf | 1028 | { |
Armand | 1:a236c0568cdf | 1029 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1030 | { |
Armand | 1:a236c0568cdf | 1031 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1032 | } |
Armand | 1:a236c0568cdf | 1033 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1034 | { |
Armand | 1:a236c0568cdf | 1035 | keypressed = 'Z'; |
Armand | 1:a236c0568cdf | 1036 | } |
Armand | 1:a236c0568cdf | 1037 | else |
Armand | 1:a236c0568cdf | 1038 | { |
Armand | 1:a236c0568cdf | 1039 | keypressed = 'z'; |
Armand | 1:a236c0568cdf | 1040 | } |
Armand | 1:a236c0568cdf | 1041 | a = 0; |
Armand | 1:a236c0568cdf | 1042 | b = 0; |
Armand | 1:a236c0568cdf | 1043 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1044 | state = 0; |
Armand | 1:a236c0568cdf | 1045 | } |
Armand | 1:a236c0568cdf | 1046 | else if(button == 34) |
Armand | 1:a236c0568cdf | 1047 | { |
Armand | 1:a236c0568cdf | 1048 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1049 | { |
Armand | 1:a236c0568cdf | 1050 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1051 | } |
Armand | 1:a236c0568cdf | 1052 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1053 | { |
Armand | 1:a236c0568cdf | 1054 | keypressed = 'X'; |
Armand | 1:a236c0568cdf | 1055 | } |
Armand | 1:a236c0568cdf | 1056 | else |
Armand | 1:a236c0568cdf | 1057 | { |
Armand | 1:a236c0568cdf | 1058 | keypressed = 'x'; |
Armand | 1:a236c0568cdf | 1059 | } |
Armand | 1:a236c0568cdf | 1060 | a = 0; |
Armand | 1:a236c0568cdf | 1061 | b = 0; |
Armand | 1:a236c0568cdf | 1062 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1063 | state = 0; |
Armand | 1:a236c0568cdf | 1064 | } |
Armand | 1:a236c0568cdf | 1065 | else if(button == 35) |
Armand | 1:a236c0568cdf | 1066 | { |
Armand | 1:a236c0568cdf | 1067 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1068 | { |
Armand | 1:a236c0568cdf | 1069 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1070 | } |
Armand | 1:a236c0568cdf | 1071 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1072 | { |
Armand | 1:a236c0568cdf | 1073 | keypressed = 'C'; |
Armand | 1:a236c0568cdf | 1074 | } |
Armand | 1:a236c0568cdf | 1075 | else |
Armand | 1:a236c0568cdf | 1076 | { |
Armand | 1:a236c0568cdf | 1077 | keypressed = 'c'; |
Armand | 1:a236c0568cdf | 1078 | } |
Armand | 1:a236c0568cdf | 1079 | a = 0; |
Armand | 1:a236c0568cdf | 1080 | b = 0; |
Armand | 1:a236c0568cdf | 1081 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1082 | state = 0; |
Armand | 1:a236c0568cdf | 1083 | } |
Armand | 1:a236c0568cdf | 1084 | else if(button == 36) |
Armand | 1:a236c0568cdf | 1085 | { |
Armand | 1:a236c0568cdf | 1086 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1087 | { |
Armand | 1:a236c0568cdf | 1088 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1089 | } |
Armand | 1:a236c0568cdf | 1090 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1091 | { |
Armand | 1:a236c0568cdf | 1092 | keypressed = 'V'; |
Armand | 1:a236c0568cdf | 1093 | } |
Armand | 1:a236c0568cdf | 1094 | else |
Armand | 1:a236c0568cdf | 1095 | { |
Armand | 1:a236c0568cdf | 1096 | keypressed = 'v'; |
Armand | 1:a236c0568cdf | 1097 | } |
Armand | 1:a236c0568cdf | 1098 | a = 0; |
Armand | 1:a236c0568cdf | 1099 | b = 0; |
Armand | 1:a236c0568cdf | 1100 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1101 | state = 0; |
Armand | 1:a236c0568cdf | 1102 | } |
Armand | 1:a236c0568cdf | 1103 | else if(button == 37) |
Armand | 1:a236c0568cdf | 1104 | { |
Armand | 1:a236c0568cdf | 1105 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1106 | { |
Armand | 1:a236c0568cdf | 1107 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1108 | } |
Armand | 1:a236c0568cdf | 1109 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1110 | { |
Armand | 1:a236c0568cdf | 1111 | keypressed = 'B'; |
Armand | 1:a236c0568cdf | 1112 | } |
Armand | 1:a236c0568cdf | 1113 | else |
Armand | 1:a236c0568cdf | 1114 | { |
Armand | 1:a236c0568cdf | 1115 | keypressed = 'b'; |
Armand | 1:a236c0568cdf | 1116 | } |
Armand | 1:a236c0568cdf | 1117 | a = 0; |
Armand | 1:a236c0568cdf | 1118 | b = 0; |
Armand | 1:a236c0568cdf | 1119 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1120 | state = 0; |
Armand | 1:a236c0568cdf | 1121 | } |
Armand | 1:a236c0568cdf | 1122 | else if(button == 38) |
Armand | 1:a236c0568cdf | 1123 | { |
Armand | 1:a236c0568cdf | 1124 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1125 | { |
Armand | 1:a236c0568cdf | 1126 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1127 | } |
Armand | 1:a236c0568cdf | 1128 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1129 | { |
Armand | 1:a236c0568cdf | 1130 | keypressed = 'N'; |
Armand | 1:a236c0568cdf | 1131 | } |
Armand | 1:a236c0568cdf | 1132 | else |
Armand | 1:a236c0568cdf | 1133 | { |
Armand | 1:a236c0568cdf | 1134 | keypressed = 'n'; |
Armand | 1:a236c0568cdf | 1135 | } |
Armand | 1:a236c0568cdf | 1136 | a = 0; |
Armand | 1:a236c0568cdf | 1137 | b = 0; |
Armand | 1:a236c0568cdf | 1138 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1139 | state = 0; |
Armand | 1:a236c0568cdf | 1140 | } |
Armand | 1:a236c0568cdf | 1141 | else if(button == 39) |
Armand | 1:a236c0568cdf | 1142 | { |
Armand | 1:a236c0568cdf | 1143 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1144 | { |
Armand | 1:a236c0568cdf | 1145 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1146 | } |
Armand | 1:a236c0568cdf | 1147 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1148 | { |
Armand | 1:a236c0568cdf | 1149 | keypressed = 'M'; |
Armand | 1:a236c0568cdf | 1150 | } |
Armand | 1:a236c0568cdf | 1151 | else |
Armand | 1:a236c0568cdf | 1152 | { |
Armand | 1:a236c0568cdf | 1153 | keypressed = 'm'; |
Armand | 1:a236c0568cdf | 1154 | } |
Armand | 1:a236c0568cdf | 1155 | a = 0; |
Armand | 1:a236c0568cdf | 1156 | b = 0; |
Armand | 1:a236c0568cdf | 1157 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1158 | state = 0; |
Armand | 1:a236c0568cdf | 1159 | } |
Armand | 1:a236c0568cdf | 1160 | else if(button == 40) |
Armand | 1:a236c0568cdf | 1161 | { |
Armand | 1:a236c0568cdf | 1162 | if(Func == 1 && Caps == 0) |
Armand | 1:a236c0568cdf | 1163 | { |
Armand | 1:a236c0568cdf | 1164 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1165 | } |
Armand | 1:a236c0568cdf | 1166 | else |
Armand | 1:a236c0568cdf | 1167 | { |
Armand | 1:a236c0568cdf | 1168 | keypressed = '?'; |
Armand | 1:a236c0568cdf | 1169 | } |
Armand | 1:a236c0568cdf | 1170 | a = 0; |
Armand | 1:a236c0568cdf | 1171 | b = 0; |
Armand | 1:a236c0568cdf | 1172 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1173 | state = 0; |
Armand | 1:a236c0568cdf | 1174 | } |
Armand | 1:a236c0568cdf | 1175 | else if(button == 41) |
Armand | 1:a236c0568cdf | 1176 | { |
Armand | 1:a236c0568cdf | 1177 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1178 | m++; |
Armand | 1:a236c0568cdf | 1179 | textx += 12; |
Armand | 1:a236c0568cdf | 1180 | |
Armand | 1:a236c0568cdf | 1181 | str[m] = keypressed; |
Armand | 1:a236c0568cdf | 1182 | |
Armand | 1:a236c0568cdf | 1183 | m -= 1; |
Armand | 1:a236c0568cdf | 1184 | textx -= 12; |
Armand | 1:a236c0568cdf | 1185 | |
Armand | 1:a236c0568cdf | 1186 | str[m] = keypressed; |
Armand | 1:a236c0568cdf | 1187 | |
Armand | 1:a236c0568cdf | 1188 | m++; |
Armand | 1:a236c0568cdf | 1189 | textx += 12; |
Armand | 1:a236c0568cdf | 1190 | |
Armand | 1:a236c0568cdf | 1191 | a = 0; |
Armand | 1:a236c0568cdf | 1192 | b = 0; |
Armand | 1:a236c0568cdf | 1193 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1194 | state = 0; |
Armand | 1:a236c0568cdf | 1195 | } |
Armand | 1:a236c0568cdf | 1196 | else if(button == 42) |
Armand | 1:a236c0568cdf | 1197 | { |
Armand | 1:a236c0568cdf | 1198 | if(Func != 1) |
Armand | 1:a236c0568cdf | 1199 | { |
Armand | 1:a236c0568cdf | 1200 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1201 | Caps = !Caps; |
Armand | 1:a236c0568cdf | 1202 | Func = 0; |
Armand | 1:a236c0568cdf | 1203 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 1204 | a = 0; |
Armand | 1:a236c0568cdf | 1205 | b = 0; |
Armand | 1:a236c0568cdf | 1206 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1207 | } |
Armand | 1:a236c0568cdf | 1208 | state = 0; |
Armand | 1:a236c0568cdf | 1209 | } |
Armand | 1:a236c0568cdf | 1210 | else if(button == 43) |
Armand | 1:a236c0568cdf | 1211 | { |
Armand | 1:a236c0568cdf | 1212 | keypressed = '.'; |
Armand | 1:a236c0568cdf | 1213 | a = 0; |
Armand | 1:a236c0568cdf | 1214 | b = 0; |
Armand | 1:a236c0568cdf | 1215 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1216 | state = 0; |
Armand | 1:a236c0568cdf | 1217 | } |
Armand | 1:a236c0568cdf | 1218 | else if(button == 44) |
Armand | 1:a236c0568cdf | 1219 | { |
Armand | 1:a236c0568cdf | 1220 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1221 | Func = !Func; |
Armand | 1:a236c0568cdf | 1222 | Caps = 0; |
Armand | 1:a236c0568cdf | 1223 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 1224 | a = 0; |
Armand | 1:a236c0568cdf | 1225 | b = 0; |
Armand | 1:a236c0568cdf | 1226 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1227 | state = 0; |
Armand | 1:a236c0568cdf | 1228 | } |
Armand | 1:a236c0568cdf | 1229 | else if(button == 45) |
Armand | 1:a236c0568cdf | 1230 | { |
Armand | 1:a236c0568cdf | 1231 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1232 | |
Armand | 1:a236c0568cdf | 1233 | if(m != 0 || textx != 0) |
Armand | 1:a236c0568cdf | 1234 | { |
Armand | 1:a236c0568cdf | 1235 | m -= 1; |
Armand | 1:a236c0568cdf | 1236 | textx -= 12; |
Armand | 1:a236c0568cdf | 1237 | } |
Armand | 1:a236c0568cdf | 1238 | |
Armand | 1:a236c0568cdf | 1239 | a = 0; |
Armand | 1:a236c0568cdf | 1240 | b = 0; |
Armand | 1:a236c0568cdf | 1241 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1242 | state = 0; |
Armand | 1:a236c0568cdf | 1243 | } |
Armand | 1:a236c0568cdf | 1244 | else if(button == 46) |
Armand | 1:a236c0568cdf | 1245 | { |
Armand | 1:a236c0568cdf | 1246 | keypressed = '\0'; |
Armand | 1:a236c0568cdf | 1247 | Enter = 1; |
Armand | 1:a236c0568cdf | 1248 | a = 0; |
Armand | 1:a236c0568cdf | 1249 | b = 0; |
Armand | 1:a236c0568cdf | 1250 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1251 | state = 0; |
Armand | 1:a236c0568cdf | 1252 | } |
Armand | 1:a236c0568cdf | 1253 | else |
Armand | 1:a236c0568cdf | 1254 | { |
Armand | 1:a236c0568cdf | 1255 | state = 0; |
Armand | 1:a236c0568cdf | 1256 | } |
Armand | 1:a236c0568cdf | 1257 | |
Armand | 1:a236c0568cdf | 1258 | str[m] = keypressed; |
Armand | 1:a236c0568cdf | 1259 | |
Armand | 1:a236c0568cdf | 1260 | lcd.SetTextColor(LCD_COLOR_BLACK); |
Armand | 1:a236c0568cdf | 1261 | lcd.SetBackColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1262 | lcd.SetFont(&Font20); |
Armand | 1:a236c0568cdf | 1263 | sprintf((char*)text2, "%c", str[m]); |
Armand | 1:a236c0568cdf | 1264 | lcd.DisplayStringAt(0 + textx, LINE(0), (uint8_t *)&text2, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1265 | |
Armand | 1:a236c0568cdf | 1266 | if(keypressed != ' ') |
Armand | 1:a236c0568cdf | 1267 | { |
Armand | 1:a236c0568cdf | 1268 | m++; |
Armand | 1:a236c0568cdf | 1269 | textx += 12; |
Armand | 1:a236c0568cdf | 1270 | } |
Armand | 1:a236c0568cdf | 1271 | |
Armand | 1:a236c0568cdf | 1272 | key = 0; |
Armand | 1:a236c0568cdf | 1273 | keypressed = ' '; |
Armand | 1:a236c0568cdf | 1274 | |
Armand | 1:a236c0568cdf | 1275 | }break; |
Armand | 1:a236c0568cdf | 1276 | case 30: |
Armand | 1:a236c0568cdf | 1277 | { |
Armand | 1:a236c0568cdf | 1278 | if(keypad == 1) |
Armand | 1:a236c0568cdf | 1279 | { |
Armand | 1:a236c0568cdf | 1280 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 1281 | keypad = 0; |
Armand | 1:a236c0568cdf | 1282 | } |
Armand | 1:a236c0568cdf | 1283 | |
Armand | 1:a236c0568cdf | 1284 | if(TS_State.touchDetected == 0) |
Armand | 1:a236c0568cdf | 1285 | { |
Armand | 1:a236c0568cdf | 1286 | DrawKeypad(); |
Armand | 1:a236c0568cdf | 1287 | a = 0; |
Armand | 1:a236c0568cdf | 1288 | b = 0; |
Armand | 1:a236c0568cdf | 1289 | correcttouch = 0; |
Armand | 1:a236c0568cdf | 1290 | state = 0; |
Armand | 1:a236c0568cdf | 1291 | } |
Armand | 1:a236c0568cdf | 1292 | }break; |
Armand | 1:a236c0568cdf | 1293 | } |
Armand | 1:a236c0568cdf | 1294 | } |
Armand | 1:a236c0568cdf | 1295 | |
Armand | 1:a236c0568cdf | 1296 | keypad = 0; |
Armand | 1:a236c0568cdf | 1297 | Enter = 0; |
Armand | 1:a236c0568cdf | 1298 | m = 0; |
Armand | 1:a236c0568cdf | 1299 | textx = 0; |
Armand | 1:a236c0568cdf | 1300 | state = 0; |
Armand | 1:a236c0568cdf | 1301 | Caps = 0; |
Armand | 1:a236c0568cdf | 1302 | Func = 0; |
Armand | 1:a236c0568cdf | 1303 | lcd.ClearStringLine(0); |
Armand | 1:a236c0568cdf | 1304 | lcd.SetTextColor(Bckclr); |
Armand | 1:a236c0568cdf | 1305 | lcd.FillRect(0, 0, 480, 20); |
Armand | 1:a236c0568cdf | 1306 | lcd.FillRect(keypadstartX[0][0],keypadstartY[0][0], 415, 187); |
Armand | 1:a236c0568cdf | 1307 | lcd.SetTextColor(Txtclr); |
Armand | 1:a236c0568cdf | 1308 | lcd.SetBackColor(Bckclr); |
Armand | 1:a236c0568cdf | 1309 | lcd.SetFont(FontSize); |
Armand | 1:a236c0568cdf | 1310 | } |
Armand | 1:a236c0568cdf | 1311 | |
Armand | 1:a236c0568cdf | 1312 | void F7_TSKeyboard::DrawKeypad() |
Armand | 1:a236c0568cdf | 1313 | { |
Armand | 1:a236c0568cdf | 1314 | int i, o, stepx = 0, stepy = 0, Drawpointx, Drawpointy; |
Armand | 1:a236c0568cdf | 1315 | uint8_t text[30]; |
Armand | 1:a236c0568cdf | 1316 | |
Armand | 1:a236c0568cdf | 1317 | |
Armand | 1:a236c0568cdf | 1318 | char keyboard1[4][10] = { |
Armand | 1:a236c0568cdf | 1319 | {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'}, |
Armand | 1:a236c0568cdf | 1320 | {'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p'}, |
Armand | 1:a236c0568cdf | 1321 | {':', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l'}, |
Armand | 1:a236c0568cdf | 1322 | {',', '!', 'z', 'x', 'c', 'v', 'b', 'n', 'm', '?'} |
Armand | 1:a236c0568cdf | 1323 | }; |
Armand | 1:a236c0568cdf | 1324 | |
Armand | 1:a236c0568cdf | 1325 | |
Armand | 1:a236c0568cdf | 1326 | char keyboard2[4][10] = { |
Armand | 1:a236c0568cdf | 1327 | {'1', '2', '3', '4', '5', '6', '7', '8', '9', '0'}, |
Armand | 1:a236c0568cdf | 1328 | {'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'}, |
Armand | 1:a236c0568cdf | 1329 | {':', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L'}, |
Armand | 1:a236c0568cdf | 1330 | {',', '!', 'Z', 'X', 'C', 'V', 'B', 'N', 'M', '?'} |
Armand | 1:a236c0568cdf | 1331 | }; |
Armand | 1:a236c0568cdf | 1332 | |
Armand | 1:a236c0568cdf | 1333 | char keyboard3[4][10] = { |
Armand | 1:a236c0568cdf | 1334 | {'@', '#', '$', '%', 38, '*', '(', ')', '-', '+'}, |
Armand | 1:a236c0568cdf | 1335 | {'=', '_', '^', ';', '"', '\'', '<', '>', '/', '\\'}, |
Armand | 1:a236c0568cdf | 1336 | {'\0', '\0', '`', '~', '{', '}', '[', ']', '\0', '\0'}, |
Armand | 1:a236c0568cdf | 1337 | {'\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0'} |
Armand | 1:a236c0568cdf | 1338 | }; |
Armand | 1:a236c0568cdf | 1339 | |
Armand | 1:a236c0568cdf | 1340 | keypad = 1; |
Armand | 1:a236c0568cdf | 1341 | |
Armand | 1:a236c0568cdf | 1342 | for(o= 0; o< 10; o++) |
Armand | 1:a236c0568cdf | 1343 | { |
Armand | 1:a236c0568cdf | 1344 | for(i= 0; i < 4; i++) |
Armand | 1:a236c0568cdf | 1345 | { |
Armand | 1:a236c0568cdf | 1346 | lcd.SetTextColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1347 | |
Armand | 1:a236c0568cdf | 1348 | lcd.FillRect(Drawpointx = 33 + stepx, Drawpointy = 75 + stepy, btnsize, btnsize); |
Armand | 1:a236c0568cdf | 1349 | keypadstartX[i][o] = Drawpointx; |
Armand | 1:a236c0568cdf | 1350 | keypadstartY[i][o] = Drawpointy; |
Armand | 1:a236c0568cdf | 1351 | keypadendX[i][o] = Drawpointx + btnsize; |
Armand | 1:a236c0568cdf | 1352 | keypadendY[i][o] = Drawpointy + btnsize; |
Armand | 1:a236c0568cdf | 1353 | stepy += 38; |
Armand | 1:a236c0568cdf | 1354 | |
Armand | 1:a236c0568cdf | 1355 | if(Caps == 0 && Func == 0) |
Armand | 1:a236c0568cdf | 1356 | { |
Armand | 1:a236c0568cdf | 1357 | lcd.SetBackColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1358 | lcd.SetTextColor(LCD_COLOR_BLACK); |
Armand | 1:a236c0568cdf | 1359 | lcd.SetFont(&Font16); |
Armand | 1:a236c0568cdf | 1360 | sprintf((char*)text, "%c", keyboard1[i][o]); |
Armand | 1:a236c0568cdf | 1361 | lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1362 | } |
Armand | 1:a236c0568cdf | 1363 | else if(Caps == 1 && Func == 0) |
Armand | 1:a236c0568cdf | 1364 | { |
Armand | 1:a236c0568cdf | 1365 | lcd.SetBackColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1366 | lcd.SetTextColor(LCD_COLOR_BLACK); |
Armand | 1:a236c0568cdf | 1367 | lcd.SetFont(&Font16); |
Armand | 1:a236c0568cdf | 1368 | sprintf((char*)text, "%c", keyboard2[i][o]); |
Armand | 1:a236c0568cdf | 1369 | lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1370 | } |
Armand | 1:a236c0568cdf | 1371 | else if(Caps == 0 && Func == 1) |
Armand | 1:a236c0568cdf | 1372 | { |
Armand | 1:a236c0568cdf | 1373 | lcd.SetBackColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1374 | lcd.SetTextColor(LCD_COLOR_BLACK); |
Armand | 1:a236c0568cdf | 1375 | lcd.SetFont(&Font16); |
Armand | 1:a236c0568cdf | 1376 | sprintf((char*)text, "%c", keyboard3[i][o]); |
Armand | 1:a236c0568cdf | 1377 | lcd.DisplayStringAt(Drawpointx+ 13, Drawpointy+ 13, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1378 | } |
Armand | 1:a236c0568cdf | 1379 | |
Armand | 1:a236c0568cdf | 1380 | |
Armand | 1:a236c0568cdf | 1381 | if(stepy > 114) |
Armand | 1:a236c0568cdf | 1382 | { |
Armand | 1:a236c0568cdf | 1383 | stepy = 0; |
Armand | 1:a236c0568cdf | 1384 | } |
Armand | 1:a236c0568cdf | 1385 | } |
Armand | 1:a236c0568cdf | 1386 | |
Armand | 1:a236c0568cdf | 1387 | stepx += 38; |
Armand | 1:a236c0568cdf | 1388 | } |
Armand | 1:a236c0568cdf | 1389 | |
Armand | 1:a236c0568cdf | 1390 | lcd.SetTextColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1391 | lcd.FillRect(keypadstartX[3][2], keypadstartY[3][2] + 38, 225, btnsize); |
Armand | 1:a236c0568cdf | 1392 | lcd.FillRect(keypadstartX[3][0], keypadstartY[3][0] + 38, 73, btnsize); |
Armand | 1:a236c0568cdf | 1393 | lcd.FillRect(keypadstartX[3][8], keypadstartY[3][8] + 38, btnsize, btnsize); |
Armand | 1:a236c0568cdf | 1394 | lcd.FillRect(keypadstartX[3][9], keypadstartY[3][9] + 38, 73, btnsize); |
Armand | 1:a236c0568cdf | 1395 | lcd.FillRect(keypadstartX[0][9] + 38, keypadstartY[0][9], btnsize, 73); |
Armand | 1:a236c0568cdf | 1396 | lcd.FillRect(keypadstartX[2][9] + 38, keypadstartY[2][9], btnsize, 73); |
Armand | 1:a236c0568cdf | 1397 | |
Armand | 1:a236c0568cdf | 1398 | lcd.SetBackColor(LCD_COLOR_WHITE); |
Armand | 1:a236c0568cdf | 1399 | lcd.SetTextColor(LCD_COLOR_BLACK); |
Armand | 1:a236c0568cdf | 1400 | lcd.SetFont(&Font16); |
Armand | 1:a236c0568cdf | 1401 | |
Armand | 1:a236c0568cdf | 1402 | sprintf((char*)text, "<"); |
Armand | 1:a236c0568cdf | 1403 | lcd.DisplayStringAt(keypadstartX[0][9] + 50, keypadstartY[0][3] + 35, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1404 | lcd.SetFont(&Font12); |
Armand | 1:a236c0568cdf | 1405 | sprintf((char*)text, "E"); |
Armand | 1:a236c0568cdf | 1406 | lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 15, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1407 | sprintf((char*)text, "N"); |
Armand | 1:a236c0568cdf | 1408 | lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 25, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1409 | sprintf((char*)text, "T"); |
Armand | 1:a236c0568cdf | 1410 | lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 35, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1411 | sprintf((char*)text, "E"); |
Armand | 1:a236c0568cdf | 1412 | lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 45, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1413 | sprintf((char*)text, "R"); |
Armand | 1:a236c0568cdf | 1414 | lcd.DisplayStringAt(keypadstartX[2][9] + 50, keypadstartY[2][9] + 55, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1415 | sprintf((char*)text, "CAPS"); |
Armand | 1:a236c0568cdf | 1416 | lcd.DisplayStringAt(keypadstartX[3][0] + 20, keypadstartY[3][0] + 50, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1417 | sprintf((char*)text, "."); |
Armand | 1:a236c0568cdf | 1418 | lcd.DisplayStringAt(keypadstartX[3][8] + 16, keypadstartY[3][8] + 50, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1419 | sprintf((char*)text, "FUNC"); |
Armand | 1:a236c0568cdf | 1420 | lcd.DisplayStringAt(keypadstartX[3][9] + 20, keypadstartY[3][9] + 50, (uint8_t *)&text, LEFT_MODE); |
Armand | 1:a236c0568cdf | 1421 | |
Armand | 1:a236c0568cdf | 1422 | lcd.SetTextColor(Txtclr); |
Armand | 1:a236c0568cdf | 1423 | lcd.SetBackColor(Bckclr); |
Armand | 1:a236c0568cdf | 1424 | lcd.SetFont(FontSize); |
Armand | 1:a236c0568cdf | 1425 | } |