# HG changeset patch # User František Kučera # Date 1325883532 -3600 # Node ID a221785fe3ac58dccdf300803660d394f5935f27 # Parent df1f942f7b69686b487357a426f0e8a0f76a3aa3 Diagramy #13: možnost načítání ze souboru. diff -r df1f942f7b69 -r a221785fe3ac vstup/kočka-a-pes-oop.dot --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vstup/kočka-a-pes-oop.dot Fri Jan 06 21:58:52 2012 +0100 @@ -0,0 +1,18 @@ +digraph G { + bgcolor="transparent"; + + + // Třídy: + node [shape = "record"] + Pes [label = "{Pes|+ kouše : boolean\l|+ štěkej() : void\l}"]; + Kočka [label = "{Kočka|+ spí : boolean\l|+ mňoukej() : void\l}"]; + Zvíře [label = "{Zvíře|+ jméno : string\l+ věk : int\l|+ běhej() : void\l}"]; + + + // Dědičnost: + edge [arrowhead = "empty"] + + Pes -> Zvíře + Kočka -> Zvíře +} + diff -r df1f942f7b69 -r a221785fe3ac vstup/zdrojáky.xml --- a/vstup/zdrojáky.xml Fri Jan 06 20:48:42 2012 +0100 +++ b/vstup/zdrojáky.xml Fri Jan 06 21:58:52 2012 +0100 @@ -64,7 +64,14 @@ #!/bin/bash # tento kód nebude zvýrazněn, protože atribut „jazyk“ chybí # <blee/> + +

Objekty

+

+ Při vývoji softwaru používáme OOP. +

+ + diff -r df1f942f7b69 -r a221785fe3ac šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java --- a/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java Fri Jan 06 20:48:42 2012 +0100 +++ b/šablona/funkce/src/cz/frantovo/xmlWebGenerator/Funkce.java Fri Jan 06 21:58:52 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"}); diff -r df1f942f7b69 -r a221785fe3ac šablona/makra/diagramy.xsl --- a/šablona/makra/diagramy.xsl Fri Jan 06 20:48:42 2012 +0100 +++ b/šablona/makra/diagramy.xsl Fri Jan 06 21:58:52 2012 +0100 @@ -6,21 +6,36 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" exclude-result-prefixes="m j"> - - - - - + + + + + + + + + + + + + + + + + + + +