// C++ interface header file.
//
// Generated by SIP 3.7 (build 102) on Fri Jul 25 00:26:04 2003
//
// Copyright (c) 2003
// 	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.

#ifndef _qtQMenuBar_h
#define	_qtQMenuBar_h

#line 35 "sip/qmenubar.sip"
#include <qmenubar.h>
#line 30 "sipqtQMenuBar.h"

#include "sipqtQFrame.h"
#include "sipqtQMenuData.h"
#include "sipqtQWidget.h"
#include "sipqtQObject.h"
#include "sipqtQEvent.h"
#include "sipqtQSize.h"
#include "sipqtQPainter.h"
#include "sipqtQFont.h"
#include "sipqtQMouseEvent.h"
#include "sipqtQKeyEvent.h"
#include "sipqtQFocusEvent.h"
#include "sipqtQResizeEvent.h"
#include "sipqtQStyle.h"
#include "sipqtQPoint.h"
#include "sipqtQRect.h"
#include "sipqtQPopupMenu.h"


extern SIP_IMPORT sipLazyAttrDef sipClassAttrTab_QMenuBar;

extern SIP_IMPORT const void *sipCast_QMenuBar Py_PROTO((const void *,PyObject *));
extern SIP_IMPORT PyObject *sipNew_QMenuBar Py_PROTO((PyObject *,PyObject *));


class SIP_IMPORT sipQMenuBar : public QMenuBar
{
public:
	sipQMenuBar(QWidget *,const char *);
	~sipQMenuBar();
	void menuStateChanged();
	void menuContentsChanged();
	void activateItemAt(int);
	void setId(int,int);
	void updateItem(int);
	int resolution() const;
	void setResolution(int);
	void customEvent(QCustomEvent *);
	void childEvent(QChildEvent *);
	void timerEvent(QTimerEvent *);
	QVariant property(const char *) const;
	bool setProperty(const char *,const QVariant&);
	void removeChild(QObject *);
	void insertChild(QObject *);
	void setName(const char *);
	bool eventFilter(QObject *,QEvent *);
	bool event(QEvent *);
	void setMicroFocusHint(int,int,int,int,bool,QFont *);
	void setKeyCompression(bool);
	void setWFlags(unsigned);
	void setWState(unsigned);
	void destroy(bool,bool);
	void create(unsigned long,bool,bool);
	void styleChange(QStyle&);
	void updateMask();
	void hideEvent(QHideEvent *);
	void showEvent(QShowEvent *);
	void dropEvent(QDropEvent *);
	void dragLeaveEvent(QDragLeaveEvent *);
	void dragMoveEvent(QDragMoveEvent *);
	void dragEnterEvent(QDragEnterEvent *);
	void wheelEvent(QWheelEvent *);
	bool focusNextPrevChild(bool);
	void windowActivationChange(bool);
	void fontChange(const QFont&);
	void paletteChange(const QPalette&);
	void enabledChange(bool);
	void tabletEvent(QTabletEvent *);
	void imEndEvent(QIMEvent *);
	void imComposeEvent(QIMEvent *);
	void imStartEvent(QIMEvent *);
	void contextMenuEvent(QContextMenuEvent *);
	void closeEvent(QCloseEvent *);
	void resizeEvent(QResizeEvent *);
	void moveEvent(QMoveEvent *);
	void paintEvent(QPaintEvent *);
	void leaveEvent(QEvent *);
	void enterEvent(QEvent *);
	void focusOutEvent(QFocusEvent *);
	void focusInEvent(QFocusEvent *);
	void keyReleaseEvent(QKeyEvent *);
	void keyPressEvent(QKeyEvent *);
	void mouseMoveEvent(QMouseEvent *);
	void mouseDoubleClickEvent(QMouseEvent *);
	void mouseReleaseEvent(QMouseEvent *);
	void mousePressEvent(QMouseEvent *);
	void setGeometry(const QRect&);
	void polish();
	void showNormal();
	void showMaximized();
	void showMinimized();
	void setUpdatesEnabled(bool);
	void setFocus();
	void setMouseTracking(bool);
	void setIconText(const QString&);
	void setIcon(const QPixmap&);
	void setCaption(const QString&);
	void setGeometry(int,int,int,int);
	void resize(int,int);
	void move(int,int);
	void hide();
	void show();
	void setEnabled(bool);
	void adjustSize();
	void setBackgroundOrigin(QWidget::BackgroundOrigin);
	bool customWhatsThis() const;
	void setAutoMask(bool);
	void setAcceptDrops(bool);
	void reparent(QWidget *,unsigned,const QPoint&,bool);
	int heightForWidth(int) const;
	void setSizePolicy(QSizePolicy);
	QSizePolicy sizePolicy() const;
	QSize minimumSizeHint() const;
	bool close(bool);
	void setFocusProxy(QWidget *);
	void setFocusPolicy(QWidget::FocusPolicy);
	void setActiveWindow();
	void setMask(const QRegion&);
	void setMask(const QBitmap&);
	void unsetCursor();
	void setBackgroundMode(Qt::BackgroundMode);
	void setSizeIncrement(int,int);
	void setMaximumSize(int,int);
	void setMinimumSize(int,int);
	QSize sizeHint() const;
	void setCursor(const QCursor&);
	void setFont(const QFont&);
	void setPaletteBackgroundPixmap(const QPixmap&);
	void setPaletteBackgroundColor(const QColor&);
	void setPalette(const QPalette&);
	void setErasePixmap(const QPixmap&);
	void setEraseColor(const QColor&);
	void drawContents(QPainter *);
	void drawFrame(QPainter *);
	void setFrameRect(const QRect&);
	void setMidLineWidth(int);
	void setMargin(int);
	void setLineWidth(int);
	void setFrameStyle(int);
	void setSeparator(QMenuBar::Separator);
	static void sipVH_setSeparator(const sipMethodCache *,sipThisType *,QMenuBar::Separator);

