package org.freehep.swing.print.table; /** Used to provide table data for printing */ public interface PrintableTableModel { /** Get the cell printer to be used for the table body * @return The cell printer for this column * @param column The column index */ CellPrinter getCellPrinter(int column); /** Get the cell printer to be used for the table header * @return The cell printer to use for this column's header * @param column The column index */ CellPrinter getHeaderPrinter(int column); /** Get the title for the document * @return The title. */ String getTitle(); /** Get the header for a column * @return The header text for this column * @param i The column index. */ Object headerForColumn(int i); /** Allows some columns to be skipped when printing * @return <CODE>true</CODE> if this column should be skipped * @param i The column index */ boolean hideColumn(int i); /** Total number of columns (including hidden columns) * @return The number of columns */ int numberOfColumns(); /** Total number of rows * @return The number of rows */ int numberOfRows(); /** Get the data to be printed in a certain cell. * @return The object representing the data at the referenced cell * @param i The column index * @param j The row index */ Object valueAt(int i, int j); }