// qcoreevent.sip generated by MetaSIP
//
// This file is part of the QtCore Python extension module.
//
// Copyright (c) 2016 Riverbank Computing Limited <info@riverbankcomputing.com>
// 
// This file is part of PyQt4.
// 
// This file may be used under the terms of the GNU General Public License
// version 3.0 as published by the Free Software Foundation and appearing in
// the file LICENSE included in the packaging of this file.  Please review the
// following information to ensure the GNU General Public License version 3.0
// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
// 
// If you do not wish to use this file under the terms of the GPL version 3.0
// then you may purchase a commercial license.  For more information contact
// info@riverbankcomputing.com.
// 
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


class QEvent /Supertype=sip.wrapper/
{
%TypeHeaderCode
#include <qcoreevent.h>
%End

%ConvertToSubClassCode
    switch (sipCpp->type())
    {
    case QEvent::Timer:
            sipType = sipType_QTimerEvent;
            break;
    
    case QEvent::ChildAdded:
    case QEvent::ChildPolished:
    case QEvent::ChildRemoved:
            sipType = sipType_QChildEvent;
            break;
    
    #if QT_VERSION >= 0x040200
    case QEvent::DynamicPropertyChange:
            sipType = sipType_QDynamicPropertyChangeEvent;
            break;
    #endif
    
    #if QT_VERSION >= 0x040600
    case QEvent::StateMachineSignal:
            sipType = sipType_QStateMachine_SignalEvent;
            break;
    
    case QEvent::StateMachineWrapped:
            sipType = sipType_QStateMachine_WrappedEvent;
            break;
    #endif
    
    default:
            sipType = 0;
    }
%End

public:
    enum Type
    {
        None /PyName=None_/,
        Timer,
        MouseButtonPress,
        MouseButtonRelease,
        MouseButtonDblClick,
        MouseMove,
        KeyPress,
        KeyRelease,
        FocusIn,
        FocusOut,
        Enter,
        Leave,
        Paint,
        Move,
        Resize,
        Show,
        Hide,
        Close,
        ParentChange,
        ParentAboutToChange,
        WindowActivate,
        WindowDeactivate,
        ShowToParent,
        HideToParent,
        Wheel,
        WindowTitleChange,
        WindowIconChange,
        ApplicationWindowIconChange,
        ApplicationFontChange,
        ApplicationLayoutDirectionChange,
        ApplicationPaletteChange,
        PaletteChange,
        Clipboard,
        MetaCall,
        SockAct,
        WinEventAct,
        DeferredDelete,
        DragEnter,
        DragMove,
        DragLeave,
        Drop,
        ChildAdded,
        ChildPolished,
        ChildRemoved,
        PolishRequest,
        Polish,
        LayoutRequest,
        UpdateRequest,
        UpdateLater,
        ContextMenu,
        InputMethod,
%If (- Qt_5_0_0)
        AccessibilityPrepare,
%End
        TabletMove,
        LocaleChange,
        LanguageChange,
        LayoutDirectionChange,
        TabletPress,
        TabletRelease,
        OkRequest,
        IconDrag,
        FontChange,
        EnabledChange,
        ActivationChange,
        StyleChange,
        IconTextChange,
        ModifiedChange,
        MouseTrackingChange,
        WindowBlocked,
        WindowUnblocked,
        WindowStateChange,
        ToolTip,
        WhatsThis,
        StatusTip,
        ActionChanged,
        ActionAdded,
        ActionRemoved,
        FileOpen,
        Shortcut,
        ShortcutOverride,
        WhatsThisClicked,
        ToolBarChange,
%If (Qt_4_3_0 -)
        ApplicationActivate,
%End
        ApplicationActivated,
%If (Qt_4_3_0 -)
        ApplicationDeactivate,
%End
        ApplicationDeactivated,
        QueryWhatsThis,
        EnterWhatsThisMode,
        LeaveWhatsThisMode,
        ZOrderChange,
        HoverEnter,
        HoverLeave,
        HoverMove,
%If (- Qt_5_0_0)
        AccessibilityHelp,
%End
%If (- Qt_5_0_0)
        AccessibilityDescription,
%End
%If (- Qt_5_0_0)
        MenubarUpdated,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneMouseMove,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneMousePress,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneMouseRelease,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneMouseDoubleClick,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneContextMenu,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneHoverEnter,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneHoverMove,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneHoverLeave,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneHelp,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneDragEnter,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneDragMove,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneDragLeave,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneDrop,
%End
%If (Qt_4_2_0 -)
        GraphicsSceneWheel,
%End
%If (Qt_4_4_0 -)
        GraphicsSceneResize,
%End
%If (Qt_4_4_0 -)
        GraphicsSceneMove,
%End
%If (Qt_4_2_0 -)
        KeyboardLayoutChange,
%End
%If (Qt_4_2_0 -)
        DynamicPropertyChange,
%End
%If (Qt_4_2_0 -)
        TabletEnterProximity,
%End
%If (Qt_4_2_0 -)
        TabletLeaveProximity,
%End
%If (Qt_4_3_0 -)
        NonClientAreaMouseMove,
%End
%If (Qt_4_3_0 -)
        NonClientAreaMouseButtonPress,
%End
%If (Qt_4_3_0 -)
        NonClientAreaMouseButtonRelease,
%End
%If (Qt_4_3_0 -)
        NonClientAreaMouseButtonDblClick,
%End
%If (Qt_4_3_0 -)
        MacSizeChange,
%End
%If (Qt_4_3_0 -)
        ContentsRectChange,
%End
%If (Qt_4_4_0 -)
        CursorChange,
%End
%If (Qt_4_4_0 -)
        ToolTipChange,
%End
%If (Qt_4_4_0 -)
        GrabMouse,
%End
%If (Qt_4_4_0 -)
        UngrabMouse,
%End
%If (Qt_4_4_0 -)
        GrabKeyboard,
%End
%If (Qt_4_4_0 -)
        UngrabKeyboard,
%End
%If (Qt_4_6_0 -)
        StateMachineSignal,
%End
%If (Qt_4_6_0 -)
        StateMachineWrapped,
%End
%If (Qt_4_6_0 -)
        TouchBegin,
%End
%If (Qt_4_6_0 -)
        TouchUpdate,
%End
%If (Qt_4_6_0 -)
        TouchEnd,
%End
%If (Qt_4_6_0 -)
        RequestSoftwareInputPanel,
%End
%If (Qt_4_6_0 -)
        CloseSoftwareInputPanel,
%End
%If (Qt_4_6_0 -)
        WinIdChange,
%End
%If (Qt_4_6_0 -)
        Gesture,
%End
%If (Qt_4_6_0 -)
        GestureOverride,
%End
%If (Qt_5_0_0 -)
        FocusAboutToChange,
%End
%If (Qt_5_0_0 -)
        ScrollPrepare,
%End
%If (Qt_5_0_0 -)
        Scroll,
%End
%If (Qt_5_0_0 -)
        Expose,
%End
%If (Qt_5_0_0 -)
        InputMethodQuery,
%End
%If (Qt_5_0_0 -)
        OrientationChange,
%End
%If (Qt_5_0_0 -)
        TouchCancel,
%End
%If (Qt_4_8_4 -)
        PlatformPanel,
%End
        User,
        MaxUser,
    };

%If (Qt_5_0_0 -)
    explicit QEvent(QEvent::Type type);
%End
%If (- Qt_5_0_0)
    QEvent(QEvent::Type type);
%End
%If (Qt_5_0_0 -)
    QEvent(const QEvent &other);
%End
    virtual ~QEvent();
    QEvent::Type type() const;
    bool spontaneous() const;
    void setAccepted(bool accepted);
    bool isAccepted() const;
    void accept();
    void ignore();
%If (Qt_4_4_0 -)
    static int registerEventType(int hint = -1);
%End
};

class QTimerEvent : QEvent
{
%TypeHeaderCode
#include <qcoreevent.h>
%End

public:
%If (Qt_5_0_0 -)
    explicit QTimerEvent(int timerId);
%End
%If (- Qt_5_0_0)
    QTimerEvent(int timerId);
%End
    virtual ~QTimerEvent();
    int timerId() const;
};

class QChildEvent : QEvent
{
%TypeHeaderCode
#include <qcoreevent.h>
%End

public:
    QChildEvent(QEvent::Type type, QObject *child);
    virtual ~QChildEvent();
    QObject *child() const;
    bool added() const;
    bool polished() const;
    bool removed() const;
};

%If (Qt_4_2_0 -)

class QDynamicPropertyChangeEvent : QEvent
{
%TypeHeaderCode
#include <qcoreevent.h>
%End

public:
%If (Qt_5_0_0 -)
    explicit QDynamicPropertyChangeEvent(const QByteArray &name);
%End
%If (- Qt_5_0_0)
    QDynamicPropertyChangeEvent(const QByteArray &name);
%End
    virtual ~QDynamicPropertyChangeEvent();
    QByteArray propertyName() const;
};

%End
