package com.door43.translationstudio.rendering; /** * This is an abstract base class for clickable rendering engine. This handles all of the rendering for USX formatted source and translation * NOTE: when rendering large chunks of text it is important to always keep things as a CharSequence and not string * so that spans generated by prior rendering methods are not lost. */ public abstract class ClickableRenderingEngine extends RenderingEngine { /** * if set to false verses will not be displayed in the output. * * @param enable default is true */ public abstract void setVersesEnabled(boolean enable); /** * if set to true, then line breaks will be shown in the output. * * @param enable default is false */ public abstract void setLinebreaksEnabled(boolean enable); /** * Specifies an inclusive range of verses expected in the input. * If a verse is not found it will be inserted at the front of the input. * @param verseRange */ public abstract void setPopulateVerseMarkers(int[] verseRange); /** * Set whether to suppress display of major section headers. * * <p>The intent behind this is that major section headers prior to chapter markers will be * displayed above chapter markers, but only in read mode.</p> * * @param suppressLeadingMajorSectionHeadings The value to set */ public abstract void setSuppressLeadingMajorSectionHeadings(boolean suppressLeadingMajorSectionHeadings); /** * Renders all verse tags * @param in * @return */ public abstract CharSequence renderVerse(CharSequence in); public abstract CharSequence getLeadingMajorSectionHeading(CharSequence in); }