writer2latex.latex
Class TableFormatter

java.lang.Object
  extended by writer2latex.latex.ConverterHelper
      extended by writer2latex.latex.TableFormatter

public class TableFormatter
extends ConverterHelper

This class converts OOo table styles to LaTeX.

In OOo the table style is distributed on table, column and cell styles.

In LaTeX we have to rearrange this information slightly, so this class takes care of that.


Field Summary
 
Fields inherited from class writer2latex.latex.ConverterHelper
config, ofr, palette
 
Constructor Summary
TableFormatter(OfficeReader ofr, LaTeXConfig config, ConverterPalette palette, TableReader table, boolean bAllowPageBreak, boolean bIsInTable)
          Constructor: Create from a TableReader.
 
Method Summary
 void applyCellStyle(int nRow, int nCol, BeforeAfter ba, Context context)
          Get material to put before and after a table cell.
 void applyRowStyle(int nRow, BeforeAfter ba, Context context)
          Get material to put before a table row (background color)
 void applyTableStyle(BeforeAfter ba, BeforeAfter baAlign, boolean bInFloat)
          Create table environment based on table style.
 java.lang.String getInterrowMaterial(int nRow)
          Create interrow material
 boolean isColortbl()
          is this a colortbl?
 boolean isLongtable()
          is this a longtable?
 boolean isSimple()
          is this a simple table (lcr columns rather than p{})?
 boolean isSupertabular()
          is this a supertabular?
 boolean isTabulary()
          is this a tabulary?
 
Methods inherited from class writer2latex.latex.ConverterHelper
appendDeclarations
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TableFormatter

public TableFormatter(OfficeReader ofr,
                      LaTeXConfig config,
                      ConverterPalette palette,
                      TableReader table,
                      boolean bAllowPageBreak,
                      boolean bIsInTable)

Constructor: Create from a TableReader.

Method Detail

isLongtable

public boolean isLongtable()
is this a longtable?


isSupertabular

public boolean isSupertabular()
is this a supertabular?


isTabulary

public boolean isTabulary()
is this a tabulary?


isColortbl

public boolean isColortbl()
is this a colortbl?


isSimple

public boolean isSimple()
is this a simple table (lcr columns rather than p{})?


applyTableStyle

public void applyTableStyle(BeforeAfter ba,
                            BeforeAfter baAlign,
                            boolean bInFloat)

Create table environment based on table style.

Returns eg. "\begin{longtable}{m{2cm}|m{4cm}}", "\end{longtable}".

Parameters:
ba - the BeforeAfter to contain the table code
baAlign - the BeforeAfter to contain the alignment code, if it's separate
bInFloat - true if the table should be floating

getInterrowMaterial

public java.lang.String getInterrowMaterial(int nRow)

Create interrow material


applyRowStyle

public void applyRowStyle(int nRow,
                          BeforeAfter ba,
                          Context context)

Get material to put before a table row (background color)


applyCellStyle

public void applyCellStyle(int nRow,
                           int nCol,
                           BeforeAfter ba,
                           Context context)
Get material to put before and after a table cell. In case of columnspan or different borders this will contain a \multicolumn command.