//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QGridLayout")]
    public class QGridLayout : QLayout, IDisposable {
        protected QGridLayout(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QGridLayout), this);
        }
        private static SmokeInvocation staticInterceptor = null;
        static QGridLayout() {
            staticInterceptor = new SmokeInvocation(typeof(QGridLayout), null);
        }
        [Q_PROPERTY("int", "horizontalSpacing")]
        public int HorizontalSpacing {
            get { return (int) interceptor.Invoke("horizontalSpacing", "horizontalSpacing()", typeof(int)); }
            set { interceptor.Invoke("setHorizontalSpacing$", "setHorizontalSpacing(int)", typeof(void), typeof(int), value); }
        }
        [Q_PROPERTY("int", "verticalSpacing")]
        public int VerticalSpacing {
            get { return (int) interceptor.Invoke("verticalSpacing", "verticalSpacing()", typeof(int)); }
            set { interceptor.Invoke("setVerticalSpacing$", "setVerticalSpacing(int)", typeof(void), typeof(int), value); }
        }
        public QGridLayout(QWidget parent) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGridLayout#", "QGridLayout(QWidget*)", typeof(void), typeof(QWidget), parent);
        }
        public QGridLayout() : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QGridLayout", "QGridLayout()", typeof(void));
        }
        [SmokeMethod("sizeHint() const")]
        public override QSize SizeHint() {
            return (QSize) interceptor.Invoke("sizeHint", "sizeHint() const", typeof(QSize));
        }
        [SmokeMethod("minimumSize() const")]
        public override QSize MinimumSize() {
            return (QSize) interceptor.Invoke("minimumSize", "minimumSize() const", typeof(QSize));
        }
        [SmokeMethod("maximumSize() const")]
        public override QSize MaximumSize() {
            return (QSize) interceptor.Invoke("maximumSize", "maximumSize() const", typeof(QSize));
        }
        public void SetRowStretch(int row, int stretch) {
            interceptor.Invoke("setRowStretch$$", "setRowStretch(int, int)", typeof(void), typeof(int), row, typeof(int), stretch);
        }
        public void SetColumnStretch(int column, int stretch) {
            interceptor.Invoke("setColumnStretch$$", "setColumnStretch(int, int)", typeof(void), typeof(int), column, typeof(int), stretch);
        }
        public int RowStretch(int row) {
            return (int) interceptor.Invoke("rowStretch$", "rowStretch(int) const", typeof(int), typeof(int), row);
        }
        public int ColumnStretch(int column) {
            return (int) interceptor.Invoke("columnStretch$", "columnStretch(int) const", typeof(int), typeof(int), column);
        }
        public void SetRowMinimumHeight(int row, int minSize) {
            interceptor.Invoke("setRowMinimumHeight$$", "setRowMinimumHeight(int, int)", typeof(void), typeof(int), row, typeof(int), minSize);
        }
        public void SetColumnMinimumWidth(int column, int minSize) {
            interceptor.Invoke("setColumnMinimumWidth$$", "setColumnMinimumWidth(int, int)", typeof(void), typeof(int), column, typeof(int), minSize);
        }
        public int RowMinimumHeight(int row) {
            return (int) interceptor.Invoke("rowMinimumHeight$", "rowMinimumHeight(int) const", typeof(int), typeof(int), row);
        }
        public int ColumnMinimumWidth(int column) {
            return (int) interceptor.Invoke("columnMinimumWidth$", "columnMinimumWidth(int) const", typeof(int), typeof(int), column);
        }
        public int ColumnCount() {
            return (int) interceptor.Invoke("columnCount", "columnCount() const", typeof(int));
        }
        public int RowCount() {
            return (int) interceptor.Invoke("rowCount", "rowCount() const", typeof(int));
        }
        public QRect CellRect(int row, int column) {
            return (QRect) interceptor.Invoke("cellRect$$", "cellRect(int, int) const", typeof(QRect), typeof(int), row, typeof(int), column);
        }
        [SmokeMethod("hasHeightForWidth() const")]
        public override bool HasHeightForWidth() {
            return (bool) interceptor.Invoke("hasHeightForWidth", "hasHeightForWidth() const", typeof(bool));
        }
        [SmokeMethod("heightForWidth(int) const")]
        public override int HeightForWidth(int arg1) {
            return (int) interceptor.Invoke("heightForWidth$", "heightForWidth(int) const", typeof(int), typeof(int), arg1);
        }
        [SmokeMethod("minimumHeightForWidth(int) const")]
        public override int MinimumHeightForWidth(int arg1) {
            return (int) interceptor.Invoke("minimumHeightForWidth$", "minimumHeightForWidth(int) const", typeof(int), typeof(int), arg1);
        }
        [SmokeMethod("expandingDirections() const")]
        public override uint ExpandingDirections() {
            return (uint) interceptor.Invoke("expandingDirections", "expandingDirections() const", typeof(uint));
        }
        [SmokeMethod("invalidate()")]
        public override void Invalidate() {
            interceptor.Invoke("invalidate", "invalidate()", typeof(void));
        }
        public new void AddWidget(QWidget w) {
            interceptor.Invoke("addWidget#", "addWidget(QWidget*)", typeof(void), typeof(QWidget), w);
        }
        public void AddWidget(QWidget arg1, int row, int column, uint arg4) {
            interceptor.Invoke("addWidget#$$$", "addWidget(QWidget*, int, int, Qt::Alignment)", typeof(void), typeof(QWidget), arg1, typeof(int), row, typeof(int), column, typeof(uint), arg4);
        }
        public void AddWidget(QWidget arg1, int row, int column) {
            interceptor.Invoke("addWidget#$$", "addWidget(QWidget*, int, int)", typeof(void), typeof(QWidget), arg1, typeof(int), row, typeof(int), column);
        }
        public void AddWidget(QWidget arg1, int row, int column, int rowSpan, int columnSpan, uint arg6) {
            interceptor.Invoke("addWidget#$$$$$", "addWidget(QWidget*, int, int, int, int, Qt::Alignment)", typeof(void), typeof(QWidget), arg1, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan, typeof(uint), arg6);
        }
        public void AddWidget(QWidget arg1, int row, int column, int rowSpan, int columnSpan) {
            interceptor.Invoke("addWidget#$$$$", "addWidget(QWidget*, int, int, int, int)", typeof(void), typeof(QWidget), arg1, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan);
        }
        public void AddLayout(QLayout arg1, int row, int column, uint arg4) {
            interceptor.Invoke("addLayout#$$$", "addLayout(QLayout*, int, int, Qt::Alignment)", typeof(void), typeof(QLayout), arg1, typeof(int), row, typeof(int), column, typeof(uint), arg4);
        }
        public void AddLayout(QLayout arg1, int row, int column) {
            interceptor.Invoke("addLayout#$$", "addLayout(QLayout*, int, int)", typeof(void), typeof(QLayout), arg1, typeof(int), row, typeof(int), column);
        }
        public void AddLayout(QLayout arg1, int row, int column, int rowSpan, int columnSpan, uint arg6) {
            interceptor.Invoke("addLayout#$$$$$", "addLayout(QLayout*, int, int, int, int, Qt::Alignment)", typeof(void), typeof(QLayout), arg1, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan, typeof(uint), arg6);
        }
        public void AddLayout(QLayout arg1, int row, int column, int rowSpan, int columnSpan) {
            interceptor.Invoke("addLayout#$$$$", "addLayout(QLayout*, int, int, int, int)", typeof(void), typeof(QLayout), arg1, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan);
        }
        public void SetOriginCorner(Qt.Corner arg1) {
            interceptor.Invoke("setOriginCorner$", "setOriginCorner(Qt::Corner)", typeof(void), typeof(Qt.Corner), arg1);
        }
        public Qt.Corner OriginCorner() {
            return (Qt.Corner) interceptor.Invoke("originCorner", "originCorner() const", typeof(Qt.Corner));
        }
        [SmokeMethod("itemAt(int) const")]
        public override IQLayoutItem ItemAt(int index) {
            return (IQLayoutItem) interceptor.Invoke("itemAt$", "itemAt(int) const", typeof(IQLayoutItem), typeof(int), index);
        }
        public IQLayoutItem ItemAtPosition(int row, int column) {
            return (IQLayoutItem) interceptor.Invoke("itemAtPosition$$", "itemAtPosition(int, int) const", typeof(IQLayoutItem), typeof(int), row, typeof(int), column);
        }
        [SmokeMethod("takeAt(int)")]
        public override IQLayoutItem TakeAt(int index) {
            return (IQLayoutItem) interceptor.Invoke("takeAt$", "takeAt(int)", typeof(IQLayoutItem), typeof(int), index);
        }
        [SmokeMethod("count() const")]
        public override int Count() {
            return (int) interceptor.Invoke("count", "count() const", typeof(int));
        }
        [SmokeMethod("setGeometry(const QRect&)")]
        public override void SetGeometry(QRect arg1) {
            interceptor.Invoke("setGeometry#", "setGeometry(const QRect&)", typeof(void), typeof(QRect), arg1);
        }
        public void AddItem(IQLayoutItem item, int row, int column, int rowSpan, int columnSpan, uint arg6) {
            interceptor.Invoke("addItem#$$$$$", "addItem(QLayoutItem*, int, int, int, int, Qt::Alignment)", typeof(void), typeof(IQLayoutItem), item, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan, typeof(uint), arg6);
        }
        public void AddItem(IQLayoutItem item, int row, int column, int rowSpan, int columnSpan) {
            interceptor.Invoke("addItem#$$$$", "addItem(QLayoutItem*, int, int, int, int)", typeof(void), typeof(IQLayoutItem), item, typeof(int), row, typeof(int), column, typeof(int), rowSpan, typeof(int), columnSpan);
        }
        public void AddItem(IQLayoutItem item, int row, int column, int rowSpan) {
            interceptor.Invoke("addItem#$$$", "addItem(QLayoutItem*, int, int, int)", typeof(void), typeof(IQLayoutItem), item, typeof(int), row, typeof(int), column, typeof(int), rowSpan);
        }
        public void AddItem(IQLayoutItem item, int row, int column) {
            interceptor.Invoke("addItem#$$", "addItem(QLayoutItem*, int, int)", typeof(void), typeof(IQLayoutItem), item, typeof(int), row, typeof(int), column);
        }
        public void SetDefaultPositioning(int n, Qt.Orientation orient) {
            interceptor.Invoke("setDefaultPositioning$$", "setDefaultPositioning(int, Qt::Orientation)", typeof(void), typeof(int), n, typeof(Qt.Orientation), orient);
        }
        public void GetItemPosition(int idx, ref int row, ref int column, ref int rowSpan, ref int columnSpan) {
            StackItem[] stack = new StackItem[6];
            stack[1].s_int = idx;
            stack[2].s_int = row;
            stack[3].s_int = column;
            stack[4].s_int = rowSpan;
            stack[5].s_int = columnSpan;
            interceptor.Invoke("getItemPosition$$$$$", "getItemPosition(int, int*, int*, int*, int*)", stack);
            row = stack[2].s_int;
            column = stack[3].s_int;
            rowSpan = stack[4].s_int;
            columnSpan = stack[5].s_int;
            return;
        }
        [SmokeMethod("addItem(QLayoutItem*)")]
        public override void AddItem(IQLayoutItem arg1) {
            interceptor.Invoke("addItem#", "addItem(QLayoutItem*)", typeof(void), typeof(IQLayoutItem), arg1);
        }
        ~QGridLayout() {
            interceptor.Invoke("~QGridLayout", "~QGridLayout()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QGridLayout", "~QGridLayout()", typeof(void));
        }
        public static new string Tr(string s, string c) {
            return (string) staticInterceptor.Invoke("tr$$", "tr(const char*, const char*)", typeof(string), typeof(string), s, typeof(string), c);
        }
        public static new string Tr(string s) {
            return (string) staticInterceptor.Invoke("tr$", "tr(const char*)", typeof(string), typeof(string), s);
        }
        protected new IQGridLayoutSignals Emit {
            get { return (IQGridLayoutSignals) Q_EMIT; }
        }
    }

    public interface IQGridLayoutSignals : IQLayoutSignals {
    }
}