	// There is a public member function for every protected member
	// function visible from this class.

	const QObject * sipProtect_sender();
	void sipProtect_timerEvent(QTimerEvent *);
	void sipProtect_childEvent(QChildEvent *);
	void sipProtect_customEvent(QCustomEvent *);
	bool sipProtect_event(QEvent *);
	void sipProtect_mouseDoubleClickEvent(QMouseEvent *);
	void sipProtect_keyReleaseEvent(QKeyEvent *);
	void sipProtect_enterEvent(QEvent *);
	void sipProtect_moveEvent(QMoveEvent *);
	void sipProtect_closeEvent(QCloseEvent *);
	void sipProtect_contextMenuEvent(QContextMenuEvent *);
	void sipProtect_imStartEvent(QIMEvent *);
	void sipProtect_imComposeEvent(QIMEvent *);
	void sipProtect_imEndEvent(QIMEvent *);
	void sipProtect_tabletEvent(QTabletEvent *);
	void sipProtect_enabledChange(bool);
	void sipProtect_paletteChange(const QPalette&);
	void sipProtect_windowActivationChange(bool);
	void sipProtect_resetInputContext();
	unsigned sipProtect_getWFlags();
	void sipProtect_clearWFlags(unsigned);
	bool sipProtect_focusNextPrevChild(bool);
	void sipProtect_wheelEvent(QWheelEvent *);
	void sipProtect_dragEnterEvent(QDragEnterEvent *);
	void sipProtect_dragMoveEvent(QDragMoveEvent *);
	void sipProtect_dragLeaveEvent(QDragLeaveEvent *);
	void sipProtect_dropEvent(QDropEvent *);
	void sipProtect_showEvent(QShowEvent *);
	void sipProtect_hideEvent(QHideEvent *);
	void sipProtect_updateMask();
	int sipProtect_metric(int);
	void sipProtect_create(unsigned long,bool,bool);
	void sipProtect_destroy(bool,bool);
	unsigned sipProtect_getWState();
	void sipProtect_setWState(unsigned);
	void sipProtect_clearWState(unsigned);
	void sipProtect_setWFlags(unsigned);
	void sipProtect_setKeyCompression(bool);
	void sipProtect_setMicroFocusHint(int,int,int,int,bool,QFont *);
	void sipProtect_paintEvent(QPaintEvent *);
	void sipProtect_drawFrame(QPainter *);
	void sipProtect_drawContents(QPainter *);
	void sipProtect_fontChange(const QFont&);
	void sipProtect_mousePressEvent(QMouseEvent *);
	void sipProtect_mouseReleaseEvent(QMouseEvent *);
	void sipProtect_mouseMoveEvent(QMouseEvent *);
	void sipProtect_keyPressEvent(QKeyEvent *);
	void sipProtect_focusInEvent(QFocusEvent *);
	void sipProtect_focusOutEvent(QFocusEvent *);
	void sipProtect_resizeEvent(QResizeEvent *);
	void sipProtect_leaveEvent(QEvent *);
	void sipProtect_menuContentsChanged();
	void sipProtect_menuStateChanged();
	void sipProtect_styleChange(QStyle&);
	int sipProtect_itemAtPos(const QPoint&);
	void sipProtect_hidePopups();
	QRect sipProtect_itemRect(int);

	// There is a public member function for every Qt signal that can be
	// emitted by this object.  This function is called by Python to emit
	// the signal.

	int sipEmit_destroyed(PyObject *sipArgs);
	int sipEmit_activated(PyObject *sipArgs);
	int sipEmit_highlighted(PyObject *sipArgs);

	sipThisType *sipPyThis;

private:
	sipQMenuBar(const sipQMenuBar &);
	sipQMenuBar &operator = (const sipQMenuBar &);

	sipMethodCache sipPyMethods[110];
};

extern SIP_IMPORT QMenuBar *sipForceConvertTo_QMenuBar Py_PROTO((PyObject *,int *));

#endif
