Update nikiroo-utils, bugfixes:
[nikiroo-utils.git] / src / be / nikiroo / fanfix / data / Paragraph.java
index feb949caf91c87d79e2471f6eed2dc6aceef8fa3..a731c328ce0a2ef4a0bc373689fe275c2abfb663 100644 (file)
@@ -1,6 +1,6 @@
 package be.nikiroo.fanfix.data;
 
-import java.net.URL;
+import java.awt.image.BufferedImage;
 
 /**
  * A paragraph in a chapter of the story.
@@ -28,6 +28,27 @@ public class Paragraph {
 
        private ParagraphType type;
        private String content;
+       private BufferedImage contentImage;
+       private long words;
+
+       /**
+        * Empty constructor, not to use.
+        */
+       @SuppressWarnings("unused")
+       private Paragraph() {
+               // for serialisation purposes
+       }
+
+       /**
+        * Create a new {@link Paragraph} with the given image.
+        * 
+        * @param contentImage
+        *            the image
+        */
+       public Paragraph(BufferedImage contentImage) {
+               this(ParagraphType.IMAGE, null, 1);
+               this.contentImage = contentImage;
+       }
 
        /**
         * Create a new {@link Paragraph} with the given values.
@@ -36,24 +57,13 @@ public class Paragraph {
         *            the {@link ParagraphType}
         * @param content
         *            the content of this paragraph
+        * @param words
+        *            the number of words (or images)
         */
-       public Paragraph(ParagraphType type, String content) {
+       public Paragraph(ParagraphType type, String content, long words) {
                this.type = type;
                this.content = content;
-       }
-
-       /**
-        * Create a new {@link Paragraph} with the given image.
-        * 
-        * @param support
-        *            the support that will be used to fetch the image via
-        *            {@link Paragraph#getContentImage()}.
-        * @param content
-        *            the content image of this paragraph
-        */
-       public Paragraph(URL imageUrl) {
-               this.type = ParagraphType.IMAGE;
-               this.content = imageUrl.toString();
+               this.words = words;
        }
 
        /**
@@ -76,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
         */
@@ -94,6 +104,34 @@ public class Paragraph {
                this.content = content;
        }
 
+       /**
+        * The content of this {@link Paragraph} if it is an image.
+        * 
+        * @return the content
+        */
+       public BufferedImage getContentImage() {
+               return contentImage;
+       }
+
+       /**
+        * The number of words (or images) in this {@link Paragraph}.
+        * 
+        * @return the number of words
+        */
+       public long getWords() {
+               return words;
+       }
+
+       /**
+        * The number of words (or images) in this {@link Paragraph}.
+        * 
+        * @param words
+        *            the number of words to set
+        */
+       public void setWords(long words) {
+               this.words = words;
+       }
+
        /**
         * Display a DEBUG {@link String} representation of this object.
         */