Changeset 561 for trunk/src/gui/kernel/qkeysequence.cpp
- Timestamp:
- Feb 11, 2010, 11:19:06 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
-
Property svn:mergeinfo
set to (toggle deleted branches)
/branches/vendor/nokia/qt/4.6.1 merged eligible /branches/vendor/nokia/qt/current merged eligible /branches/vendor/trolltech/qt/current 3-149
-
Property svn:mergeinfo
set to (toggle deleted branches)
-
trunk/src/gui/kernel/qkeysequence.cpp
r2 r561 2 2 ** 3 3 ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). 4 ** Contact: Qt Software Information (qt-info@nokia.com) 4 ** All rights reserved. 5 ** Contact: Nokia Corporation (qt-info@nokia.com) 5 6 ** 6 7 ** This file is part of the QtGui module of the Qt Toolkit. … … 21 22 ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. 22 23 ** 23 ** In addition, as a special exception, Nokia gives you certain 24 ** additional rights. These rights are described in the Nokia Qt LGPL 25 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this 26 ** package. 24 ** In addition, as a special exception, Nokia gives you certain additional 25 ** rights. These rights are described in the Nokia Qt LGPL Exception 26 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. 27 27 ** 28 28 ** GNU General Public License Usage … … 34 34 ** met: http://www.gnu.org/copyleft/gpl.html. 35 35 ** 36 ** If you are unsure which license is appropriate for your use, please37 ** contact the sales department at qt-sales@nokia.com.36 ** If you have questions regarding the use of this file, please contact 37 ** Nokia at qt-info@nokia.com. 38 38 ** $QT_END_LICENSE$ 39 39 ** … … 106 106 static const MacSpecialKey * const MacSpecialKeyEntriesEnd = entries + NumEntries; 107 107 108 static QCharmacSymbolForQtKey(int key)108 QChar qt_macSymbolForQtKey(int key) 109 109 { 110 110 const MacSpecialKey *i = qBinaryFind(entries, MacSpecialKeyEntriesEnd, key); 111 111 if (i == MacSpecialKeyEntriesEnd) 112 112 return QChar(); 113 return QChar(i->macSymbol); 113 ushort macSymbol = i->macSymbol; 114 if (qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta) 115 && (macSymbol == kControlUnicode || macSymbol == kCommandUnicode)) { 116 if (macSymbol == kControlUnicode) 117 macSymbol = kCommandUnicode; 118 else 119 macSymbol = kControlUnicode; 120 } 121 122 return QChar(macSymbol); 114 123 } 115 124 116 125 static int qtkeyForMacSymbol(const QChar ch) 117 126 { 127 const ushort unicode = ch.unicode(); 118 128 for (int i = 0; i < NumEntries; ++i) { 119 129 const MacSpecialKey &entry = entries[i]; 120 if (entry.macSymbol == ch.unicode()) 121 return entry.key; 130 if (entry.macSymbol == unicode) { 131 int key = entry.key; 132 if (qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta) 133 && (unicode == kControlUnicode || unicode == kCommandUnicode)) { 134 if (unicode == kControlUnicode) 135 key = Qt::Key_Control; 136 else 137 key = Qt::Key_Meta; 138 } 139 return key; 140 } 122 141 } 123 142 return -1; … … 134 153 by shortcuts. 135 154 136 \ingroup misc137 155 \ingroup shared 138 \mainclass 156 139 157 140 158 In its most common form, a key sequence describes a combination of … … 208 226 209 227 \table 210 \header \i StandardKey \i Windows \i Mac OS X \i KDE \i GNOME 211 \row \i HelpContents \i F1 \i Ctrl+? \i F1 \i F1 212 \row \i WhatsThis \i Shift+F1 \i Shift+F1 \i Shift+F1 \i Shift+F1 213 \row \i Open \i Ctrl+O \i Ctrl+O \i Ctrl+O \i Ctrl+O 214 \row \i Close \i Ctrl+F4, Ctrl+W \i Ctrl+W, Ctrl+F4 \i Ctrl+W \i Ctrl+W 215 \row \i Save \i Ctrl+S \i Ctrl+S \i Ctrl+S \i Ctrl+S 216 \row \i SaveAs \i \i Ctrl+Shift+S \i \i Ctrl+Shift+S 217 \row \i New \i Ctrl+N \i Ctrl+N \i Ctrl+N \i Ctrl+N 218 \row \i Delete \i Del \i Del, Meta+D \i Del, Ctrl+D \i Del, Ctrl+D 219 \row \i Cut \i Ctrl+X, Shift+Del \i Ctrl+X \i Ctrl+X, F20, Shift+Del \i Ctrl+X, F20, Shift+Del 220 \row \i Copy \i Ctrl+C, Ctrl+Ins \i Ctrl+C \i Ctrl+C, F16, Ctrl+Ins \i Ctrl+C, F16, Ctrl+Ins 221 \row \i Paste \i Ctrl+V, Shift+Ins \i Ctrl+V \i Ctrl+V, F18, Shift+Ins \i Ctrl+V, F18, Shift+Ins 222 \row \i Undo \i Ctrl+Z, Alt+Backspace \i Ctrl+Z \i Ctrl+Z, F14 \i Ctrl+Z, F14 223 \row \i Redo \i Ctrl+Y, Shift+Ctrl+Z, Alt+Shift+Backspace \i Ctrl+Shift+Z, Ctrl+Y \i Ctrl+Shift+Z \i Ctrl+Shift+Z 224 \row \i Back \i Alt+Left, Backspace \i Ctrl+[ \i Alt+Left \i Alt+Left 225 \row \i Forward \i Alt+Right, Shift+Backspace \i Ctrl+] \i Alt+Right \i Alt+Right 226 \row \i Refresh \i F5 \i F5 \i F5 \i Ctrl+R, F5 227 \row \i ZoomIn \i Ctrl+Plus \i Ctrl+Plus \i Ctrl+Plus \i Ctrl+Plus 228 \row \i ZoomOut \i Ctrl+Minus \i Ctrl+Minus \i Ctrl+Minus \i Ctrl+Minus 229 \row \i Print \i Ctrl+P \i Ctrl+P \i Ctrl+P \i Ctrl+P 230 \row \i AddTab \i Ctrl+T \i Ctrl+T \i Ctrl+Shift+N, Ctrl+T \i Ctrl+T 231 \row \i NextChild \i Ctrl+Tab, Forward, Ctrl+F6 \i Ctrl+}, Forward, Ctrl+Tab \i Ctrl+Tab, Forward, Ctrl+Comma \i Ctrl+Tab, Forward 232 \row \i PreviousChild \i Ctrl+Shift+Tab, Back, Ctrl+Shift+F6 \i Ctrl+{, Back, Ctrl+Shift+Tab \i Ctrl+Shift+Tab, Back, Ctrl+Period \i Ctrl+Shift+Tab, Back 233 \row \i Find \i Ctrl+F \i Ctrl+F \i Ctrl+F \i Ctrl+F 234 \row \i FindNext \i F3, Ctrl+G \i Ctrl+G \i F3 \i Ctrl+G, F3 235 \row \i FindPrevious \i Shift+F3, Ctrl+Shift+G \i Ctrl+Shift+G \i Shift+F3 \i Ctrl+Shift+G, Shift+F3 236 \row \i Replace \i Ctrl+H \i (none) \i Ctrl+R \i Ctrl+H 237 \row \i SelectAll \i Ctrl+A \i Ctrl+A \i Ctrl+A \i Ctrl+A 238 \row \i Bold \i Ctrl+B \i Ctrl+B \i Ctrl+B \i Ctrl+B 239 \row \i Italic \i Ctrl+I \i Ctrl+I \i Ctrl+I \i Ctrl+I 240 \row \i Underline \i Ctrl+U \i Ctrl+U \i Ctrl+U \i Ctrl+U 241 \row \i MoveToNextChar \i Right \i Right \i Right \i Right 242 \row \i MoveToPreviousChar \i Left \i Left \i Left \i Left 243 \row \i MoveToNextWord \i Ctrl+Right \i Alt+Right \i Ctrl+Right \i Ctrl+Right 244 \row \i MoveToPreviousWord \i Ctrl+Left \i Alt+Left \i Ctrl+Left \i Ctrl+Left 245 \row \i MoveToNextLine \i Down \i Down \i Down \i Down 246 \row \i MoveToPreviousLine \i Up \i Up \i Up \i Up 247 \row \i MoveToNextPage \i PgDown \i PgDown, Alt+PgDown, Meta+Down, Meta+PgDown\i PgDown \i PgDown 248 \row \i MoveToPreviousPage \i PgUp \i PgUp, Alt+PgUp, Meta+Up, Meta+PgUp \i PgUp \i PgUp 249 \row \i MoveToStartOfLine \i Home \i Ctrl+Left, Meta+Left \i Home \i Home 250 \row \i MoveToEndOfLine \i End \i Ctrl+Right, Meta+Right \i End \i End 251 \row \i MoveToStartOfBlock \i (none) \i Alt+Up, Meta+A \i (none) \i (none) 252 \row \i MoveToEndOfBlock \i (none) \i Alt+Down, Meta+E \i (none) \i (none) 253 \row \i MoveToStartOfDocument\i Ctrl+Home \i Ctrl+Up, Home \i Ctrl+Home \i Ctrl+Home 254 \row \i MoveToEndOfDocument \i Ctrl+End \i Ctrl+Down, End \i Ctrl+End \i Ctrl+End 255 \row \i SelectNextChar \i Shift+Right \i Shift+Right \i Shift+Right \i Shift+Right 256 \row \i SelectPreviousChar \i Shift+Left \i Shift+Left \i Shift+Left \i Shift?left 257 \row \i SelectNextWord \i Ctrl+Shift+Right \i Alt+Shift+Right \i Ctrl+Shift+Right \i Ctrl+Shift+Right 258 \row \i SelectPreviousWord \i Ctrl+Shift+Left \i Alt+Shift+Left \i Ctrl+Shift+Left \i Ctrl+Shift+Left 259 \row \i SelectNextLine \i Shift+Down \i Shift+Down \i Shift+Down \i Shift+Down 260 \row \i SelectPreviousLine \i Shift+Up \i Shift+Up \i Shift+Up \i Shift+Up 261 \row \i SelectNextPage \i Shift+PgDown \i Shift+PgDown \i Shift+PgDown \i Shift+PgDown 262 \row \i SelectPreviousPage \i Shift+PgUp \i Shift+PgUp \i Shift+PgUp \i Shift+PgUp 263 \row \i SelectStartOfLine \i Shift+Home \i Ctrl+Shift+Left \i Shift+Home \i Shift+Home 264 \row \i SelectEndOfLine \i Shift+End \i Ctrl+Shift+Right \i Shift+End \i Shift+End 265 \row \i SelectStartOfBlock \i (none) \i Alt+Shift+Up \i (none) \i (none) 266 \row \i SelectEndOfBlock \i (none) \i Alt+Shift+Down \i (none) \i (none) 267 \row \i SelectStartOfDocument\i Ctrl+Shift+Home \i Ctrl+Shift+Up, Shift+Home \i Ctrl+Shift+Home\i Ctrl+Shift+Home 268 \row \i SelectEndOfDocument \i Ctrl+Shift+End \i Ctrl+Shift+Down, Shift+End \i Ctrl+Shift+End \i Ctrl+Shift+End 269 \row \i DeleteStartOfWord \i Ctrl+Backspace \i Alt+Backspace \i Ctrl+Backspace \i Ctrl+Backspace 270 \row \i DeleteEndOfWord \i Ctrl+Del \i (none) \i Ctrl+Del \i Ctrl+Del 271 \row \i DeleteEndOfLine \i (none) \i (none) \i Ctrl+K \i Ctrl+K 272 \row \i InsertParagraphSeparator \i Enter \i Enter \i Enter \i Enter 273 \row \i InsertLineSeparator \i Shift+Enter \i Meta+Enter \i Shift+Enter \i Shift+Enter 228 \header \i StandardKey \i Windows \i Mac OS X \i KDE \i GNOME \i S60 229 \row \i HelpContents \i F1 \i Ctrl+? \i F1 \i F1 \i F2 230 \row \i WhatsThis \i Shift+F1 \i Shift+F1 \i Shift+F1 \i Shift+F1 \i Shift+F1 231 \row \i Open \i Ctrl+O \i Ctrl+O \i Ctrl+O \i Ctrl+O \i (none) 232 \row \i Close \i Ctrl+F4, Ctrl+W \i Ctrl+W, Ctrl+F4 \i Ctrl+W \i Ctrl+W \i (none) 233 \row \i Save \i Ctrl+S \i Ctrl+S \i Ctrl+S \i Ctrl+S \i (none) 234 \row \i Quit \i \i Ctrl+Q \i Qtrl+Q \i Qtrl+Q \i (none) 235 \row \i SaveAs \i \i Ctrl+Shift+S \i \i Ctrl+Shift+S \i (none) 236 \row \i New \i Ctrl+N \i Ctrl+N \i Ctrl+N \i Ctrl+N \i (none) 237 \row \i Delete \i Del \i Del, Meta+D \i Del, Ctrl+D \i Del, Ctrl+D \i Del 238 \row \i Cut \i Ctrl+X, Shift+Del \i Ctrl+X \i Ctrl+X, F20, Shift+Del \i Ctrl+X, F20, Shift+Del \i Ctrl+X 239 \row \i Copy \i Ctrl+C, Ctrl+Ins \i Ctrl+C \i Ctrl+C, F16, Ctrl+Ins \i Ctrl+C, F16, Ctrl+Ins \i Ctrl+C 240 \row \i Paste \i Ctrl+V, Shift+Ins \i Ctrl+V \i Ctrl+V, F18, Shift+Ins \i Ctrl+V, F18, Shift+Ins \i Ctrl+V 241 \row \i Preferences \i \i Ctrl+, \i \i \i (none) 242 \row \i Undo \i Ctrl+Z, Alt+Backspace \i Ctrl+Z \i Ctrl+Z, F14 \i Ctrl+Z, F14 \i Ctrl+Z 243 \row \i Redo \i Ctrl+Y, Shift+Ctrl+Z, Alt+Shift+Backspace \i Ctrl+Shift+Z, Ctrl+Y \i Ctrl+Shift+Z \i Ctrl+Shift+Z \i (none) 244 \row \i Back \i Alt+Left, Backspace \i Ctrl+[ \i Alt+Left \i Alt+Left \i (none) 245 \row \i Forward \i Alt+Right, Shift+Backspace \i Ctrl+] \i Alt+Right \i Alt+Right \i (none) 246 \row \i Refresh \i F5 \i F5 \i F5 \i Ctrl+R, F5 \i (none) 247 \row \i ZoomIn \i Ctrl+Plus \i Ctrl+Plus \i Ctrl+Plus \i Ctrl+Plus \i (none) 248 \row \i ZoomOut \i Ctrl+Minus \i Ctrl+Minus \i Ctrl+Minus \i Ctrl+Minus \i (none) 249 \row \i Print \i Ctrl+P \i Ctrl+P \i Ctrl+P \i Ctrl+P \i (none) 250 \row \i AddTab \i Ctrl+T \i Ctrl+T \i Ctrl+Shift+N, Ctrl+T \i Ctrl+T \i (none) 251 \row \i NextChild \i Ctrl+Tab, Forward, Ctrl+F6 \i Ctrl+}, Forward, Ctrl+Tab \i Ctrl+Tab, Forward, Ctrl+Comma \i Ctrl+Tab, Forward \i (none) 252 \row \i PreviousChild \i Ctrl+Shift+Tab, Back, Ctrl+Shift+F6 \i Ctrl+{, Back, Ctrl+Shift+Tab \i Ctrl+Shift+Tab, Back, Ctrl+Period \i Ctrl+Shift+Tab, Back \i (none) 253 \row \i Find \i Ctrl+F \i Ctrl+F \i Ctrl+F \i Ctrl+F \i (none) 254 \row \i FindNext \i F3, Ctrl+G \i Ctrl+G \i F3 \i Ctrl+G, F3 \i (none) 255 \row \i FindPrevious \i Shift+F3, Ctrl+Shift+G \i Ctrl+Shift+G \i Shift+F3 \i Ctrl+Shift+G, Shift+F3 \i (none) 256 \row \i Replace \i Ctrl+H \i (none) \i Ctrl+R \i Ctrl+H \i (none) 257 \row \i SelectAll \i Ctrl+A \i Ctrl+A \i Ctrl+A \i Ctrl+A \i (none) 258 \row \i Bold \i Ctrl+B \i Ctrl+B \i Ctrl+B \i Ctrl+B \i (none) 259 \row \i Italic \i Ctrl+I \i Ctrl+I \i Ctrl+I \i Ctrl+I \i (none) 260 \row \i Underline \i Ctrl+U \i Ctrl+U \i Ctrl+U \i Ctrl+U \i (none) 261 \row \i MoveToNextChar \i Right \i Right \i Right \i Right \i Right 262 \row \i MoveToPreviousChar \i Left \i Left \i Left \i Left \i Left 263 \row \i MoveToNextWord \i Ctrl+Right \i Alt+Right \i Ctrl+Right \i Ctrl+Right \i Ctrl+Right 264 \row \i MoveToPreviousWord \i Ctrl+Left \i Alt+Left \i Ctrl+Left \i Ctrl+Left \i Ctrl+Left 265 \row \i MoveToNextLine \i Down \i Down \i Down \i Down \i Down 266 \row \i MoveToPreviousLine \i Up \i Up \i Up \i Up \i Up 267 \row \i MoveToNextPage \i PgDown \i PgDown, Alt+PgDown, Meta+Down, Meta+PgDown\i PgDown \i PgDown \i PgDown 268 \row \i MoveToPreviousPage \i PgUp \i PgUp, Alt+PgUp, Meta+Up, Meta+PgUp \i PgUp \i PgUp \i PgUp 269 \row \i MoveToStartOfLine \i Home \i Ctrl+Left, Meta+Left \i Home \i Home \i Home 270 \row \i MoveToEndOfLine \i End \i Ctrl+Right, Meta+Right \i End \i End \i End 271 \row \i MoveToStartOfBlock \i (none) \i Alt+Up, Meta+A \i (none) \i (none) \i (none) 272 \row \i MoveToEndOfBlock \i (none) \i Alt+Down, Meta+E \i (none) \i (none) \i (none) 273 \row \i MoveToStartOfDocument\i Ctrl+Home \i Ctrl+Up, Home \i Ctrl+Home \i Ctrl+Home \i Ctrl+Home 274 \row \i MoveToEndOfDocument \i Ctrl+End \i Ctrl+Down, End \i Ctrl+End \i Ctrl+End \i Ctrl+End 275 \row \i SelectNextChar \i Shift+Right \i Shift+Right \i Shift+Right \i Shift+Right \i Shift+Right 276 \row \i SelectPreviousChar \i Shift+Left \i Shift+Left \i Shift+Left \i Shift+Left \i Shift+Left 277 \row \i SelectNextWord \i Ctrl+Shift+Right \i Alt+Shift+Right \i Ctrl+Shift+Right \i Ctrl+Shift+Right \i Ctrl+Shift+Right 278 \row \i SelectPreviousWord \i Ctrl+Shift+Left \i Alt+Shift+Left \i Ctrl+Shift+Left \i Ctrl+Shift+Left \i Ctrl+Shift+Left 279 \row \i SelectNextLine \i Shift+Down \i Shift+Down \i Shift+Down \i Shift+Down \i Shift+Down 280 \row \i SelectPreviousLine \i Shift+Up \i Shift+Up \i Shift+Up \i Shift+Up \i Shift+Up 281 \row \i SelectNextPage \i Shift+PgDown \i Shift+PgDown \i Shift+PgDown \i Shift+PgDown \i Shift+PgDown 282 \row \i SelectPreviousPage \i Shift+PgUp \i Shift+PgUp \i Shift+PgUp \i Shift+PgUp \i Shift+PgUp 283 \row \i SelectStartOfLine \i Shift+Home \i Ctrl+Shift+Left \i Shift+Home \i Shift+Home \i Shift+Home 284 \row \i SelectEndOfLine \i Shift+End \i Ctrl+Shift+Right \i Shift+End \i Shift+End \i Shift+End 285 \row \i SelectStartOfBlock \i (none) \i Alt+Shift+Up, Meta+Shift+A \i (none) \i (none) \i (none) 286 \row \i SelectEndOfBlock \i (none) \i Alt+Shift+Down, Meta+Shift+E \i (none) \i (none) \i (none) 287 \row \i SelectStartOfDocument\i Ctrl+Shift+Home \i Ctrl+Shift+Up, Shift+Home \i Ctrl+Shift+Home\i Ctrl+Shift+Home \i Ctrl+Shift+Home 288 \row \i SelectEndOfDocument \i Ctrl+Shift+End \i Ctrl+Shift+Down, Shift+End \i Ctrl+Shift+End \i Ctrl+Shift+End \i Ctrl+Shift+End 289 \row \i DeleteStartOfWord \i Ctrl+Backspace \i Alt+Backspace \i Ctrl+Backspace \i Ctrl+Backspace \i (none) 290 \row \i DeleteEndOfWord \i Ctrl+Del \i (none) \i Ctrl+Del \i Ctrl+Del \i (none) 291 \row \i DeleteEndOfLine \i (none) \i (none) \i Ctrl+K \i Ctrl+K \i (none) 292 \row \i InsertParagraphSeparator \i Enter \i Enter \i Enter \i Enter \i (none) 293 \row \i InsertLineSeparator \i Shift+Enter \i Meta+Enter \i Shift+Enter \i Shift+Enter \i (none) 274 294 \endtable 275 295 … … 397 417 { Qt::Key_Help, QT_TRANSLATE_NOOP("QShortcut", "Help") }, 398 418 399 // Multimedia keys 400 { Qt::Key_Back, QT_TRANSLATE_NOOP("QShortcut", "Back") }, 401 { Qt::Key_Forward, QT_TRANSLATE_NOOP("QShortcut", "Forward") }, 402 { Qt::Key_Stop, QT_TRANSLATE_NOOP("QShortcut", "Stop") }, 403 { Qt::Key_Refresh, QT_TRANSLATE_NOOP("QShortcut", "Refresh") }, 404 { Qt::Key_VolumeDown, QT_TRANSLATE_NOOP("QShortcut", "Volume Down") }, 405 { Qt::Key_VolumeMute, QT_TRANSLATE_NOOP("QShortcut", "Volume Mute") }, 406 { Qt::Key_VolumeUp, QT_TRANSLATE_NOOP("QShortcut", "Volume Up") }, 407 { Qt::Key_BassBoost, QT_TRANSLATE_NOOP("QShortcut", "Bass Boost") }, 408 { Qt::Key_BassUp, QT_TRANSLATE_NOOP("QShortcut", "Bass Up") }, 409 { Qt::Key_BassDown, QT_TRANSLATE_NOOP("QShortcut", "Bass Down") }, 410 { Qt::Key_TrebleUp, QT_TRANSLATE_NOOP("QShortcut", "Treble Up") }, 411 { Qt::Key_TrebleDown, QT_TRANSLATE_NOOP("QShortcut", "Treble Down") }, 412 { Qt::Key_MediaPlay, QT_TRANSLATE_NOOP("QShortcut", "Media Play") }, 413 { Qt::Key_MediaStop, QT_TRANSLATE_NOOP("QShortcut", "Media Stop") }, 414 { Qt::Key_MediaPrevious,QT_TRANSLATE_NOOP("QShortcut", "Media Previous") }, 415 { Qt::Key_MediaNext, QT_TRANSLATE_NOOP("QShortcut", "Media Next") }, 416 { Qt::Key_MediaRecord, QT_TRANSLATE_NOOP("QShortcut", "Media Record") }, 417 { Qt::Key_HomePage, QT_TRANSLATE_NOOP("QShortcut", "Home Page") }, 418 { Qt::Key_Favorites, QT_TRANSLATE_NOOP("QShortcut", "Favorites") }, 419 { Qt::Key_Search, QT_TRANSLATE_NOOP("QShortcut", "Search") }, 420 { Qt::Key_Standby, QT_TRANSLATE_NOOP("QShortcut", "Standby") }, 421 { Qt::Key_OpenUrl, QT_TRANSLATE_NOOP("QShortcut", "Open URL") }, 422 { Qt::Key_LaunchMail, QT_TRANSLATE_NOOP("QShortcut", "Launch Mail") }, 423 { Qt::Key_LaunchMedia, QT_TRANSLATE_NOOP("QShortcut", "Launch Media") }, 424 { Qt::Key_Launch0, QT_TRANSLATE_NOOP("QShortcut", "Launch (0)") }, 425 { Qt::Key_Launch1, QT_TRANSLATE_NOOP("QShortcut", "Launch (1)") }, 426 { Qt::Key_Launch2, QT_TRANSLATE_NOOP("QShortcut", "Launch (2)") }, 427 { Qt::Key_Launch3, QT_TRANSLATE_NOOP("QShortcut", "Launch (3)") }, 428 { Qt::Key_Launch4, QT_TRANSLATE_NOOP("QShortcut", "Launch (4)") }, 429 { Qt::Key_Launch5, QT_TRANSLATE_NOOP("QShortcut", "Launch (5)") }, 430 { Qt::Key_Launch6, QT_TRANSLATE_NOOP("QShortcut", "Launch (6)") }, 431 { Qt::Key_Launch7, QT_TRANSLATE_NOOP("QShortcut", "Launch (7)") }, 432 { Qt::Key_Launch8, QT_TRANSLATE_NOOP("QShortcut", "Launch (8)") }, 433 { Qt::Key_Launch9, QT_TRANSLATE_NOOP("QShortcut", "Launch (9)") }, 434 { Qt::Key_LaunchA, QT_TRANSLATE_NOOP("QShortcut", "Launch (A)") }, 435 { Qt::Key_LaunchB, QT_TRANSLATE_NOOP("QShortcut", "Launch (B)") }, 436 { Qt::Key_LaunchC, QT_TRANSLATE_NOOP("QShortcut", "Launch (C)") }, 437 { Qt::Key_LaunchD, QT_TRANSLATE_NOOP("QShortcut", "Launch (D)") }, 438 { Qt::Key_LaunchE, QT_TRANSLATE_NOOP("QShortcut", "Launch (E)") }, 439 { Qt::Key_LaunchF, QT_TRANSLATE_NOOP("QShortcut", "Launch (F)") }, 419 // Special keys 420 // Includes multimedia, launcher, lan keys ( bluetooth, wireless ) 421 // window navigation 422 { Qt::Key_Back, QT_TRANSLATE_NOOP("QShortcut", "Back") }, 423 { Qt::Key_Forward, QT_TRANSLATE_NOOP("QShortcut", "Forward") }, 424 { Qt::Key_Stop, QT_TRANSLATE_NOOP("QShortcut", "Stop") }, 425 { Qt::Key_Refresh, QT_TRANSLATE_NOOP("QShortcut", "Refresh") }, 426 { Qt::Key_VolumeDown, QT_TRANSLATE_NOOP("QShortcut", "Volume Down") }, 427 { Qt::Key_VolumeMute, QT_TRANSLATE_NOOP("QShortcut", "Volume Mute") }, 428 { Qt::Key_VolumeUp, QT_TRANSLATE_NOOP("QShortcut", "Volume Up") }, 429 { Qt::Key_BassBoost, QT_TRANSLATE_NOOP("QShortcut", "Bass Boost") }, 430 { Qt::Key_BassUp, QT_TRANSLATE_NOOP("QShortcut", "Bass Up") }, 431 { Qt::Key_BassDown, QT_TRANSLATE_NOOP("QShortcut", "Bass Down") }, 432 { Qt::Key_TrebleUp, QT_TRANSLATE_NOOP("QShortcut", "Treble Up") }, 433 { Qt::Key_TrebleDown, QT_TRANSLATE_NOOP("QShortcut", "Treble Down") }, 434 { Qt::Key_MediaPlay, QT_TRANSLATE_NOOP("QShortcut", "Media Play") }, 435 { Qt::Key_MediaStop, QT_TRANSLATE_NOOP("QShortcut", "Media Stop") }, 436 { Qt::Key_MediaPrevious, QT_TRANSLATE_NOOP("QShortcut", "Media Previous") }, 437 { Qt::Key_MediaNext, QT_TRANSLATE_NOOP("QShortcut", "Media Next") }, 438 { Qt::Key_MediaRecord, QT_TRANSLATE_NOOP("QShortcut", "Media Record") }, 439 { Qt::Key_HomePage, QT_TRANSLATE_NOOP("QShortcut", "Home Page") }, 440 { Qt::Key_Favorites, QT_TRANSLATE_NOOP("QShortcut", "Favorites") }, 441 { Qt::Key_Search, QT_TRANSLATE_NOOP("QShortcut", "Search") }, 442 { Qt::Key_Standby, QT_TRANSLATE_NOOP("QShortcut", "Standby") }, 443 { Qt::Key_OpenUrl, QT_TRANSLATE_NOOP("QShortcut", "Open URL") }, 444 { Qt::Key_LaunchMail, QT_TRANSLATE_NOOP("QShortcut", "Launch Mail") }, 445 { Qt::Key_LaunchMedia, QT_TRANSLATE_NOOP("QShortcut", "Launch Media") }, 446 { Qt::Key_Launch0, QT_TRANSLATE_NOOP("QShortcut", "Launch (0)") }, 447 { Qt::Key_Launch1, QT_TRANSLATE_NOOP("QShortcut", "Launch (1)") }, 448 { Qt::Key_Launch2, QT_TRANSLATE_NOOP("QShortcut", "Launch (2)") }, 449 { Qt::Key_Launch3, QT_TRANSLATE_NOOP("QShortcut", "Launch (3)") }, 450 { Qt::Key_Launch4, QT_TRANSLATE_NOOP("QShortcut", "Launch (4)") }, 451 { Qt::Key_Launch5, QT_TRANSLATE_NOOP("QShortcut", "Launch (5)") }, 452 { Qt::Key_Launch6, QT_TRANSLATE_NOOP("QShortcut", "Launch (6)") }, 453 { Qt::Key_Launch7, QT_TRANSLATE_NOOP("QShortcut", "Launch (7)") }, 454 { Qt::Key_Launch8, QT_TRANSLATE_NOOP("QShortcut", "Launch (8)") }, 455 { Qt::Key_Launch9, QT_TRANSLATE_NOOP("QShortcut", "Launch (9)") }, 456 { Qt::Key_LaunchA, QT_TRANSLATE_NOOP("QShortcut", "Launch (A)") }, 457 { Qt::Key_LaunchB, QT_TRANSLATE_NOOP("QShortcut", "Launch (B)") }, 458 { Qt::Key_LaunchC, QT_TRANSLATE_NOOP("QShortcut", "Launch (C)") }, 459 { Qt::Key_LaunchD, QT_TRANSLATE_NOOP("QShortcut", "Launch (D)") }, 460 { Qt::Key_LaunchE, QT_TRANSLATE_NOOP("QShortcut", "Launch (E)") }, 461 { Qt::Key_LaunchF, QT_TRANSLATE_NOOP("QShortcut", "Launch (F)") }, 462 { Qt::Key_MonBrightnessUp, QT_TRANSLATE_NOOP("QShortcut", "Monitor Brightness Up") }, 463 { Qt::Key_MonBrightnessDown, QT_TRANSLATE_NOOP("QShortcut", "Monitor Brightness Down") }, 464 { Qt::Key_KeyboardLightOnOff, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Light On/Off") }, 465 { Qt::Key_KeyboardBrightnessUp, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Brightness Up") }, 466 { Qt::Key_KeyboardBrightnessDown, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Brightness Down") }, 467 { Qt::Key_PowerOff, QT_TRANSLATE_NOOP("QShortcut", "Power Off") }, 468 { Qt::Key_WakeUp, QT_TRANSLATE_NOOP("QShortcut", "Wake Up") }, 469 { Qt::Key_Eject, QT_TRANSLATE_NOOP("QShortcut", "Eject") }, 470 { Qt::Key_ScreenSaver, QT_TRANSLATE_NOOP("QShortcut", "Screensaver") }, 471 { Qt::Key_WWW, QT_TRANSLATE_NOOP("QShortcut", "WWW") }, 472 { Qt::Key_Sleep, QT_TRANSLATE_NOOP("QShortcut", "Sleep") }, 473 { Qt::Key_LightBulb, QT_TRANSLATE_NOOP("QShortcut", "LightBulb") }, 474 { Qt::Key_Shop, QT_TRANSLATE_NOOP("QShortcut", "Shop") }, 475 { Qt::Key_History, QT_TRANSLATE_NOOP("QShortcut", "History") }, 476 { Qt::Key_AddFavorite, QT_TRANSLATE_NOOP("QShortcut", "Add Favorite") }, 477 { Qt::Key_HotLinks, QT_TRANSLATE_NOOP("QShortcut", "Hot Links") }, 478 { Qt::Key_BrightnessAdjust, QT_TRANSLATE_NOOP("QShortcut", "Adjust Brightness") }, 479 { Qt::Key_Finance, QT_TRANSLATE_NOOP("QShortcut", "Finance") }, 480 { Qt::Key_Community, QT_TRANSLATE_NOOP("QShortcut", "Community") }, 481 { Qt::Key_AudioRewind, QT_TRANSLATE_NOOP("QShortcut", "Audio Rewind") }, 482 { Qt::Key_BackForward, QT_TRANSLATE_NOOP("QShortcut", "Back Forward") }, 483 { Qt::Key_ApplicationLeft, QT_TRANSLATE_NOOP("QShortcut", "Application Left") }, 484 { Qt::Key_ApplicationRight, QT_TRANSLATE_NOOP("QShortcut", "Application Right") }, 485 { Qt::Key_Book, QT_TRANSLATE_NOOP("QShortcut", "Book") }, 486 { Qt::Key_CD, QT_TRANSLATE_NOOP("QShortcut", "CD") }, 487 { Qt::Key_Calculator, QT_TRANSLATE_NOOP("QShortcut", "Calculator") }, 488 { Qt::Key_Clear, QT_TRANSLATE_NOOP("QShortcut", "Clear") }, 489 { Qt::Key_ClearGrab, QT_TRANSLATE_NOOP("QShortcut", "Clear Grab") }, 490 { Qt::Key_Close, QT_TRANSLATE_NOOP("QShortcut", "Close") }, 491 { Qt::Key_Copy, QT_TRANSLATE_NOOP("QShortcut", "Copy") }, 492 { Qt::Key_Cut, QT_TRANSLATE_NOOP("QShortcut", "Cut") }, 493 { Qt::Key_Display, QT_TRANSLATE_NOOP("QShortcut", "Display") }, 494 { Qt::Key_DOS, QT_TRANSLATE_NOOP("QShortcut", "DOS") }, 495 { Qt::Key_Documents, QT_TRANSLATE_NOOP("QShortcut", "Documents") }, 496 { Qt::Key_Excel, QT_TRANSLATE_NOOP("QShortcut", "Spreadsheet") }, 497 { Qt::Key_Explorer, QT_TRANSLATE_NOOP("QShortcut", "Browser") }, 498 { Qt::Key_Game, QT_TRANSLATE_NOOP("QShortcut", "Game") }, 499 { Qt::Key_Go, QT_TRANSLATE_NOOP("QShortcut", "Go") }, 500 { Qt::Key_iTouch, QT_TRANSLATE_NOOP("QShortcut", "iTouch") }, 501 { Qt::Key_LogOff, QT_TRANSLATE_NOOP("QShortcut", "Logoff") }, 502 { Qt::Key_Market, QT_TRANSLATE_NOOP("QShortcut", "Market") }, 503 { Qt::Key_Meeting, QT_TRANSLATE_NOOP("QShortcut", "Meeting") }, 504 { Qt::Key_MenuKB, QT_TRANSLATE_NOOP("QShortcut", "Keyboard Menu") }, 505 { Qt::Key_MenuPB, QT_TRANSLATE_NOOP("QShortcut", "Menu PB") }, 506 { Qt::Key_MySites, QT_TRANSLATE_NOOP("QShortcut", "My Sites") }, 507 { Qt::Key_News, QT_TRANSLATE_NOOP("QShortcut", "News") }, 508 { Qt::Key_OfficeHome, QT_TRANSLATE_NOOP("QShortcut", "Home Office") }, 509 { Qt::Key_Option, QT_TRANSLATE_NOOP("QShortcut", "Option") }, 510 { Qt::Key_Paste, QT_TRANSLATE_NOOP("QShortcut", "Paste") }, 511 { Qt::Key_Phone, QT_TRANSLATE_NOOP("QShortcut", "Phone") }, 512 { Qt::Key_Reply, QT_TRANSLATE_NOOP("QShortcut", "Reply") }, 513 { Qt::Key_Reload, QT_TRANSLATE_NOOP("QShortcut", "Reload") }, 514 { Qt::Key_RotateWindows, QT_TRANSLATE_NOOP("QShortcut", "Rotate Windows") }, 515 { Qt::Key_RotationPB, QT_TRANSLATE_NOOP("QShortcut", "Rotation PB") }, 516 { Qt::Key_RotationKB, QT_TRANSLATE_NOOP("QShortcut", "Rotation KB") }, 517 { Qt::Key_Save, QT_TRANSLATE_NOOP("QShortcut", "Save") }, 518 { Qt::Key_Send, QT_TRANSLATE_NOOP("QShortcut", "Send") }, 519 { Qt::Key_Spell, QT_TRANSLATE_NOOP("QShortcut", "Spellchecker") }, 520 { Qt::Key_SplitScreen, QT_TRANSLATE_NOOP("QShortcut", "Split Screen") }, 521 { Qt::Key_Support, QT_TRANSLATE_NOOP("QShortcut", "Support") }, 522 { Qt::Key_TaskPane, QT_TRANSLATE_NOOP("QShortcut", "Task Panel") }, 523 { Qt::Key_Terminal, QT_TRANSLATE_NOOP("QShortcut", "Terminal") }, 524 { Qt::Key_Tools, QT_TRANSLATE_NOOP("QShortcut", "Tools") }, 525 { Qt::Key_Travel, QT_TRANSLATE_NOOP("QShortcut", "Travel") }, 526 { Qt::Key_Video, QT_TRANSLATE_NOOP("QShortcut", "Video") }, 527 { Qt::Key_Word, QT_TRANSLATE_NOOP("QShortcut", "Word Processor") }, 528 { Qt::Key_Xfer, QT_TRANSLATE_NOOP("QShortcut", "XFer") }, 529 { Qt::Key_ZoomIn, QT_TRANSLATE_NOOP("QShortcut", "Zoom In") }, 530 { Qt::Key_ZoomOut, QT_TRANSLATE_NOOP("QShortcut", "Zoom Out") }, 531 { Qt::Key_Away, QT_TRANSLATE_NOOP("QShortcut", "Away") }, 532 { Qt::Key_Messenger, QT_TRANSLATE_NOOP("QShortcut", "Messenger") }, 533 { Qt::Key_WebCam, QT_TRANSLATE_NOOP("QShortcut", "WebCam") }, 534 { Qt::Key_MailForward, QT_TRANSLATE_NOOP("QShortcut", "Mail Forward") }, 535 { Qt::Key_Pictures, QT_TRANSLATE_NOOP("QShortcut", "Pictures") }, 536 { Qt::Key_Music, QT_TRANSLATE_NOOP("QShortcut", "Music") }, 537 { Qt::Key_Battery, QT_TRANSLATE_NOOP("QShortcut", "Battery") }, 538 { Qt::Key_Bluetooth, QT_TRANSLATE_NOOP("QShortcut", "Bluetooth") }, 539 { Qt::Key_WLAN, QT_TRANSLATE_NOOP("QShortcut", "Wireless") }, 540 { Qt::Key_UWB, QT_TRANSLATE_NOOP("QShortcut", "Ultra Wide Band") }, 541 { Qt::Key_AudioForward, QT_TRANSLATE_NOOP("QShortcut", "Audio Forward") }, 542 { Qt::Key_AudioRepeat, QT_TRANSLATE_NOOP("QShortcut", "Audio Repeat") }, 543 { Qt::Key_AudioRandomPlay, QT_TRANSLATE_NOOP("QShortcut", "Audio Random Play") }, 544 { Qt::Key_Subtitle, QT_TRANSLATE_NOOP("QShortcut", "Subtitle") }, 545 { Qt::Key_AudioCycleTrack, QT_TRANSLATE_NOOP("QShortcut", "Audio Cycle Track") }, 546 { Qt::Key_Time, QT_TRANSLATE_NOOP("QShortcut", "Time") }, 547 { Qt::Key_Select, QT_TRANSLATE_NOOP("QShortcut", "Select") }, 548 { Qt::Key_View, QT_TRANSLATE_NOOP("QShortcut", "View") }, 549 { Qt::Key_TopMenu, QT_TRANSLATE_NOOP("QShortcut", "Top Menu") }, 550 { Qt::Key_Suspend, QT_TRANSLATE_NOOP("QShortcut", "Suspend") }, 551 { Qt::Key_Hibernate, QT_TRANSLATE_NOOP("QShortcut", "Hibernate") }, 440 552 441 553 // -------------------------------------------------------------- … … 482 594 {QKeySequence::InsertParagraphSeparator,0, Qt::Key_Enter, QApplicationPrivate::KB_All}, 483 595 {QKeySequence::Delete, 1, Qt::Key_Delete, QApplicationPrivate::KB_All}, 484 {QKeySequence::MoveToStartOfLine, 0, Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },596 {QKeySequence::MoveToStartOfLine, 0, Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 485 597 {QKeySequence::MoveToStartOfDocument, 0, Qt::Key_Home, QApplicationPrivate::KB_Mac}, 486 {QKeySequence::MoveToEndOfLine, 0, Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },598 {QKeySequence::MoveToEndOfLine, 0, Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 487 599 {QKeySequence::MoveToEndOfDocument, 0, Qt::Key_End, QApplicationPrivate::KB_Mac}, 488 600 {QKeySequence::MoveToPreviousChar, 0, Qt::Key_Left, QApplicationPrivate::KB_All}, … … 493 605 {QKeySequence::MoveToNextPage, 1, Qt::Key_PageDown, QApplicationPrivate::KB_All}, 494 606 {QKeySequence::HelpContents, 0, Qt::Key_F1, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11}, 607 {QKeySequence::HelpContents, 0, Qt::Key_F2, QApplicationPrivate::KB_S60}, 495 608 {QKeySequence::FindNext, 0, Qt::Key_F3, QApplicationPrivate::KB_X11}, 496 609 {QKeySequence::FindNext, 1, Qt::Key_F3, QApplicationPrivate::KB_Win}, … … 503 616 {QKeySequence::NextChild, 0, Qt::Key_Forward, QApplicationPrivate::KB_All}, 504 617 {QKeySequence::Forward, 0, Qt::SHIFT | Qt::Key_Backspace, QApplicationPrivate::KB_Win}, 618 {QKeySequence::Delete, 0, Qt::SHIFT | Qt::Key_Backspace, QApplicationPrivate::KB_S60}, 505 619 {QKeySequence::InsertLineSeparator, 0, Qt::SHIFT | Qt::Key_Return, QApplicationPrivate::KB_All}, 506 620 {QKeySequence::InsertLineSeparator, 0, Qt::SHIFT | Qt::Key_Enter, QApplicationPrivate::KB_All}, 507 621 {QKeySequence::Paste, 0, Qt::SHIFT | Qt::Key_Insert, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11}, 508 622 {QKeySequence::Cut, 0, Qt::SHIFT | Qt::Key_Delete, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11}, //## Check if this should work on mac 509 {QKeySequence::SelectStartOfLine, 0, Qt::SHIFT | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },623 {QKeySequence::SelectStartOfLine, 0, Qt::SHIFT | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 510 624 {QKeySequence::SelectStartOfDocument, 0, Qt::SHIFT | Qt::Key_Home, QApplicationPrivate::KB_Mac}, 511 {QKeySequence::SelectEndOfLine, 0, Qt::SHIFT | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },625 {QKeySequence::SelectEndOfLine, 0, Qt::SHIFT | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 512 626 {QKeySequence::SelectEndOfDocument, 0, Qt::SHIFT | Qt::Key_End, QApplicationPrivate::KB_Mac}, 513 627 {QKeySequence::SelectPreviousChar, 0, Qt::SHIFT | Qt::Key_Left, QApplicationPrivate::KB_All}, … … 522 636 {QKeySequence::ZoomIn, 1, Qt::CTRL | Qt::Key_Plus, QApplicationPrivate::KB_All}, 523 637 {QKeySequence::NextChild, 0, Qt::CTRL | Qt::Key_Comma, QApplicationPrivate::KB_KDE}, 638 {QKeySequence::Preferences, 0, Qt::CTRL | Qt::Key_Comma, QApplicationPrivate::KB_Mac}, 524 639 {QKeySequence::ZoomOut, 1, Qt::CTRL | Qt::Key_Minus, QApplicationPrivate::KB_All}, 525 640 {QKeySequence::PreviousChild, 0, Qt::CTRL | Qt::Key_Period, QApplicationPrivate::KB_KDE}, … … 539 654 {QKeySequence::Open, 1, Qt::CTRL | Qt::Key_O, QApplicationPrivate::KB_All}, 540 655 {QKeySequence::Print, 1, Qt::CTRL | Qt::Key_P, QApplicationPrivate::KB_All}, 656 {QKeySequence::Quit, 0, Qt::CTRL | Qt::Key_Q, QApplicationPrivate::KB_Gnome | QApplicationPrivate::KB_KDE | QApplicationPrivate::KB_Mac}, 541 657 {QKeySequence::Refresh, 1, Qt::CTRL | Qt::Key_R, QApplicationPrivate::KB_Gnome | QApplicationPrivate::KB_Mac}, 542 658 {QKeySequence::Replace, 0, Qt::CTRL | Qt::Key_R, QApplicationPrivate::KB_KDE}, … … 548 664 {QKeySequence::Close, 1, Qt::CTRL | Qt::Key_W, QApplicationPrivate::KB_Mac}, 549 665 {QKeySequence::Cut, 1, Qt::CTRL | Qt::Key_X, QApplicationPrivate::KB_All}, 550 {QKeySequence::Redo, 1, Qt::CTRL | Qt::Key_Y, QApplicationPrivate::KB_Win },666 {QKeySequence::Redo, 1, Qt::CTRL | Qt::Key_Y, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_S60}, 551 667 {QKeySequence::Redo, 0, Qt::CTRL | Qt::Key_Y, QApplicationPrivate::KB_Mac},//different priority from above 552 668 {QKeySequence::Undo, 1, Qt::CTRL | Qt::Key_Z, QApplicationPrivate::KB_All}, … … 560 676 {QKeySequence::Copy, 0, Qt::CTRL | Qt::Key_Insert, QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_Win}, 561 677 {QKeySequence::DeleteEndOfWord, 0, Qt::CTRL | Qt::Key_Delete, QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_Win}, 562 {QKeySequence::MoveToStartOfDocument, 0, Qt::CTRL | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },563 {QKeySequence::MoveToEndOfDocument, 0, Qt::CTRL | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },678 {QKeySequence::MoveToStartOfDocument, 0, Qt::CTRL | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 679 {QKeySequence::MoveToEndOfDocument, 0, Qt::CTRL | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 564 680 {QKeySequence::Back, 0, Qt::CTRL | Qt::Key_Left, QApplicationPrivate::KB_Mac}, 565 {QKeySequence::MoveToPreviousWord, 0, Qt::CTRL | Qt::Key_Left, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },681 {QKeySequence::MoveToPreviousWord, 0, Qt::CTRL | Qt::Key_Left, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 566 682 {QKeySequence::MoveToStartOfLine, 0, Qt::CTRL | Qt::Key_Left, QApplicationPrivate::KB_Mac }, 567 683 {QKeySequence::MoveToStartOfDocument, 1, Qt::CTRL | Qt::Key_Up, QApplicationPrivate::KB_Mac}, 568 684 {QKeySequence::Forward, 0, Qt::CTRL | Qt::Key_Right, QApplicationPrivate::KB_Mac}, 569 685 {QKeySequence::MoveToEndOfLine, 0, Qt::CTRL | Qt::Key_Right, QApplicationPrivate::KB_Mac }, 570 {QKeySequence::MoveToNextWord, 0, Qt::CTRL | Qt::Key_Right, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },686 {QKeySequence::MoveToNextWord, 0, Qt::CTRL | Qt::Key_Right, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 571 687 {QKeySequence::MoveToEndOfDocument, 1, Qt::CTRL | Qt::Key_Down, QApplicationPrivate::KB_Mac}, 572 688 {QKeySequence::Close, 1, Qt::CTRL | Qt::Key_F4, QApplicationPrivate::KB_Win}, … … 577 693 {QKeySequence::AddTab, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_N, QApplicationPrivate::KB_KDE}, 578 694 {QKeySequence::SaveAs, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_S, QApplicationPrivate::KB_Gnome | QApplicationPrivate::KB_Mac}, 579 {QKeySequence::Redo, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Z, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },695 {QKeySequence::Redo, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Z, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 580 696 {QKeySequence::Redo, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Z, QApplicationPrivate::KB_Mac}, //different priority from above 581 697 {QKeySequence::PreviousChild, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Backtab, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11}, 582 698 {QKeySequence::PreviousChild, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Backtab, QApplicationPrivate::KB_Mac },//different priority from above 583 {QKeySequence::SelectStartOfDocument, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },584 {QKeySequence::SelectEndOfDocument, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },585 {QKeySequence::SelectPreviousWord, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Left, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },699 {QKeySequence::SelectStartOfDocument, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Home, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 700 {QKeySequence::SelectEndOfDocument, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_End, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 701 {QKeySequence::SelectPreviousWord, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Left, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 586 702 {QKeySequence::SelectStartOfLine, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Left, QApplicationPrivate::KB_Mac }, 587 703 {QKeySequence::SelectStartOfDocument, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Up, QApplicationPrivate::KB_Mac}, 588 {QKeySequence::SelectNextWord, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Right, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 },704 {QKeySequence::SelectNextWord, 0, Qt::CTRL | Qt::SHIFT | Qt::Key_Right, QApplicationPrivate::KB_Win | QApplicationPrivate::KB_X11 | QApplicationPrivate::KB_S60}, 589 705 {QKeySequence::SelectEndOfLine, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Right, QApplicationPrivate::KB_Mac }, 590 706 {QKeySequence::SelectEndOfDocument, 1, Qt::CTRL | Qt::SHIFT | Qt::Key_Down, QApplicationPrivate::KB_Mac}, … … 617 733 {QKeySequence::MoveToPreviousPage, 0, Qt::META | Qt::Key_PageUp, QApplicationPrivate::KB_Mac}, 618 734 {QKeySequence::MoveToNextPage, 0, Qt::META | Qt::Key_PageDown, QApplicationPrivate::KB_Mac}, 735 {QKeySequence::SelectStartOfBlock, 0, Qt::META | Qt::SHIFT | Qt::Key_A, QApplicationPrivate::KB_Mac}, 736 {QKeySequence::SelectEndOfBlock, 0, Qt::META | Qt::SHIFT | Qt::Key_E, QApplicationPrivate::KB_Mac}, 619 737 {QKeySequence::SelectStartOfLine, 0, Qt::META | Qt::SHIFT | Qt::Key_Left, QApplicationPrivate::KB_Mac}, 620 738 {QKeySequence::SelectEndOfLine, 0, Qt::META | Qt::SHIFT | Qt::Key_Right, QApplicationPrivate::KB_Mac} … … 630 748 This enum represent standard key bindings. They can be used to 631 749 assign platform dependent keyboard shortcuts to a QAction. 632 QKeyEvent also provides the function QKeyEvent::standardKey() to633 query if it matches an existing key binding.634 750 635 751 Note that the key bindings are platform dependent. The currently … … 672 788 \value Open Open document. 673 789 \value Paste Paste. 790 \value Preferences Open the preferences dialog. 674 791 \value PreviousChild Navigate to previous tab or child window. 675 792 \value Print Print document. 793 \value Quit Quit the application. 676 794 \value Redo Redo. 677 795 \value Refresh Refresh or reload current document. 678 796 \value Replace Find and replace. 679 \value SaveAs 797 \value SaveAs Save document after prompting the user for a file name. 680 798 \value Save Save document. 681 799 \value SelectAll Select all text. … … 729 847 QKeySequence::QKeySequence() 730 848 { 731 d = new QKeySequencePrivate(); 849 static QKeySequencePrivate shared_empty; 850 d = &shared_empty; 851 d->ref.ref(); 732 852 } 733 853 … … 783 903 } 784 904 905 #ifdef Q_WS_MAC 906 static inline int maybeSwapShortcut(int shortcut) 907 { 908 if (qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta)) { 909 uint oldshortcut = shortcut; 910 shortcut &= ~(Qt::CTRL | Qt::META); 911 if (oldshortcut & Qt::CTRL) 912 shortcut |= Qt::META; 913 if (oldshortcut & Qt::META) 914 shortcut |= Qt::CTRL; 915 } 916 return shortcut; 917 } 918 #endif 919 785 920 /*! 786 921 \since 4.2 … … 799 934 QKeyBinding keyBinding = QKeySequencePrivate::keyBindings[i]; 800 935 if (keyBinding.standardKey == key && (keyBinding.platform & platform)) { 801 if (keyBinding.priority > 0) 802 list.prepend(QKeySequence(QKeySequencePrivate::keyBindings[i].shortcut)); 803 else 804 list.append(QKeySequence(QKeySequencePrivate::keyBindings[i].shortcut)); 936 uint shortcut = 937 #ifdef Q_WS_MAC 938 maybeSwapShortcut(QKeySequencePrivate::keyBindings[i].shortcut); 939 #else 940 QKeySequencePrivate::keyBindings[i].shortcut; 941 #endif 942 if (keyBinding.priority > 0) 943 list.prepend(QKeySequence(shortcut)); 944 else 945 list.append(QKeySequence(shortcut)); 805 946 } 806 947 } … … 876 1017 QKeySequence QKeySequence::mnemonic(const QString &text) 877 1018 { 1019 QKeySequence ret; 1020 878 1021 if(qt_sequence_no_mnemonics) 879 return QKeySequence(); 880 1022 return ret; 1023 1024 bool found = false; 881 1025 int p = 0; 882 1026 while (p >= 0) { … … 887 1031 QChar c = text.at(p); 888 1032 if (c.isPrint()) { 889 c = c.toUpper(); 890 return QKeySequence(c.unicode() + Qt::ALT); 1033 if (!found) { 1034 c = c.toUpper(); 1035 ret = QKeySequence(c.unicode() + Qt::ALT); 1036 #ifdef QT_NO_DEBUG 1037 return ret; 1038 #else 1039 found = true; 1040 } else { 1041 qWarning("QKeySequence::mnemonic: \"%s\" contains multiple occurences of '&'", qPrintable(text)); 1042 #endif 1043 } 891 1044 } 892 1045 } 893 1046 p++; 894 1047 } 895 return QKeySequence();1048 return ret; 896 1049 } 897 1050 … … 970 1123 if (gmodifs->isEmpty()) { 971 1124 #ifdef Q_WS_MAC 972 *gmodifs << QModifKeyName(Qt::CTRL, QChar(kCommandUnicode)); 1125 const bool dontSwap = qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta); 1126 if (dontSwap) 1127 *gmodifs << QModifKeyName(Qt::META, QChar(kCommandUnicode)); 1128 else 1129 *gmodifs << QModifKeyName(Qt::CTRL, QChar(kCommandUnicode)); 973 1130 *gmodifs << QModifKeyName(Qt::ALT, QChar(kOptionUnicode)); 974 *gmodifs << QModifKeyName(Qt::META, QChar(kControlUnicode)); 1131 if (dontSwap) 1132 *gmodifs << QModifKeyName(Qt::CTRL, QChar(kControlUnicode)); 1133 else 1134 *gmodifs << QModifKeyName(Qt::META, QChar(kControlUnicode)); 975 1135 *gmodifs << QModifKeyName(Qt::SHIFT, QChar(kShiftUnicode)); 976 1136 #endif … … 1070 1230 break; 1071 1231 } 1072 #ifdef Q_WS_MAC1073 #endif1074 1232 } 1075 1233 return ret; … … 1100 1258 #if defined(Q_WS_MAC) 1101 1259 if (nativeText) { 1102 // On MAC the order is Meta, Alt, Shift, Control. 1103 if ((key & Qt::META) == Qt::META) 1104 s += macSymbolForQtKey(Qt::Key_Meta); 1105 if ((key & Qt::ALT) == Qt::ALT) 1106 s += macSymbolForQtKey(Qt::Key_Alt); 1107 if ((key & Qt::SHIFT) == Qt::SHIFT) 1108 s += macSymbolForQtKey(Qt::Key_Shift); 1109 if ((key & Qt::CTRL) == Qt::CTRL) 1110 s += macSymbolForQtKey(Qt::Key_Control); 1260 // On Mac OS X the order (by default) is Meta, Alt, Shift, Control. 1261 // If the AA_MacDontSwapCtrlAndMeta is enabled, then the order 1262 // is Ctrl, Alt, Shift, Meta. The macSymbolForQtKey does this swap 1263 // for us, which means that we have to adjust our order here. 1264 // The upshot is a lot more infrastructure to keep the number of 1265 // if tests down and the code relatively clean. 1266 static const int ModifierOrder[] = { Qt::META, Qt::ALT, Qt::SHIFT, Qt::CTRL, 0 }; 1267 static const int QtKeyOrder[] = { Qt::Key_Meta, Qt::Key_Alt, Qt::Key_Shift, Qt::Key_Control, 0 }; 1268 static const int DontSwapModifierOrder[] = { Qt::CTRL, Qt::ALT, Qt::SHIFT, Qt::META, 0 }; 1269 static const int DontSwapQtKeyOrder[] = { Qt::Key_Control, Qt::Key_Alt, Qt::Key_Shift, Qt::Key_Meta, 0 }; 1270 const int *modifierOrder; 1271 const int *qtkeyOrder; 1272 if (qApp->testAttribute(Qt::AA_MacDontSwapCtrlAndMeta)) { 1273 modifierOrder = DontSwapModifierOrder; 1274 qtkeyOrder = DontSwapQtKeyOrder; 1275 } else { 1276 modifierOrder = ModifierOrder; 1277 qtkeyOrder = QtKeyOrder; 1278 } 1279 1280 for (int i = 0; modifierOrder[i] != 0; ++i) { 1281 if (key & modifierOrder[i]) 1282 s += qt_macSymbolForQtKey(qtkeyOrder[i]); 1283 } 1111 1284 } else 1112 1285 #endif … … 1141 1314 #if defined(Q_WS_MAC) 1142 1315 if (nativeText) { 1143 QChar ch = macSymbolForQtKey(key);1316 QChar ch = qt_macSymbolForQtKey(key); 1144 1317 if (!ch.isNull()) 1145 1318 p = ch;
Note:
See TracChangeset
for help on using the changeset viewer.