TQKeySequence Class Reference
The TQKeySequence class encapsulates a key sequence as used
by accelerators.
More...
#include <qkeysequence.h>
Inherits TQt.
List of all member functions.
Public Members
Related Functions
- TQDataStream & operator<< ( TQDataStream & s, const TQKeySequence & keysequence )
- TQDataStream & operator>> ( TQDataStream & s, TQKeySequence & keysequence )
Detailed Description
The TQKeySequence 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 TQString to
obtain a human readable translated version of the sequence.
Translations are done in the "TQAccel" context.
See also TQAccel and Miscellaneous Classes.
Member Function Documentation
TQKeySequence::TQKeySequence ()
Constructs an empty key sequence.
TQKeySequence::TQKeySequence ( const TQString & 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 "TQAccel" context (using
TQObject::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:
TQPopupMenu *file = new TQPopupMenu( this );
file->insertItem( tr("&Open..."), this, SLOT(open()),
TQKeySequence( 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.
TQKeySequence::TQKeySequence ( 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.
TQKeySequence::TQKeySequence ( 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.
TQKeySequence::TQKeySequence ( const TQKeySequence & keysequence )
Copy constructor. Makes a copy of keysequence.
TQKeySequence::~TQKeySequence ()
Destroys the key sequence.
uint TQKeySequence::count () const
Returns the number of keys in the key sequence.
The maximum is 4.
bool TQKeySequence::isEmpty () const
Returns TRUE if the key sequence is empty; otherwise returns
FALSE.
Matches the sequence with seq. Returns TQt::Identical if
successful, TQt::PartialMatch for matching but incomplete seq,
and TQt::NoMatch if the sequences have nothing in common.
Returns TQt::NoMatch if seq is shorter.
TQKeySequence::operator TQString () 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 TQObject::tr()) in the "TQAccel" scope. If the key
sequence has no keys, TQString::null is returned.
On Mac OS X, the string returned resembles the sequence that is shown in
the menubar.
TQKeySequence::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 TQKeySequence::operator!= ( const TQKeySequence & keysequence ) const
Returns TRUE if keysequence is not equal to this key sequence;
otherwise returns FALSE.
Assignment operator. Assigns keysequence to this
object.
bool TQKeySequence::operator== ( const TQKeySequence & keysequence ) const
Returns TRUE if keysequence is equal to this key
sequence; otherwise returns FALSE.
int TQKeySequence::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 Functions
Writes the key sequence keysequence to the stream s.
See also Format of the TQDataStream operators.
Reads a key sequence from the stream s into the key sequence keysequence.
See also Format of the TQDataStream operators.
This file is part of the TQt toolkit.
Copyright © 1995-2007
Trolltech. All Rights Reserved.