Fix breaks (<hr>) CSS style, GUI update bug fixed
[fanfix.git] / src / be / nikiroo / fanfix / output / Html.java
index fcffec67a2a5403c300b19a5d712f487d2817f6d..a02124cc53235dc6aae38e4e24083de16382ee5b 100644 (file)
@@ -1,9 +1,11 @@
 package be.nikiroo.fanfix.output;
 
+import java.io.BufferedWriter;
 import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.io.OutputStreamWriter;
 
 import javax.imageio.ImageIO;
 
@@ -19,7 +21,7 @@ import be.nikiroo.utils.StringUtils;
 
 class Html extends BasicOutput {
        private File dir;
-       protected FileWriter writer;
+       protected BufferedWriter writer;
        private boolean inDialogue = false;
        private boolean inNormal = false;
 
@@ -32,12 +34,10 @@ class Html extends BasicOutput {
                target.mkdir();
                dir = target;
 
-               targetName = new File(targetName, "index").getPath();
-               targetName += getDefaultExtension();
-
-               target = new File(targetDir, targetName);
-
-               writer = new FileWriter(target);
+               target = new File(targetDir, targetName + getDefaultExtension(true));
+               
+               writer = new BufferedWriter(new OutputStreamWriter(
+                               new FileOutputStream(target), "UTF-8"));
                try {
                        super.process(story, targetDir, targetNameOrig);
                } finally {
@@ -56,8 +56,12 @@ class Html extends BasicOutput {
        }
 
        @Override
-       public String getDefaultExtension() {
-               return File.separator + "index.html";
+       public String getDefaultExtension(boolean readerTarget) {
+               if (readerTarget) {
+                       return File.separator + "index.html";
+               } else {
+                       return "";
+               }
        }
 
        @Override
@@ -202,7 +206,7 @@ class Html extends BasicOutput {
                        writer.write("          <div class='blank'></div>");
                        break;
                case BREAK:
-                       writer.write("          <hr/>");
+                       writer.write("          <hr class='break'/>");
                        break;
                case NORMAL:
                        writer.write("          <span class='normal'>");