//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QPaintEvent")]
    public class QPaintEvent : QEvent, IDisposable {
        protected QPaintEvent(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QPaintEvent), this);
        }
        public QPaintEvent(QRegion paintRegion) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QPaintEvent#", "QPaintEvent(const QRegion&)", typeof(void), typeof(QRegion), paintRegion);
        }
        public QPaintEvent(QRect paintRect) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QPaintEvent#", "QPaintEvent(const QRect&)", typeof(void), typeof(QRect), paintRect);
        }
        public QRect Rect() {
            return (QRect) interceptor.Invoke("rect", "rect() const", typeof(QRect));
        }
        public QRegion Region() {
            return (QRegion) interceptor.Invoke("region", "region() const", typeof(QRegion));
        }
        ~QPaintEvent() {
            interceptor.Invoke("~QPaintEvent", "~QPaintEvent()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QPaintEvent", "~QPaintEvent()", typeof(void));
        }
    }
}
