//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QStyleOptionTabBarBase")]
    public class QStyleOptionTabBarBase : QStyleOption, IDisposable {
        protected QStyleOptionTabBarBase(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QStyleOptionTabBarBase), this);
        }
        public enum StyleOptionType {
            Type = QStyleOption.OptionType.SO_TabBarBase,
        }
        public enum StyleOptionVersion {
            Version = 1,
        }
        public QTabBar.Shape Shape {
            get { return (QTabBar.Shape) interceptor.Invoke("shape", "shape()", typeof(QTabBar.Shape)); }
            set { interceptor.Invoke("setShape$", "setShape(QTabBar::Shape)", typeof(void), typeof(QTabBar.Shape), value); }
        }
        public QRect TabBarRect {
            get { return (QRect) interceptor.Invoke("tabBarRect", "tabBarRect()", typeof(QRect)); }
            set { interceptor.Invoke("setTabBarRect#", "setTabBarRect(QRect)", typeof(void), typeof(QRect), value); }
        }
        public QRect SelectedTabRect {
            get { return (QRect) interceptor.Invoke("selectedTabRect", "selectedTabRect()", typeof(QRect)); }
            set { interceptor.Invoke("setSelectedTabRect#", "setSelectedTabRect(QRect)", typeof(void), typeof(QRect), value); }
        }
        public QStyleOptionTabBarBase() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QStyleOptionTabBarBase", "QStyleOptionTabBarBase()", typeof(void));
        }
        public QStyleOptionTabBarBase(QStyleOptionTabBarBase other) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QStyleOptionTabBarBase#", "QStyleOptionTabBarBase(const QStyleOptionTabBarBase&)", typeof(void), typeof(QStyleOptionTabBarBase), other);
        }
        public QStyleOptionTabBarBase(int version) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QStyleOptionTabBarBase$", "QStyleOptionTabBarBase(int)", typeof(void), typeof(int), version);
        }
        ~QStyleOptionTabBarBase() {
            interceptor.Invoke("~QStyleOptionTabBarBase", "~QStyleOptionTabBarBase()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QStyleOptionTabBarBase", "~QStyleOptionTabBarBase()", typeof(void));
        }
    }
}
