Class StringTable

java.lang.Object
at.letto.tools.tex.StringTable

public class StringTable extends Object
Eine Tabelle welche aus lauter Strings besteht und dynamisch erweiterbar ist
Wird hautpsächlich verwendet, um eine Tabelle in Tex sinnvoll ausgeben zu können
Author:
damboeck
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    int
    Maximale Anzahl von Spalten welche zusätzlich zu den fixierten Spalten auf ein Blatt gedruckt werden sollen
    int
    Maximale Anzahl von Zeilen welche zusätzlich zu den fixierten Zeilen auf ein Blatt gedruckt werden sollen
    int
    Anzahl der Spalten auf der linken Seite, die auf jeder Seite gedruckt werden sollen
    int
    Anzahl der Spalten auf der rechten Seite, die auf jeder Seite gedruckt werden sollen
    int
    Anzahl der Zeilen am Tabellenfuss, die auf jeder Seite gedruckt werden sollen
    int
    Anzahl der Zeilen am Tabellenkopf, die auf jeder Seite gedruckt werden sollen
    private static final Pattern
     
    boolean
    Drucken des Tabellen-Gitters
    Kopfdefinition für eine Tex-Tabelle
    Tabelle als zweidimensionaler Vektor
    tab.get(zeile).get(spalte)
    Definition des Zeilenendes für die Zeilen
  • Constructor Summary

    Constructors
    Constructor
    Description
    Erzeugt eine leere Tabelle, welche für die Tex-Druck verwendet werden kann
  • Method Summary

    Modifier and Type
    Method
    Description
     
    get(int zeile, int spalte)
    Liefert das Tabellenelement an der gegebenen Position
    int
     
    int
     
    void
    insertSpalteAt(int pos, String mode)
    Fügt eine Spalte an der gegebenen Position in die Tabelle ein
    void
     
    void
     
    put(int zeile, int spalte, TableItem inhalt)
    Fügt einen Tex-String in die Tabelle an die Position zeile/Spalte ein
    Ist die Tabelle zu klein, wird sie automatisch vergrößert, hierbei wird die Spaltenformatierung aus der, am weitesten links liegenden Spalte übernommen
    put(int zeile, int spalte, String inhalt)
    Fügt einen Tex-String in die Tabelle an die Position zeile/Spalte ein
    Ist die Tabelle zu klein, wird sie automatisch vergrößert, hierbei wird die Spaltenformatierung aus der, am weitesten links liegenden Spalte übernommen
    private String
    texSubTable(int zeile, int spalte, int width, int height)
    Druckt die Tabelle als Tex-Code für maximal anz Spalten und Zeilen ab der Zelle (zeile,spalte)
    Wiederholungszeilen und Widerholungsspalten werden immer gedruckt!!
     
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • tabelle

      public Vector<Vector<TableItem>> tabelle
      Tabelle als zweidimensionaler Vektor
      tab.get(zeile).get(spalte)
    • spalten

      public Vector<String> spalten
      Kopfdefinition für eine Tex-Tabelle
    • zeilen

      public Vector<String> zeilen
      Definition des Zeilenendes für die Zeilen
    • kopfzeilen

      public int kopfzeilen
      Anzahl der Zeilen am Tabellenkopf, die auf jeder Seite gedruckt werden sollen
    • fusszeilen

      public int fusszeilen
      Anzahl der Zeilen am Tabellenfuss, die auf jeder Seite gedruckt werden sollen
    • fixRechts

      public int fixRechts
      Anzahl der Spalten auf der rechten Seite, die auf jeder Seite gedruckt werden sollen
    • anzSpalten

      public int anzSpalten
      Maximale Anzahl von Spalten welche zusätzlich zu den fixierten Spalten auf ein Blatt gedruckt werden sollen
    • anzZeilen

      public int anzZeilen
      Maximale Anzahl von Zeilen welche zusätzlich zu den fixierten Zeilen auf ein Blatt gedruckt werden sollen
    • showGrid

      public boolean showGrid
      Drucken des Tabellen-Gitters
    • pWidth

      private static final Pattern pWidth
  • Constructor Details

    • StringTable

      public StringTable()
      Erzeugt eine leere Tabelle, welche für die Tex-Druck verwendet werden kann
  • Method Details

    • getSpalten

      public int getSpalten()
      Returns:
      Liefert die Anzahl der Spalten der Tabelle
    • getZeilen

      public int getZeilen()
      Returns:
      Liefert die Anzahl der Zeilen der Tabelle
    • insertSpalteLinks

      public void insertSpalteLinks(String mode)
      Parameters:
      mode - Mode Fügt eine Spalte ganz links in die Tabelle ein
    • insertSpalteRechts

      public void insertSpalteRechts(String mode)
      Parameters:
      mode - Mode Fügt eine Spalte ganz rechts in die Tabelle ein
    • insertSpalteAt

      public void insertSpalteAt(int pos, String mode)
      Fügt eine Spalte an der gegebenen Position in die Tabelle ein
      Parameters:
      pos - Position
      mode - Mode
    • addZeile

      public Vector<TableItem> addZeile()
      Returns:
      Fügt eine Zeile am Tabellenende an und gibt eine Referenz darauf zurück
    • put

      public TableItem put(int zeile, int spalte, TableItem inhalt)
      Fügt einen Tex-String in die Tabelle an die Position zeile/Spalte ein
      Ist die Tabelle zu klein, wird sie automatisch vergrößert, hierbei wird die Spaltenformatierung aus der, am weitesten links liegenden Spalte übernommen
      Parameters:
      zeile - Zeile
      spalte - Spalte
      inhalt - Inhalt des Tabellenelements als Tex-formatierter String
      Returns:
      Refernz auf das Element, welches hinzugefügt wurde
    • put

      public TableItem put(int zeile, int spalte, String inhalt)
      Fügt einen Tex-String in die Tabelle an die Position zeile/Spalte ein
      Ist die Tabelle zu klein, wird sie automatisch vergrößert, hierbei wird die Spaltenformatierung aus der, am weitesten links liegenden Spalte übernommen
      Parameters:
      zeile - Zeile
      spalte - Spalte
      inhalt - Inhalt des Tabellenelements als Tex-formatierter String
      Returns:
      Refernz auf das Element, welches hinzugefügt wurde
    • get

      public TableItem get(int zeile, int spalte)
      Liefert das Tabellenelement an der gegebenen Position
      Parameters:
      zeile - Zeile
      spalte - Spalte
      Returns:
      Tabelleninhalt
    • texSubTable

      private String texSubTable(int zeile, int spalte, int width, int height)
      Druckt die Tabelle als Tex-Code für maximal anz Spalten und Zeilen ab der Zelle (zeile,spalte)
      Wiederholungszeilen und Widerholungsspalten werden immer gedruckt!!
      Parameters:
      zeile - Zeile ab der gedruckt wird
      spalte - Spalte ab der gedruckt wird
      width - Anzahl von Spalten ausser der fixierten Spalten die gedruckt werden
      width - Anzahl von Zeilen ausser der fixierten Zeilen die gedruckt werden
      Returns:
      Tex-Code
    • toTex

      public String toTex()
      Returns:
      erzeugt einen Tex-Code, welcher die Tabelle darstellt
    • toString

      public String toString()
      Overrides:
      toString in class Object