//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QGraphicsLineItem")]
    public class QGraphicsLineItem : QGraphicsItem, IDisposable {
        protected QGraphicsLineItem(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QGraphicsLineItem), this);
        }
        public new const int Type = 6;
        public QGraphicsLineItem(IQGraphicsItem parent, QGraphicsScene scene) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem##", "QGraphicsLineItem(QGraphicsItem*, QGraphicsScene*)", typeof(void), typeof(IQGraphicsItem), parent, typeof(QGraphicsScene), scene);
        }
        public QGraphicsLineItem(IQGraphicsItem parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem#", "QGraphicsLineItem(QGraphicsItem*)", typeof(void), typeof(IQGraphicsItem), parent);
        }
        public QGraphicsLineItem() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem", "QGraphicsLineItem()", typeof(void));
        }
        public QGraphicsLineItem(QLineF line, IQGraphicsItem parent, QGraphicsScene scene) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem###", "QGraphicsLineItem(const QLineF&, QGraphicsItem*, QGraphicsScene*)", typeof(void), typeof(QLineF), line, typeof(IQGraphicsItem), parent, typeof(QGraphicsScene), scene);
        }
        public QGraphicsLineItem(QLineF line, IQGraphicsItem parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem##", "QGraphicsLineItem(const QLineF&, QGraphicsItem*)", typeof(void), typeof(QLineF), line, typeof(IQGraphicsItem), parent);
        }
        public QGraphicsLineItem(QLineF line) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem#", "QGraphicsLineItem(const QLineF&)", typeof(void), typeof(QLineF), line);
        }
        public QGraphicsLineItem(double x1, double y1, double x2, double y2, IQGraphicsItem parent, QGraphicsScene scene) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem$$$$##", "QGraphicsLineItem(qreal, qreal, qreal, qreal, QGraphicsItem*, QGraphicsScene*)", typeof(void), typeof(double), x1, typeof(double), y1, typeof(double), x2, typeof(double), y2, typeof(IQGraphicsItem), parent, typeof(QGraphicsScene), scene);
        }
        public QGraphicsLineItem(double x1, double y1, double x2, double y2, IQGraphicsItem parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem$$$$#", "QGraphicsLineItem(qreal, qreal, qreal, qreal, QGraphicsItem*)", typeof(void), typeof(double), x1, typeof(double), y1, typeof(double), x2, typeof(double), y2, typeof(IQGraphicsItem), parent);
        }
        public QGraphicsLineItem(double x1, double y1, double x2, double y2) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGraphicsLineItem$$$$", "QGraphicsLineItem(qreal, qreal, qreal, qreal)", typeof(void), typeof(double), x1, typeof(double), y1, typeof(double), x2, typeof(double), y2);
        }
        public QPen Pen() {
            return (QPen) interceptor.Invoke("pen", "pen() const", typeof(QPen));
        }
        public void SetPen(QPen pen) {
            interceptor.Invoke("setPen#", "setPen(const QPen&)", typeof(void), typeof(QPen), pen);
        }
        public QLineF Line() {
            return (QLineF) interceptor.Invoke("line", "line() const", typeof(QLineF));
        }
        public void SetLine(QLineF line) {
            interceptor.Invoke("setLine#", "setLine(const QLineF&)", typeof(void), typeof(QLineF), line);
        }
        public void SetLine(double x1, double y1, double x2, double y2) {
            interceptor.Invoke("setLine$$$$", "setLine(qreal, qreal, qreal, qreal)", typeof(void), typeof(double), x1, typeof(double), y1, typeof(double), x2, typeof(double), y2);
        }
        [SmokeMethod("boundingRect() const")]
        public override QRectF BoundingRect() {
            return (QRectF) interceptor.Invoke("boundingRect", "boundingRect() const", typeof(QRectF));
        }
        [SmokeMethod("shape() const")]
        public override QPainterPath Shape() {
            return (QPainterPath) interceptor.Invoke("shape", "shape() const", typeof(QPainterPath));
        }
        [SmokeMethod("contains(const QPointF&) const")]
        public override bool Contains(QPointF point) {
            return (bool) interceptor.Invoke("contains#", "contains(const QPointF&) const", typeof(bool), typeof(QPointF), point);
        }
        [SmokeMethod("paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)")]
        public override void Paint(QPainter painter, QStyleOptionGraphicsItem option, QWidget widget) {
            interceptor.Invoke("paint###", "paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*)", typeof(void), typeof(QPainter), painter, typeof(QStyleOptionGraphicsItem), option, typeof(QWidget), widget);
        }
        [SmokeMethod("paint(QPainter*, const QStyleOptionGraphicsItem*)")]
        public virtual void Paint(QPainter painter, QStyleOptionGraphicsItem option) {
            interceptor.Invoke("paint##", "paint(QPainter*, const QStyleOptionGraphicsItem*)", typeof(void), typeof(QPainter), painter, typeof(QStyleOptionGraphicsItem), option);
        }
        [SmokeMethod("isObscuredBy(const QGraphicsItem*) const")]
        public override bool IsObscuredBy(IQGraphicsItem item) {
            return (bool) interceptor.Invoke("isObscuredBy#", "isObscuredBy(const QGraphicsItem*) const", typeof(bool), typeof(IQGraphicsItem), item);
        }
        [SmokeMethod("opaqueArea() const")]
        public override QPainterPath OpaqueArea() {
            return (QPainterPath) interceptor.Invoke("opaqueArea", "opaqueArea() const", typeof(QPainterPath));
        }
        [SmokeMethod("type() const")]
        public override int type() {
            return (int) interceptor.Invoke("type", "type() const", typeof(int));
        }
        [SmokeMethod("supportsExtension(QGraphicsItem::Extension) const")]
        protected override bool SupportsExtension(QGraphicsItem.Extension extension) {
            return (bool) interceptor.Invoke("supportsExtension$", "supportsExtension(QGraphicsItem::Extension) const", typeof(bool), typeof(QGraphicsItem.Extension), extension);
        }
        [SmokeMethod("setExtension(QGraphicsItem::Extension, const QVariant&)")]
        protected override void SetExtension(QGraphicsItem.Extension extension, QVariant variant) {
            interceptor.Invoke("setExtension$#", "setExtension(QGraphicsItem::Extension, const QVariant&)", typeof(void), typeof(QGraphicsItem.Extension), extension, typeof(QVariant), variant);
        }
        [SmokeMethod("extension(const QVariant&) const")]
        protected override QVariant extension(QVariant variant) {
            return (QVariant) interceptor.Invoke("extension#", "extension(const QVariant&) const", typeof(QVariant), typeof(QVariant), variant);
        }
        ~QGraphicsLineItem() {
            interceptor.Invoke("~QGraphicsLineItem", "~QGraphicsLineItem()", typeof(void));
        }
        public void Dispose() {
            interceptor.Invoke("~QGraphicsLineItem", "~QGraphicsLineItem()", typeof(void));
        }
    }
}
