QKeySequence
Section: Misc. Reference Manual Pages (3qt)
Updated: 2 February 2007
Index
Return to Main Contents
NAME
QKeySequence - Encapsulates a key sequence as used by accelerators
SYNOPSIS
#include <qkeysequence.h>
Inherits Qt.
Public Members
QKeySequence ()
QKeySequence ( const QString & key )
QKeySequence ( int key )
QKeySequence ( int k1, int k2, int k3 = 0, int k4 = 0 )
QKeySequence ( const QKeySequence & keysequence )
~QKeySequence ()
uint count () const
bool isEmpty () const
Qt::SequenceMatch matches ( const QKeySequence & seq ) const
operator QString () const
operator int () const (obsolete)
int operator[] ( uint index ) const
QKeySequence & operator= ( const QKeySequence & keysequence )
bool operator== ( const QKeySequence & keysequence ) const
bool operator!= ( const QKeySequence & keysequence ) const
RELATED FUNCTION DOCUMENTATION
QDataStream & operator<< ( QDataStream & s, const QKeySequence & keysequence )
QDataStream & operator>> ( QDataStream & s, QKeySequence & keysequence )
DESCRIPTION
The QKeySequence class encapsulates a key sequence as used by accelerators.
A key sequence consists of up to four keyboard codes, each optionally combined with modifiers, e.g. SHIFT, CTRL, ALT, META, or UNICODE_ACCEL. For example, CTRL + Key_P might be a sequence used as a shortcut for printing a document. The key codes are listed in qnamespace.h. As an alternative, use UNICODE_ACCEL with the unicode code point of the character. For example, UNICODE_ACCEL + 'A' gives the same key sequence as Key_A.
Key sequences can be constructed either from an integer key code, or from a human readable translatable string such as" Ctrl+X,Alt+Space". A key sequence can be cast to a QString to obtain a human readable translated version of the sequence. Translations are done in the "QAccel" context.
See also QAccel and Miscellaneous Classes.
MEMBER FUNCTION DOCUMENTATION
QKeySequence::QKeySequence ()
Constructs an empty key sequence.
QKeySequence::QKeySequence ( const QString & key )
Creates a key sequence from the string key. For example" Ctrl+O" gives CTRL+UNICODE_ACCEL+'O'. The strings "Ctrl"," Shift", "Alt" and "Meta" are recognized, as well as their translated equivalents in the "QAccel" context (using QObject::tr()).
Multiple key codes (up to four) may be entered by separating them with commas, e.g. "Alt+X,Ctrl+S,Q".
This contructor is typically used with tr(), so that accelerator keys can be replaced in translations:
QPopupMenu *file = new QPopupMenu( this );
file->insertItem( tr("&Open..."), this, SLOT(open()),
QKeySequence( tr("Ctrl+O", "File|Open") ) );
Note the "File|Open" translator comment. It is by no means necessary, but it provides some context for the human translator.
QKeySequence::QKeySequence ( int key )
Constructs a key sequence that has a single key.
The key codes are listed in qnamespace.h and can be combined with modifiers, e.g. with SHIFT, CTRL, ALT, META or UNICODE_ACCEL.
QKeySequence::QKeySequence ( int k1, int k2, int k3 = 0, int k4 = 0 )
Constructs a key sequence with up to 4 keys k1, k2, k3 and k4.
The key codes are listed in qnamespace.h and can be combined with modifiers, e.g. with SHIFT, CTRL, ALT, META or UNICODE_ACCEL.
QKeySequence::QKeySequence ( const QKeySequence & keysequence )
Copy constructor. Makes a copy of keysequence.
QKeySequence::~QKeySequence ()
Destroys the key sequence.
uint QKeySequence::count () const
Returns the number of keys in the key sequence. The maximum is 4.
bool QKeySequence::isEmpty () const
Returns TRUE if the key sequence is empty; otherwise returns FALSE.
Qt::SequenceMatch QKeySequence::matches ( const QKeySequence & seq ) const
Matches the sequence with seq. Returns Qt::Identical if successful, Qt::PartialMatch for matching but incomplete seq, and Qt::NoMatch if the sequences have nothing in common. Returns Qt::NoMatch if seq is shorter.
QKeySequence::operator QString () const
Creates an accelerator string for the key sequence. For instance CTRL+Key_O gives "Ctrl+O". If the key sequence has multiple key codes they are returned comma-separated, e.g." Alt+X, Ctrl+Y, Z". The strings, "Ctrl", "Shift", etc. are translated (using QObject::tr()) in the "QAccel" scope. If the key sequence has no keys, QString::null is returned.
On Mac OS X, the string returned resembles the sequence that is shown in the menubar.
QKeySequence::operator int () const
This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.
For backward compatibility: returns the first keycode as integer. If the key sequence is empty, 0 is returned.
bool QKeySequence::operator!= ( const QKeySequence & keysequence ) const
Returns TRUE if keysequence is not equal to this key sequence; otherwise returns FALSE.
QKeySequence & QKeySequence::operator= ( const QKeySequence & keysequence )
Assignment operator. Assigns keysequence to this object.
bool QKeySequence::operator== ( const QKeySequence & keysequence ) const
Returns TRUE if keysequence is equal to this key sequence; otherwise returns FALSE.
int QKeySequence::operator[] ( uint index ) const
Returns a reference to the element at position index in the key sequence. This can only be used to read an element.
RELATED FUNCTION DOCUMENTATION
QDataStream & operator<< ( QDataStream & s, const QKeySequence & keysequence )
Writes the key sequence keysequence to the stream s.
See also Format of the QDataStream operators.
QDataStream & operator>> ( QDataStream & s, QKeySequence & keysequence )
Reads a key sequence from the stream s into the key sequence keysequence.
See also Format of the QDataStream operators.
SEE ALSO
http://doc.trolltech.com/qkeysequence.html
http://www.trolltech.com/faq/tech.html
COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
AUTHOR
Generated automatically from the source code.
BUGS
If you find a bug in Qt, please report it as described in
http://doc.trolltech.com/bughowto.html.
Good bug reports help us to help you. Thank you.
The definitive Qt documentation is provided in HTML format; it is
located at $QTDIR/doc/html and can be read using Qt Assistant or with
a web browser. This man page is provided as a convenience for those
users who prefer man pages, although this format is not officially
supported by Trolltech.
If you find errors in this manual page, please report them to
qt-bugs@trolltech.com.
Please include the name of the manual page (qkeysequence.3qt) and the Qt
version (3.3.8).