Qt logo

QAccel Class Reference


The QAccel class handles keyboard accelerator keys. More...

#include <qaccel.h>

Inherits QObject.

List of all member functions.

Public Members

Signals

Protected Members


Detailed Description

The QAccel class handles keyboard accelerator keys.

A QAccel contains a list of accelerator items. Each accelerator item consists of an identifier and a keyboard code combined with modifiers (SHIFT, CTRL, ALT or ASCII_ACCEL).

For example, CTRL + Key_P could be a shortcut for printing a document. The key codes are listed in qkeycode.h.

When pressed, an accelerator key sends out the signal activated() with a number that identifies this particular accelerator item. Accelerator items can also be individually connected, so that two different keys will activate two different slots (see connectItem()).

A QAccel object handles key events to the top level window containing parent, and hence to any child widgets of that window. Note that the accelerator will be deleted only when the parent is deleted, and will consume relevant key events until then.

Example:

     QAccel *a = new QAccel( myWindow );        // create accels for myWindow
     a->connectItem( a->insertItem(Key_P+CTRL), // adds Ctrl+P accelerator
                     myWindow,                  // connected to myWindow's
                     SLOT(printDoc()) );        // printDoc() slot

See also: QKeyEvent, QWidget::keyPressEvent(), QMenuData::setAccel(), QButton::setAccel() and GUI Design Handbook: Keyboard Shortcuts,

Examples: application/application.cpp


Member Function Documentation

QAccel::QAccel ( QWidget * parent, const char * name=0 )

Creates a QAccel object with a parent widget and a name.

QAccel::~QAccel ()

Destroys the accelerator object.

void QAccel::activated ( int id ) [signal]

This signal is emitted when an accelerator key is pressed. id is a number that identifies this particular accelerator item.

void QAccel::clear ()

Removes all accelerator items.

bool QAccel::connectItem ( int id, const QObject * receiver, const char * member )

Connects an accelerator item to a slot/signal in another object.

Arguments:

    a->connectItem( 201, mainView, SLOT(quit()) );

See also: disconnectItem().

Examples: application/application.cpp

uint QAccel::count () const

Returns the number of accelerator items.

bool QAccel::disconnectItem ( int id, const QObject * receiver, const char * member )

Disconnects an accelerator item from a function in another object.

See also: connectItem().

bool QAccel::eventFilter ( QObject *, QEvent * e ) [virtual protected]

Processes accelerator events intended for the top level widget.

Reimplemented from QObject.

int QAccel::findKey ( int key ) const

Returns the identifier of the accelerator item with the key code key, or -1 if the item cannot be found.

int QAccel::insertItem ( int key, int id=-1 )

Inserts an accelerator item and returns the item's identifier.

Arguments:

If id is negative, then the item will be assigned a unique identifier.

    QAccel *a = new QAccel( myWindow );         // create accels for myWindow
    a->insertItem( Key_P + CTRL, 200 );         // Ctrl+P to print document
    a->insertItem( Key_X + ALT , 201 );         // Alt+X  to quit
    a->insertItem( ASCII_ACCEL + 'q', 202 );    // ASCII 'q' to quit
    a->insertItem( Key_D );                     // gets id 3
    a->insertItem( Key_P + CTRL + SHIFT );      // gets id 4

Examples: application/application.cpp

bool QAccel::isEnabled () const

Returns TRUE if the accelerator is enabled, or FALSE if it is disabled.

See also: setEnabled() and isItemEnabled().

bool QAccel::isItemEnabled ( int id ) const

Returns TRUE if the accelerator item with the identifier id is enabled. Returns FALSE if the item is disabled or cannot be found.

See also: setItemEnabled() and isEnabled().

int QAccel::key ( int id )

Returns the key code of the accelerator item with the identifier id, or zero if the id cannot be found.

void QAccel::removeItem ( int id )

Removes the accelerator item with the identifier id.

void QAccel::repairEventFilter ()

Make sure that the accelerator is watching the correct event filter. Used by QWidget::recreate().

void QAccel::setEnabled ( bool enable )

Enables the accelerator if enable is TRUE, or disables it if enable is FALSE.

Individual keys can also be enabled or disabled.

See also: isEnabled() and setItemEnabled().

void QAccel::setItemEnabled ( int id, bool enable )

Enables or disables an accelerator item.

Arguments:

See also: isItemEnabled() and isEnabled().


Search the documentation, FAQ, qt-interest archive and more (uses www.troll.no):


This file is part of the Qt toolkit, copyright © 1995-98 Troll Tech, all rights reserved.

It was generated from the following files:


Copyright İ 1998 Troll TechTrademarks
Qt version 1.42