Changes in this commit seem to be the result of some "auto reformat" tool execution. The Java - GeoAPI - GeoTools import ordering is altered, imports used only in Javadoc are lost and the encoding of non-ASCII characters is broken. This commit has been reverted, except for the removal of really unused imports which are kept removed.
Command line:
svn diff --extensions "--unified --ignore-space-change --ignore-all-space --ignore-eol-style" -r10795:10796 https://svn.osgeo.org/geotools/trunk/modules/library/metadata/src/main/java/org/geotools/io/TableWriter.java
Revision 10795 | Revision 10796 |
---|---|
/*
* Geotools 2 - OpenSource mapping toolkit
* (C) 2003, Geotools Project Managment Committee (PMC)
* (C) 2001, Institut de Recherche pour le Développement
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public |
/*
* Geotools 2 - OpenSource mapping toolkit
* (C) 2003, Geotools Project Managment Committee (PMC)
* (C) 2001, Institut de Recherche pour le D�veloppement
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public |
package org.geotools.io; // Input/output import java.io.Writer; import java.io.FilterWriter; import java.io.StringWriter; import java.io.IOException; // Miscellaneous import java.util.List; import java.util.Arrays; import java.util.ArrayList; import java.util.Iterator; import java.util.StringTokenizer; import javax.swing.text.StyleConstants; // Geotools dependencies import org.geotools.resources.XArray; import org.geotools.resources.Utilities; /** |
package org.geotools.io; // Input/output import java.io.FilterWriter; import java.io.IOException; import java.io.StringWriter; import java.io.Writer; import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; import java.util.List; import java.util.StringTokenizer; import javax.swing.text.StyleConstants; import org.geotools.resources.Utilities; import org.geotools.resources.XArray; /** |
* * <blockquote><pre> * TableWriter out = new TableWriter(new OutputStreamWriter(System.out), 3); * out.write("Prénom\tNom\n"); * out.nextLine('-'); * out.write("Idéphonse\tLaporte\nSarah\tCoursi\nYvan\tDubois"); * out.flush(); * </pre></blockquote> * * ...produces the following output: * * <blockquote><pre> * Prénom Nom * --------- ------- * Idéphonse Laporte * Sarah Coursi * Yvan Dubois * </pre></blockquote> |
* * <blockquote><pre> * TableWriter out = new TableWriter(new OutputStreamWriter(System.out), 3); * out.write("Pr�nom\tNom\n"); * out.nextLine('-'); * out.write("Id�phonse\tLaporte\nSarah\tCoursi\nYvan\tDubois"); * out.flush(); * </pre></blockquote> * * ...produces the following output: * * <blockquote><pre> * Pr�nom Nom * --------- ------- * Id�phonse Laporte * Sarah Coursi * Yvan Dubois * </pre></blockquote> |
final char horizontalChar) throws IOException
{
/*
* Obtiens les ensembles de caractères qui
* conviennent pour la ligne horizontale.
*/
int boxCount = 0; |
final char horizontalChar) throws IOException
{
/*
* Obtiens les ensembles de caract�res qui
* conviennent pour la ligne horizontale.
*/
int boxCount = 0; |
} } /* * Obtient une chane contenant les lignes verticales à * dessiner à gauche, à droite ou au centre de la table. */ final String border; switch (horizontalBorder) { |
} } /* * Obtient une cha�ne contenant les lignes verticales � * dessiner � gauche, � droite ou au centre de la table. */ final String border; switch (horizontalBorder) { |
} /** * Ecrit vers le flot spécifié toutes les cellules qui avaient été disposées * dans le tableau. Ces cellules seront automatiquement alignées en colonnes. * Cette méthode peut tre appelée plusieurs fois pour écrire le mme tableau * par exemple vers plusieurs flots. * * @param out Flot vers où écrire les données. * @throws IOException si une erreur est survenue lors de l'écriture dans * <code>out</code>. */ private void flushTo(final Writer out) throws IOException { |
} /** * Ecrit vers le flot sp�cifi� toutes les cellules qui avaient �t� dispos�es * dans le tableau. Ces cellules seront automatiquement align�es en colonnes. * Cette m�thode peut �tre appel�e plusieurs fois pour �crire le m�me tableau * par exemple vers plusieurs flots. * * @param out Flot vers o� �crire les donn�es. * @throws IOException si une erreur est survenue lors de l'�criture dans * <code>out</code>. */ private void flushTo(final Writer out) throws IOException { |
final int cellCount = cells.size(); for (int cellIndex=0; cellIndex<cellCount; cellIndex++) { /* * Copie dans <code>currentLine</code> toutes les données qui seront à écrire * sur la ligne courante de la table. Ces données excluent le <code>null</code> * terminal. La liste <code>currentLine</code> ne contiendra donc initialement * aucun élément nul, mais ses éléments seront progressivement modifiés (et mis * à <code>null</code>) pendant l'écriture de la ligne dans la boucle qui suit. */ Cell lineFill = null; int currentCount = 0; |
final int cellCount = cells.size(); for (int cellIndex=0; cellIndex<cellCount; cellIndex++) { /* * Copie dans <code>currentLine</code> toutes les donn�es qui seront � �crire * sur la ligne courante de la table. Ces donn�es excluent le <code>null</code> * terminal. La liste <code>currentLine</code> ne contiendra donc initialement * aucun �l�ment nul, mais ses �l�ments seront progressivement modifi�s (et mis * � <code>null</code>) pendant l'�criture de la ligne dans la boucle qui suit. */ Cell lineFill = null; int currentCount = 0; |
while (++cellIndex < cellCount); Arrays.fill(currentLine, currentCount, currentLine.length, lineFill); /* * La boucle suivante sera exécutée tant qu'il reste des lignes à écrire * (c'est-à-dire tant qu'au moins un élément de <code>currentLine</code> * est non-nul). Si une cellule contient un texte avec des caractères EOL, * alors cette cellule devra s'écrire sur plusieurs lignes dans la cellule * courante. */ while (!isEmpty(currentLine)) { |
while (++cellIndex < cellCount); Arrays.fill(currentLine, currentCount, currentLine.length, lineFill); /* * La boucle suivante sera ex�cut�e tant qu'il reste des lignes � �crire * (c'est-�-dire tant qu'au moins un �l�ment de <code>currentLine</code> * est non-nul). Si une cellule contient un texte avec des caract�res EOL, * alors cette cellule devra s'�crire sur plusieurs lignes dans la cellule * courante. */ while (!isEmpty(currentLine)) { |
int end = (endCR<0) ? endLF : (endLF<0) ? endCR : Math.min(endCR,endLF); if (end >= 0) { /* * Si un retour chariot a été trouvé, n'écrit que la première * ligne de la cellule. L'élément <code>currentLine[j]</code> * sera modifié pour ne contenir que les lignes restantes qui * seront écrites lors d'un prochain passage dans la boucle. */ int top = end+1; if (endCR>=0 && endCR+1==endLF) top++; |
int end = (endCR<0) ? endLF : (endLF<0) ? endCR : Math.min(endCR,endLF); if (end >= 0) { /* * Si un retour chariot a �t� trouv�, n'�crit que la premi�re * ligne de la cellule. L'�l�ment <code>currentLine[j]</code> * sera modifi� pour ne contenir que les lignes restantes qui * seront �crites lors d'un prochain passage dans la boucle. */ int top = end+1; if (endCR>=0 && endCR+1==endLF) top++; |
else currentLine[j] = null; final int textLength = cellText.length(); /* * Si la cellule à écrire est en fait une bordure, * on fera un traitement spécial pour utiliser les * caractres de jointures {@link #BOX}. */ if (currentCount == 0) { assert textLength == 0; |
else currentLine[j] = null; final int textLength = cellText.length(); /* * Si la cellule � �crire est en fait une bordure, * on fera un traitement sp�cial pour utiliser les * caract�res de jointures {@link #BOX}. */ if (currentCount == 0) { assert textLength == 0; |
} /* * Si la cellule n'est pas une bordure, il s'agit * d'une cellule "normale". Procde maintenant à * l'écriture d'une ligne de la cellule. */ if (isFirstColumn) { out.write(leftBorder); |
} /* * Si la cellule n'est pas une bordure, il s'agit * d'une cellule "normale". Proc�de maintenant � * l'�criture d'une ligne de la cellule. */ if (isFirstColumn) { out.write(leftBorder); |