//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QGraphicsSceneContextMenuEvent")]
    public class QGraphicsSceneContextMenuEvent : QGraphicsSceneEvent, IDisposable {
        protected QGraphicsSceneContextMenuEvent(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QGraphicsSceneContextMenuEvent), this);
        }
        public enum Reason {
            Mouse = 0,
            Keyboard = 1,
            Other = 2,
        }
        public QGraphicsSceneContextMenuEvent(QEvent.TypeOf type) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsSceneContextMenuEvent$", "QGraphicsSceneContextMenuEvent(QEvent::Type)", typeof(void), typeof(QEvent.TypeOf), type);
        }
        public QGraphicsSceneContextMenuEvent() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsSceneContextMenuEvent", "QGraphicsSceneContextMenuEvent()", typeof(void));
        }
        public QPointF Pos() {
            return (QPointF) interceptor.Invoke("pos", "pos() const", typeof(QPointF));
        }
        public void SetPos(QPointF pos) {
            interceptor.Invoke("setPos#", "setPos(const QPointF&)", typeof(void), typeof(QPointF), pos);
        }
        public QPointF ScenePos() {
            return (QPointF) interceptor.Invoke("scenePos", "scenePos() const", typeof(QPointF));
        }
        public void SetScenePos(QPointF pos) {
            interceptor.Invoke("setScenePos#", "setScenePos(const QPointF&)", typeof(void), typeof(QPointF), pos);
        }
        public QPoint ScreenPos() {
            return (QPoint) interceptor.Invoke("screenPos", "screenPos() const", typeof(QPoint));
        }
        public void SetScreenPos(QPoint pos) {
            interceptor.Invoke("setScreenPos#", "setScreenPos(const QPoint&)", typeof(void), typeof(QPoint), pos);
        }
        public uint Modifiers() {
            return (uint) interceptor.Invoke("modifiers", "modifiers() const", typeof(uint));
        }
        public void SetModifiers(uint modifiers) {
            interceptor.Invoke("setModifiers$", "setModifiers(Qt::KeyboardModifiers)", typeof(void), typeof(uint), modifiers);
        }
        public QGraphicsSceneContextMenuEvent.Reason reason() {
            return (QGraphicsSceneContextMenuEvent.Reason) interceptor.Invoke("reason", "reason() const", typeof(QGraphicsSceneContextMenuEvent.Reason));
        }
        public void SetReason(QGraphicsSceneContextMenuEvent.Reason reason) {
            interceptor.Invoke("setReason$", "setReason(QGraphicsSceneContextMenuEvent::Reason)", typeof(void), typeof(QGraphicsSceneContextMenuEvent.Reason), reason);
        }
        ~QGraphicsSceneContextMenuEvent() {
            interceptor.Invoke("~QGraphicsSceneContextMenuEvent", "~QGraphicsSceneContextMenuEvent()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QGraphicsSceneContextMenuEvent", "~QGraphicsSceneContextMenuEvent()", typeof(void));
        }
    }
}
