diff -r 4a4364826e59 -r 6e574058ef56 šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java
--- a/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java Thu Jan 05 11:01:25 2012 +0100
+++ b/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java Sat Jan 07 12:43:07 2012 +0100
@@ -1,7 +1,6 @@
package cz.frantovo.xmlWebGenerator;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintStream;
import java.util.Date;
@@ -23,7 +22,6 @@
private static final String PŘÍKAZ_PYGMENTIZE = "pygmentize";
private static final String PŘÍKAZ_DOT = "dot";
private static final String PŘÍKAZ_MARKDOWN = "markdown";
- private static final String ADRESÁŘ_VSTUPNÍ = "vstup";
private static final String ADRESÁŘ_VÝSTUPNÍ = "výstup";
private static int počítadloDiagramů = 0;
@@ -98,24 +96,30 @@
/**
* Vytvoří obrázek s diagramem.
* @param zadání definice diagramu ve formátu dot
- * @param vodorovně zda má být graf orientovaný vodorovně
+ * @param vodorovně zda má být graf orientovaný vodorovně (funguje jen při kompletní = false
)
+ * @param kompletní false, pokud k zadání chceme doplnit digraph d {…}
* @return název souboru bez přípony, který byl vytvořen, nebo null, pokud došlo k chybě.
*/
- public static String vytvořDiagram(String zadání, boolean vodorovně) throws IOException, InterruptedException {
+ public static String vytvořDiagram(String zadání, boolean vodorovně, boolean kompletní) throws IOException, InterruptedException {
if (isPříkazDostupný(PŘÍKAZ_DOT)) {
počítadloDiagramů++;
String soubor = "diagram-" + počítadloDiagramů;
String souborSložka = ADRESÁŘ_VÝSTUPNÍ + File.separator + soubor;
- StringBuilder zdroják = new StringBuilder(zadání.length() + 200);
-
- zdroják.append("digraph d {\n");
- zdroják.append("\tbgcolor=\"transparent\";\n");
- if (vodorovně) {
- zdroják.append("\trankdir=LR;");
+ String zdroják;
+ if (kompletní) {
+ zdroják = zadání;
+ } else {
+ StringBuilder b = new StringBuilder(zadání.length() + 200);
+ b.append("digraph d {\n");
+ b.append("\tbgcolor=\"transparent\";\n");
+ if (vodorovně) {
+ b.append("\trankdir=LR;");
+ }
+ b.append(zadání);
+ b.append("}\n");
+ zdroják = b.toString();
}
- zdroják.append(zadání);
- zdroják.append("}\n");
Runtime r = Runtime.getRuntime();
Process p = r.exec(new String[]{PŘÍKAZ_DOT, "-T", "svg", "-o", souborSložka + ".svg"});