X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Fdata%2FParagraph.java;h=91e95f8bd791f545ce185c5c194c843ff0e4dbe8;hb=312e756ed0306e3287f1bf111a5fab9027d46a92;hp=8a9130bf83fdcc8342a796f125a64a1aa994ea4c;hpb=b0e88ebd20f8b2950c382694e936da76ac3596b6;p=nikiroo-utils.git diff --git a/src/be/nikiroo/fanfix/data/Paragraph.java b/src/be/nikiroo/fanfix/data/Paragraph.java index 8a9130b..91e95f8 100644 --- a/src/be/nikiroo/fanfix/data/Paragraph.java +++ b/src/be/nikiroo/fanfix/data/Paragraph.java @@ -1,13 +1,13 @@ package be.nikiroo.fanfix.data; -import java.net.URL; +import be.nikiroo.utils.Image; /** * A paragraph in a chapter of the story. * * @author niki */ -public class Paragraph { +public class Paragraph implements Cloneable { /** * A paragraph type, that will dictate how the paragraph will be handled. * @@ -28,11 +28,13 @@ public class Paragraph { private ParagraphType type; private String content; + private Image contentImage; private long words; /** * Empty constructor, not to use. */ + @SuppressWarnings("unused") private Paragraph() { // for serialisation purposes } @@ -40,11 +42,12 @@ public class Paragraph { /** * Create a new {@link Paragraph} with the given image. * - * @param imageUrl - * the image as an URL + * @param contentImage + * the image */ - public Paragraph(URL imageUrl) { - this(ParagraphType.IMAGE, imageUrl.toString(), 0); + public Paragraph(Image contentImage) { + this(ParagraphType.IMAGE, null, 1); + this.contentImage = contentImage; } /** @@ -55,7 +58,7 @@ public class Paragraph { * @param content * the content of this paragraph * @param words - * the number of words + * the number of words (or images) */ public Paragraph(ParagraphType type, String content, long words) { this.type = type; @@ -83,7 +86,7 @@ public class Paragraph { } /** - * The content of this {@link Paragraph}. + * The content of this {@link Paragraph} if it is not an image. * * @return the content */ @@ -102,7 +105,16 @@ public class Paragraph { } /** - * The number of words in this {@link Paragraph}. + * The content of this {@link Paragraph} if it is an image. + * + * @return the content + */ + public Image getContentImage() { + return contentImage; + } + + /** + * The number of words (or images) in this {@link Paragraph}. * * @return the number of words */ @@ -111,7 +123,7 @@ public class Paragraph { } /** - * The number of words in this {@link Paragraph}. + * The number of words (or images) in this {@link Paragraph}. * * @param words * the number of words to set @@ -127,4 +139,17 @@ public class Paragraph { public String toString() { return String.format("%s: [%s]", "" + type, "" + content); } + + @Override + public Paragraph clone() { + Paragraph para = null; + try { + para = (Paragraph) super.clone(); + } catch (CloneNotSupportedException e) { + // Did the clones rebel? + System.err.println(e); + } + + return para; + } }