//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QTextTable")]
    public class QTextTable : QTextFrame, IDisposable {
        protected QTextTable(Type dummy) : base((Type) null) {}
        protected new void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QTextTable), this);
        }
        private static SmokeInvocation staticInterceptor = null;
        static QTextTable() {
            staticInterceptor = new SmokeInvocation(typeof(QTextTable), null);
        }
        public QTextTable(QTextDocument doc) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QTextTable#", "QTextTable(QTextDocument*)", typeof(void), typeof(QTextDocument), doc);
        }
        public void Resize(int rows, int cols) {
            interceptor.Invoke("resize$$", "resize(int, int)", typeof(void), typeof(int), rows, typeof(int), cols);
        }
        public void InsertRows(int pos, int num) {
            interceptor.Invoke("insertRows$$", "insertRows(int, int)", typeof(void), typeof(int), pos, typeof(int), num);
        }
        public void InsertColumns(int pos, int num) {
            interceptor.Invoke("insertColumns$$", "insertColumns(int, int)", typeof(void), typeof(int), pos, typeof(int), num);
        }
        public void AppendRows(int count) {
            interceptor.Invoke("appendRows$", "appendRows(int)", typeof(void), typeof(int), count);
        }
        public void AppendColumns(int count) {
            interceptor.Invoke("appendColumns$", "appendColumns(int)", typeof(void), typeof(int), count);
        }
        public void RemoveRows(int pos, int num) {
            interceptor.Invoke("removeRows$$", "removeRows(int, int)", typeof(void), typeof(int), pos, typeof(int), num);
        }
        public void RemoveColumns(int pos, int num) {
            interceptor.Invoke("removeColumns$$", "removeColumns(int, int)", typeof(void), typeof(int), pos, typeof(int), num);
        }
        public void MergeCells(int row, int col, int numRows, int numCols) {
            interceptor.Invoke("mergeCells$$$$", "mergeCells(int, int, int, int)", typeof(void), typeof(int), row, typeof(int), col, typeof(int), numRows, typeof(int), numCols);
        }
        public void MergeCells(QTextCursor cursor) {
            interceptor.Invoke("mergeCells#", "mergeCells(const QTextCursor&)", typeof(void), typeof(QTextCursor), cursor);
        }
        public void SplitCell(int row, int col, int numRows, int numCols) {
            interceptor.Invoke("splitCell$$$$", "splitCell(int, int, int, int)", typeof(void), typeof(int), row, typeof(int), col, typeof(int), numRows, typeof(int), numCols);
        }
        public int Rows() {
            return (int) interceptor.Invoke("rows", "rows() const", typeof(int));
        }
        public int Columns() {
            return (int) interceptor.Invoke("columns", "columns() const", typeof(int));
        }
        public QTextTableCell CellAt(int row, int col) {
            return (QTextTableCell) interceptor.Invoke("cellAt$$", "cellAt(int, int) const", typeof(QTextTableCell), typeof(int), row, typeof(int), col);
        }
        public QTextTableCell CellAt(int position) {
            return (QTextTableCell) interceptor.Invoke("cellAt$", "cellAt(int) const", typeof(QTextTableCell), typeof(int), position);
        }
        public QTextTableCell CellAt(QTextCursor c) {
            return (QTextTableCell) interceptor.Invoke("cellAt#", "cellAt(const QTextCursor&) const", typeof(QTextTableCell), typeof(QTextCursor), c);
        }
        public QTextCursor RowStart(QTextCursor c) {
            return (QTextCursor) interceptor.Invoke("rowStart#", "rowStart(const QTextCursor&) const", typeof(QTextCursor), typeof(QTextCursor), c);
        }
        public QTextCursor RowEnd(QTextCursor c) {
            return (QTextCursor) interceptor.Invoke("rowEnd#", "rowEnd(const QTextCursor&) const", typeof(QTextCursor), typeof(QTextCursor), c);
        }
        public void SetFormat(QTextTableFormat format) {
            interceptor.Invoke("setFormat#", "setFormat(const QTextTableFormat&)", typeof(void), typeof(QTextTableFormat), format);
        }
        public new QTextTableFormat Format() {
            return (QTextTableFormat) interceptor.Invoke("format", "format() const", typeof(QTextTableFormat));
        }
        ~QTextTable() {
            interceptor.Invoke("~QTextTable", "~QTextTable()", typeof(void));
        }
        public new void Dispose() {
            interceptor.Invoke("~QTextTable", "~QTextTable()", 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 IQTextTableSignals Emit {
            get { return (IQTextTableSignals) Q_EMIT; }
        }
    }

    public interface IQTextTableSignals : IQTextFrameSignals {
    }
}
