// This is the SIP interface definition for QAccel.
//
// Copyright (c) 2007
// 	Riverbank Computing Limited <info@riverbankcomputing.co.uk>
// 
// This file is part of PyQt.
// 
// This copy of PyQt is free software; you can redistribute it and/or modify it
// under the terms of the GNU General Public License as published by the Free
// Software Foundation; either version 2, or (at your option) any later
// version.
// 
// PyQt is supplied in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
// FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
// details.
// 
// You should have received a copy of the GNU General Public License along with
// PyQt; see the file LICENSE.  If not, write to the Free Software Foundation,
// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.


%ExportedDoc
<Sect2><Title>QAccel</Title>
<Para>
<Literal>QAccel</Literal> is fully implemented.
</Para>
</Sect2>
%End


class QAccel : QObject
{
%TypeHeaderCode
#include <qaccel.h>
%End

public:
	QAccel(QWidget * /TransferThis/,char * = 0);
%If (Qt_2_1_0 -)
	QAccel(QWidget *,QObject * /TransferThis/,char * = 0);
%End

	bool isEnabled();
	void setEnabled(bool);

	uint count();

%If (- Qt_3_0_0)
	int insertItem(int,int = -1);
%End
%If (Qt_3_0_0 -)
	int insertItem(const QKeySequence &,int = -1);
%End
	void removeItem(int);
	void clear();

%If (- Qt_3_0_0)
	int key(int);
	int findKey(int) const;
%End
%If (Qt_3_0_0 -)
	QKeySequence key(int);
	int findKey(const QKeySequence &) const;
%End

	bool isItemEnabled(int) const;
	void setItemEnabled(int,bool);

	bool connectItem(int,SIP_RXOBJ_CON,SIP_SLOT_CON(int));
	bool disconnectItem(int,SIP_RXOBJ_DIS,SIP_SLOT_DIS(int));

	void repairEventFilter();

%If (Qt_2_00 -)
	void setWhatsThis(int,const QString &);
	QString whatsThis(int) const;
	void setIgnoreWhatsThis(bool);
	bool ignoreWhatsThis() const;
%End

%If (Qt_2_00 - Qt_3_0_0)
	static int shortcutKey(const QString &);
	static QString keyToString(int);
	static int stringToKey(const QString &);
%End
%If (Qt_3_0_0 -)
	static QKeySequence shortcutKey(const QString &);
	static QString keyToString(QKeySequence);
	static QKeySequence stringToKey(const QString &);
%End

signals:
	void activated(int);
%If (Qt_3_1_0 -)
	void activatedAmbiguously(int);
%End

protected:
	bool eventFilter(QObject *,QEvent *);

private:
	QAccel(const QAccel &);
};
