44 #include <xcb/xcb_keysyms.h> 46 #include <X11/keysym.h> 48 #include <QtGui/QWindowSystemInterface> 49 #include <QtCore/QTextCodec> 53 #ifndef XK_ISO_Left_Tab 54 #define XK_ISO_Left_Tab 0xFE20 58 #define XK_dead_hook 0xFE61 62 #define XK_dead_horn 0xFE62 66 #define XK_Codeinput 0xFF37 69 #ifndef XK_Kanji_Bangou 70 #define XK_Kanji_Bangou 0xFF37 75 #define XK_KP_Home 0xFF95 78 #define XK_KP_Left 0xFF96 81 #define XK_KP_Up 0xFF97 84 #define XK_KP_Right 0xFF98 87 #define XK_KP_Down 0xFF99 90 #define XK_KP_Prior 0xFF9A 93 #define XK_KP_Next 0xFF9B 96 #define XK_KP_End 0xFF9C 99 #define XK_KP_Insert 0xFF9E 102 #define XK_KP_Delete 0xFF9F 107 #define XF86XK_MonBrightnessUp 0x1008FF02 108 #define XF86XK_MonBrightnessDown 0x1008FF03 109 #define XF86XK_KbdLightOnOff 0x1008FF04 110 #define XF86XK_KbdBrightnessUp 0x1008FF05 111 #define XF86XK_KbdBrightnessDown 0x1008FF06 112 #define XF86XK_Standby 0x1008FF10 113 #define XF86XK_AudioLowerVolume 0x1008FF11 114 #define XF86XK_AudioMute 0x1008FF12 115 #define XF86XK_AudioRaiseVolume 0x1008FF13 116 #define XF86XK_AudioPlay 0x1008FF14 117 #define XF86XK_AudioStop 0x1008FF15 118 #define XF86XK_AudioPrev 0x1008FF16 119 #define XF86XK_AudioNext 0x1008FF17 120 #define XF86XK_HomePage 0x1008FF18 121 #define XF86XK_Mail 0x1008FF19 122 #define XF86XK_Start 0x1008FF1A 123 #define XF86XK_Search 0x1008FF1B 124 #define XF86XK_AudioRecord 0x1008FF1C 125 #define XF86XK_Calculator 0x1008FF1D 126 #define XF86XK_Memo 0x1008FF1E 127 #define XF86XK_ToDoList 0x1008FF1F 128 #define XF86XK_Calendar 0x1008FF20 129 #define XF86XK_PowerDown 0x1008FF21 130 #define XF86XK_ContrastAdjust 0x1008FF22 131 #define XF86XK_Back 0x1008FF26 132 #define XF86XK_Forward 0x1008FF27 133 #define XF86XK_Stop 0x1008FF28 134 #define XF86XK_Refresh 0x1008FF29 135 #define XF86XK_PowerOff 0x1008FF2A 136 #define XF86XK_WakeUp 0x1008FF2B 137 #define XF86XK_Eject 0x1008FF2C 138 #define XF86XK_ScreenSaver 0x1008FF2D 139 #define XF86XK_WWW 0x1008FF2E 140 #define XF86XK_Sleep 0x1008FF2F 141 #define XF86XK_Favorites 0x1008FF30 142 #define XF86XK_AudioPause 0x1008FF31 143 #define XF86XK_AudioMedia 0x1008FF32 144 #define XF86XK_MyComputer 0x1008FF33 145 #define XF86XK_LightBulb 0x1008FF35 146 #define XF86XK_Shop 0x1008FF36 147 #define XF86XK_History 0x1008FF37 148 #define XF86XK_OpenURL 0x1008FF38 149 #define XF86XK_AddFavorite 0x1008FF39 150 #define XF86XK_HotLinks 0x1008FF3A 151 #define XF86XK_BrightnessAdjust 0x1008FF3B 152 #define XF86XK_Finance 0x1008FF3C 153 #define XF86XK_Community 0x1008FF3D 154 #define XF86XK_AudioRewind 0x1008FF3E 155 #define XF86XK_BackForward 0x1008FF3F 156 #define XF86XK_Launch0 0x1008FF40 157 #define XF86XK_Launch1 0x1008FF41 158 #define XF86XK_Launch2 0x1008FF42 159 #define XF86XK_Launch3 0x1008FF43 160 #define XF86XK_Launch4 0x1008FF44 161 #define XF86XK_Launch5 0x1008FF45 162 #define XF86XK_Launch6 0x1008FF46 163 #define XF86XK_Launch7 0x1008FF47 164 #define XF86XK_Launch8 0x1008FF48 165 #define XF86XK_Launch9 0x1008FF49 166 #define XF86XK_LaunchA 0x1008FF4A 167 #define XF86XK_LaunchB 0x1008FF4B 168 #define XF86XK_LaunchC 0x1008FF4C 169 #define XF86XK_LaunchD 0x1008FF4D 170 #define XF86XK_LaunchE 0x1008FF4E 171 #define XF86XK_LaunchF 0x1008FF4F 172 #define XF86XK_ApplicationLeft 0x1008FF50 173 #define XF86XK_ApplicationRight 0x1008FF51 174 #define XF86XK_Book 0x1008FF52 175 #define XF86XK_CD 0x1008FF53 176 #define XF86XK_Calculater 0x1008FF54 177 #define XF86XK_Clear 0x1008FF55 178 #define XF86XK_ClearGrab 0x1008FE21 179 #define XF86XK_Close 0x1008FF56 180 #define XF86XK_Copy 0x1008FF57 181 #define XF86XK_Cut 0x1008FF58 182 #define XF86XK_Display 0x1008FF59 183 #define XF86XK_DOS 0x1008FF5A 184 #define XF86XK_Documents 0x1008FF5B 185 #define XF86XK_Excel 0x1008FF5C 186 #define XF86XK_Explorer 0x1008FF5D 187 #define XF86XK_Game 0x1008FF5E 188 #define XF86XK_Go 0x1008FF5F 189 #define XF86XK_iTouch 0x1008FF60 190 #define XF86XK_LogOff 0x1008FF61 191 #define XF86XK_Market 0x1008FF62 192 #define XF86XK_Meeting 0x1008FF63 193 #define XF86XK_MenuKB 0x1008FF65 194 #define XF86XK_MenuPB 0x1008FF66 195 #define XF86XK_MySites 0x1008FF67 196 #define XF86XK_News 0x1008FF69 197 #define XF86XK_OfficeHome 0x1008FF6A 198 #define XF86XK_Option 0x1008FF6C 199 #define XF86XK_Paste 0x1008FF6D 200 #define XF86XK_Phone 0x1008FF6E 201 #define XF86XK_Reply 0x1008FF72 202 #define XF86XK_Reload 0x1008FF73 203 #define XF86XK_RotateWindows 0x1008FF74 204 #define XF86XK_RotationPB 0x1008FF75 205 #define XF86XK_RotationKB 0x1008FF76 206 #define XF86XK_Save 0x1008FF77 207 #define XF86XK_Send 0x1008FF7B 208 #define XF86XK_Spell 0x1008FF7C 209 #define XF86XK_SplitScreen 0x1008FF7D 210 #define XF86XK_Support 0x1008FF7E 211 #define XF86XK_TaskPane 0x1008FF7F 212 #define XF86XK_Terminal 0x1008FF80 213 #define XF86XK_Tools 0x1008FF81 214 #define XF86XK_Travel 0x1008FF82 215 #define XF86XK_Video 0x1008FF87 216 #define XF86XK_Word 0x1008FF89 217 #define XF86XK_Xfer 0x1008FF8A 218 #define XF86XK_ZoomIn 0x1008FF8B 219 #define XF86XK_ZoomOut 0x1008FF8C 220 #define XF86XK_Away 0x1008FF8D 221 #define XF86XK_Messenger 0x1008FF8E 222 #define XF86XK_WebCam 0x1008FF8F 223 #define XF86XK_MailForward 0x1008FF90 224 #define XF86XK_Pictures 0x1008FF91 225 #define XF86XK_Music 0x1008FF92 226 #define XF86XK_Battery 0x1008FF93 227 #define XF86XK_Bluetooth 0x1008FF94 228 #define XF86XK_WLAN 0x1008FF95 229 #define XF86XK_UWB 0x1008FF96 230 #define XF86XK_AudioForward 0x1008FF97 231 #define XF86XK_AudioRepeat 0x1008FF98 232 #define XF86XK_AudioRandomPlay 0x1008FF99 233 #define XF86XK_Subtitle 0x1008FF9A 234 #define XF86XK_AudioCycleTrack 0x1008FF9B 235 #define XF86XK_Time 0x1008FF9F 236 #define XF86XK_Select 0x1008FFA0 237 #define XF86XK_View 0x1008FFA1 238 #define XF86XK_TopMenu 0x1008FFA2 239 #define XF86XK_Suspend 0x1008FFA7 240 #define XF86XK_Hibernate 0x1008FFA8 246 #define QTOPIAXK_Select 0x11000601 247 #define QTOPIAXK_Yes 0x11000602 248 #define QTOPIAXK_No 0x11000603 249 #define QTOPIAXK_Cancel 0x11000604 250 #define QTOPIAXK_Printer 0x11000605 251 #define QTOPIAXK_Execute 0x11000606 252 #define QTOPIAXK_Sleep 0x11000607 253 #define QTOPIAXK_Play 0x11000608 254 #define QTOPIAXK_Zoom 0x11000609 255 #define QTOPIAXK_Context1 0x1100060A 256 #define QTOPIAXK_Context2 0x1100060B 257 #define QTOPIAXK_Context3 0x1100060C 258 #define QTOPIAXK_Context4 0x1100060D 259 #define QTOPIAXK_Call 0x1100060E 260 #define QTOPIAXK_Hangup 0x1100060F 261 #define QTOPIAXK_Flip 0x11000610 588 0x0000, 0x3002, 0x300C, 0x300D, 0x3001, 0x30FB, 0x30F2, 0x30A1,
589 0x30A3, 0x30A5, 0x30A7, 0x30A9, 0x30E3, 0x30E5, 0x30E7, 0x30C3,
590 0x30FC, 0x30A2, 0x30A4, 0x30A6, 0x30A8, 0x30AA, 0x30AB, 0x30AD,
591 0x30AF, 0x30B1, 0x30B3, 0x30B5, 0x30B7, 0x30B9, 0x30BB, 0x30BD,
592 0x30BF, 0x30C1, 0x30C4, 0x30C6, 0x30C8, 0x30CA, 0x30CB, 0x30CC,
593 0x30CD, 0x30CE, 0x30CF, 0x30D2, 0x30D5, 0x30D8, 0x30DB, 0x30DE,
594 0x30DF, 0x30E0, 0x30E1, 0x30E2, 0x30E4, 0x30E6, 0x30E8, 0x30E9,
595 0x30EA, 0x30EB, 0x30EC, 0x30ED, 0x30EF, 0x30F3, 0x309B, 0x309C
599 0x0000, 0x0452, 0x0453, 0x0451, 0x0454, 0x0455, 0x0456, 0x0457,
600 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x0000, 0x045e, 0x045f,
601 0x2116, 0x0402, 0x0403, 0x0401, 0x0404, 0x0405, 0x0406, 0x0407,
602 0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x0000, 0x040e, 0x040f,
603 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
604 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
605 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
606 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
607 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
608 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
609 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
610 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
614 0x0000, 0x0386, 0x0388, 0x0389, 0x038a, 0x03aa, 0x0000, 0x038c,
615 0x038e, 0x03ab, 0x0000, 0x038f, 0x0000, 0x0000, 0x0385, 0x2015,
616 0x0000, 0x03ac, 0x03ad, 0x03ae, 0x03af, 0x03ca, 0x0390, 0x03cc,
617 0x03cd, 0x03cb, 0x03b0, 0x03ce, 0x0000, 0x0000, 0x0000, 0x0000,
618 0x0000, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
619 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
620 0x03a0, 0x03a1, 0x03a3, 0x0000, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
621 0x03a8, 0x03a9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
622 0x0000, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
623 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
624 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
625 0x03c8, 0x03c9, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
629 0x0000, 0x23B7, 0x250C, 0x2500, 0x2320, 0x2321, 0x2502, 0x23A1,
630 0x23A3, 0x23A4, 0x23A6, 0x239B, 0x239D, 0x239E, 0x23A0, 0x23A8,
631 0x23AC, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
632 0x0000, 0x0000, 0x0000, 0x0000, 0x2264, 0x2260, 0x2265, 0x222B,
633 0x2234, 0x221D, 0x221E, 0x0000, 0x0000, 0x2207, 0x0000, 0x0000,
634 0x223C, 0x2243, 0x0000, 0x0000, 0x0000, 0x21D4, 0x21D2, 0x2261,
635 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x221A, 0x0000,
636 0x0000, 0x0000, 0x2282, 0x2283, 0x2229, 0x222A, 0x2227, 0x2228,
637 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
638 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2202,
639 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0192, 0x0000,
640 0x0000, 0x0000, 0x0000, 0x2190, 0x2191, 0x2192, 0x2193, 0x0000
644 0x25C6, 0x2592, 0x2409, 0x240C, 0x240D, 0x240A, 0x0000, 0x0000,
645 0x2424, 0x240B, 0x2518, 0x2510, 0x250C, 0x2514, 0x253C, 0x23BA,
646 0x23BB, 0x2500, 0x23BC, 0x23BD, 0x251C, 0x2524, 0x2534, 0x252C,
647 0x2502, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
651 0x0000, 0x2003, 0x2002, 0x2004, 0x2005, 0x2007, 0x2008, 0x2009,
652 0x200a, 0x2014, 0x2013, 0x0000, 0x0000, 0x0000, 0x2026, 0x2025,
653 0x2153, 0x2154, 0x2155, 0x2156, 0x2157, 0x2158, 0x2159, 0x215a,
654 0x2105, 0x0000, 0x0000, 0x2012, 0x2329, 0x0000, 0x232a, 0x0000,
655 0x0000, 0x0000, 0x0000, 0x215b, 0x215c, 0x215d, 0x215e, 0x0000,
656 0x0000, 0x2122, 0x2613, 0x0000, 0x25c1, 0x25b7, 0x25cb, 0x25af,
657 0x2018, 0x2019, 0x201c, 0x201d, 0x211e, 0x0000, 0x2032, 0x2033,
658 0x0000, 0x271d, 0x0000, 0x25ac, 0x25c0, 0x25b6, 0x25cf, 0x25ae,
659 0x25e6, 0x25ab, 0x25ad, 0x25b3, 0x25bd, 0x2606, 0x2022, 0x25aa,
660 0x25b2, 0x25bc, 0x261c, 0x261e, 0x2663, 0x2666, 0x2665, 0x0000,
661 0x2720, 0x2020, 0x2021, 0x2713, 0x2717, 0x266f, 0x266d, 0x2642,
662 0x2640, 0x260e, 0x2315, 0x2117, 0x2038, 0x201a, 0x201e, 0x0000
666 0x0000, 0x0000, 0x0000, 0x003c, 0x0000, 0x0000, 0x003e, 0x0000,
667 0x2228, 0x2227, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
668 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
669 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
670 0x00af, 0x0000, 0x22a5, 0x2229, 0x230a, 0x0000, 0x005f, 0x0000,
671 0x0000, 0x0000, 0x2218, 0x0000, 0x2395, 0x0000, 0x22a4, 0x25cb,
672 0x0000, 0x0000, 0x0000, 0x2308, 0x0000, 0x0000, 0x222a, 0x0000,
673 0x2283, 0x0000, 0x2282, 0x0000, 0x22a2, 0x0000, 0x0000, 0x0000,
674 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
675 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
676 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
677 0x0000, 0x0000, 0x0000, 0x0000, 0x22a3, 0x0000, 0x0000, 0x0000
681 0x0000, 0x3131, 0x3132, 0x3133, 0x3134, 0x3135, 0x3136, 0x3137,
682 0x3138, 0x3139, 0x313a, 0x313b, 0x313c, 0x313d, 0x313e, 0x313f,
683 0x3140, 0x3141, 0x3142, 0x3143, 0x3144, 0x3145, 0x3146, 0x3147,
684 0x3148, 0x3149, 0x314a, 0x314b, 0x314c, 0x314d, 0x314e, 0x314f,
685 0x3150, 0x3151, 0x3152, 0x3153, 0x3154, 0x3155, 0x3156, 0x3157,
686 0x3158, 0x3159, 0x315a, 0x315b, 0x315c, 0x315d, 0x315e, 0x315f,
687 0x3160, 0x3161, 0x3162, 0x3163, 0x11a8, 0x11a9, 0x11aa, 0x11ab,
688 0x11ac, 0x11ad, 0x11ae, 0x11af, 0x11b0, 0x11b1, 0x11b2, 0x11b3,
689 0x11b4, 0x11b5, 0x11b6, 0x11b7, 0x11b8, 0x11b9, 0x11ba, 0x11bb,
690 0x11bc, 0x11bd, 0x11be, 0x11bf, 0x11c0, 0x11c1, 0x11c2, 0x316d,
691 0x3171, 0x3178, 0x317f, 0x3181, 0x3184, 0x3186, 0x318d, 0x318e,
692 0x11eb, 0x11f0, 0x11f9, 0x0000, 0x0000, 0x0000, 0x0000, 0x20a9
700 if (byte4 > 0xa0 && byte4 < 0xe0)
702 else if (byte4 == 0x7e)
703 return QChar(0x203e);
748 Qt::KeyboardModifiers ret = 0;
749 if (s & XCB_MOD_MASK_SHIFT)
751 if (s & XCB_MOD_MASK_CONTROL)
783 int &code, Qt::KeyboardModifiers &modifiers,
791 if ( keysym < 0xff00) {
792 unsigned char byte3 = (
unsigned char)(keysym >> 8);
799 mib = byte3 + 4;
break;
816 #if !defined(QT_NO_XIM) 821 if (keysym >= 0x20a0 && keysym <= 0x20ac) {
824 converted = (
uint)keysym;
834 chars[0] = (
unsigned char) (keysym & 0xff);
837 }
else if (keysym >= 0x1000000 && keysym <= 0x100ffff) {
838 converted = (
ushort) (keysym - 0x1000000);
841 if (count < (
int)chars.
size()-1)
845 if (!mapper && converted.
unicode() != 0x0) {
868 if (keysym < 128 || (keysym < 256 && (!mapper || mapper->
mibEnum()==4))) {
870 code = isprint((
int)keysym) ? toupper((
int)keysym) : 0;
871 }
else if (keysym >= XK_F1 && keysym <= XK_F35) {
874 }
else if (keysym >= XK_KP_Space && keysym <= XK_KP_9) {
875 if (keysym >= XK_KP_0) {
877 code =
Qt::Key_0 + ((int)keysym - XK_KP_0);
918 int col = state & XCB_MOD_MASK_SHIFT ? 1 : 0;
920 const int altGrOffset = 4;
926 #ifdef XCB_KEYBOARD_DEBUG 927 printf(
"key code: %d, state: %d, syms: ", code, state);
928 for (
int i = 0; i <= 5; ++i) {
929 printf(
"%d ", xcb_key_symbols_get_keysym(
m_key_symbols, code, i));
936 xcb_keysym_t sym = xcb_key_symbols_get_keysym(
m_key_symbols, code, col);
937 if (sym == XCB_NO_SYMBOL)
938 sym = xcb_key_symbols_get_keysym(
m_key_symbols, code, col ^ 0x1);
940 if (state & XCB_MOD_MASK_LOCK && sym <= 0x7f && isprint(sym)) {
951 Qt::KeyboardModifiers modifiers;
972 xcb_refresh_keyboard_mapping(
m_key_symbols, const_cast<xcb_mapping_notify_event_t *>(event));
static QTextCodec * codecForLocale()
Returns a pointer to the codec most suitable for this locale.
#define XF86XK_MailForward
#define XF86XK_KbdBrightnessDown
#define XF86XK_AudioMedia
#define XF86XK_KbdLightOnOff
#define XF86XK_ScreenSaver
static const unsigned short katakanaKeysymsToUnicode[]
#define XF86XK_OfficeHome
QPointer< QWidget > widget
#define QTOPIAXK_Context1
char * data()
Returns a pointer to the data stored in the byte array.
#define XF86XK_MyComputer
ushort unicode() const
This is an overloaded member function, provided for convenience. It differs from the above function o...
#define XF86XK_RotateWindows
xcb_key_symbols_t * m_key_symbols
The QByteArray class provides an array of bytes.
int length() const
Returns the number of characters in this string.
xcb_connection_t * xcb_connection() const
#define QTOPIAXK_Context4
void handleMappingNotifyEvent(const xcb_mapping_notify_event_t *event)
#define XF86XK_ApplicationLeft
void handleKeyReleaseEvent(QWidget *widget, const xcb_key_release_event_t *event)
static const unsigned short koreanKeysymsToUnicode[]
#define XF86XK_Calculator
#define XF86XK_MonBrightnessUp
#define XF86XK_AudioRepeat
The QString class provides a Unicode character string.
#define XF86XK_BackForward
#define XF86XK_SplitScreen
The QChar class provides a 16-bit Unicode character.
static const unsigned short cyrillicKeysymsToUnicode[]
#define XF86XK_AudioRecord
QXcbConnection * connection() const
#define XF86XK_KbdBrightnessUp
#define XF86XK_MonBrightnessDown
static const unsigned short aplKeysymsToUnicode[]
const QChar * unicode() const
Returns a '\0'-terminated Unicode representation of the string.
bool isEmpty() const
Returns true if the string has no characters; otherwise returns false.
static const unsigned short publishingKeysymsToUnicode[]
#define XF86XK_ContrastAdjust
QXcbKeyboard(QXcbConnection *connection)
static const unsigned int KeyTbl[]
virtual int mibEnum() const =0
Subclasses of QTextCodec must reimplement this function.
#define XF86XK_AudioForward
QChar toUpper() const
Returns the uppercase equivalent if the character is lowercase or titlecase; otherwise returns the ch...
static QTextCodec * codecForMib(int mib)
Returns the QTextCodec which matches the MIBenum mib.
static void handleExtendedKeyEvent(QWidget *w, QEvent::Type type, int key, Qt::KeyboardModifiers modifiers, quint32 nativeScanCode, quint32 nativeVirtualKey, quint32 nativeModifiers, const QString &text=QString(), bool autorep=false, ushort count=1)
static const unsigned short technicalKeysymsToUnicode[]
#define XF86XK_ApplicationRight
#define XF86XK_AudioRandomPlay
QString toUnicode(const QByteArray &) const
Converts a from the encoding of this codec to Unicode, and returns the result in a QString...
#define XF86XK_RotationPB
#define QTOPIAXK_Context3
#define XF86XK_AudioCycleTrack
#define QTOPIAXK_Context2
Type
This enum type defines the valid event types in Qt.
#define XF86XK_AddFavorite
static QChar keysymToUnicode(unsigned char byte3, unsigned char byte4)
#define XF86XK_AudioRaiseVolume
static QString fromLatin1(const char *, int size=-1)
Returns a QString initialized with the first size characters of the Latin-1 string str...
void resize(int size)
Sets the size of the byte array to size bytes.
static const unsigned short greekKeysymsToUnicode[]
int size() const
Returns the number of bytes in this byte array.
Qt::KeyboardModifiers translateModifiers(int s)
#define XF86XK_AudioRewind
bool isEmpty() const
Returns true if the byte array has size 0; otherwise returns false.
#define XF86XK_RotationKB
#define XF86XK_AudioLowerVolume
#define XF86XK_Calculater
The QTextCodec class provides conversions between text encodings.
void handleKeyEvent(QWidget *widget, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time)
int translateKeySym(uint key) const
Q_CORE_EXPORT QTextStream & left(QTextStream &s)
void handleKeyPressEvent(QWidget *widget, const xcb_key_press_event_t *event)
static const unsigned short specialKeysymsToUnicode[]
#define XF86XK_BrightnessAdjust