Class BidiFormatterBase

    • Constructor Detail

    • Method Detail

      • estimateDirection

        public HasDirection.Direction estimateDirection​(java.lang.String str,
                                                        boolean isHtml)
        Estimates the direction of a string using the best known general-purpose method, i.e. using relative word counts. Direction.DEFAULT return value indicates completely neutral input.
        Parameters:
        str - String whose direction is to be estimated
        isHtml - Whether str is HTML / HTML-escaped
        Returns:
        str's estimated overall direction
      • getAlwaysSpan

        public boolean getAlwaysSpan()
        Returns whether the span structure added by the formatter should be stable, i.e., spans added even when the direction does not need to be declared.
      • isRtlContext

        public boolean isRtlContext()
        Returns whether the context direction is RTL.
      • dirAttrBase

        protected java.lang.String dirAttrBase​(java.lang.String str,
                                               boolean isHtml)
        Parameters:
        str - String whose direction is to be estimated
        isHtml - Whether str is HTML / HTML-escaped
        Returns:
        "dir=rtl" for RTL text in non-RTL context; "dir=ltr" for LTR text in non-LTR context; else, the empty string.
        See Also:
        BidiFormatter.dirAttr(String, boolean)
      • markAfterBase

        protected java.lang.String markAfterBase​(java.lang.String str,
                                                 boolean isHtml)
        Parameters:
        str - String after which the mark may need to appear
        isHtml - Whether str is HTML / HTML-escaped
        Returns:
        LRM for RTL text in LTR context; RLM for LTR text in RTL context; else, the empty string.
        See Also:
        BidiFormatter.markAfter(String, boolean)
      • spanWrapBase

        protected java.lang.String spanWrapBase​(java.lang.String str,
                                                boolean isHtml,
                                                boolean dirReset)
        Parameters:
        str - The input string
        isHtml - Whether str is HTML / HTML-escaped
        dirReset - Whether to append a trailing unicode bidi mark matching the context direction, when needed, to prevent the possible garbling of whatever may follow str
        Returns:
        Input string after applying the above processing.
        See Also:
        BidiFormatter.spanWrap(String, boolean, boolean)
      • spanWrapWithKnownDirBase

        protected java.lang.String spanWrapWithKnownDirBase​(HasDirection.Direction dir,
                                                            java.lang.String str,
                                                            boolean isHtml,
                                                            boolean dirReset)
        Parameters:
        dir - str's direction
        str - The input string
        isHtml - Whether str is HTML / HTML-escaped
        dirReset - Whether to append a trailing unicode bidi mark matching the context direction, when needed, to prevent the possible garbling of whatever may follow str
        Returns:
        Input string after applying the above processing.
        See Also:
        BidiFormatter.spanWrapWithKnownDir(HasDirection.Direction, String, boolean, boolean)
      • unicodeWrapBase

        protected java.lang.String unicodeWrapBase​(java.lang.String str,
                                                   boolean isHtml,
                                                   boolean dirReset)
        Parameters:
        str - The input string
        isHtml - Whether str is HTML / HTML-escaped
        dirReset - Whether to append a trailing unicode bidi mark matching the context direction, when needed, to prevent the possible garbling of whatever may follow str
        Returns:
        Input string after applying the above processing.
        See Also:
        BidiFormatter.unicodeWrap(String, boolean, boolean)
      • unicodeWrapWithKnownDirBase

        protected java.lang.String unicodeWrapWithKnownDirBase​(HasDirection.Direction dir,
                                                               java.lang.String str,
                                                               boolean isHtml,
                                                               boolean dirReset)
        Parameters:
        dir - str's direction
        str - The input string
        isHtml - Whether str is HTML / HTML-escaped
        dirReset - Whether to append a trailing unicode bidi mark matching the context direction, when needed, to prevent the possible garbling of whatever may follow str
        Returns:
        Input string after applying the above processing.
        See Also:
        BidiFormatter.unicodeWrapWithKnownDir(HasDirection.Direction, String, boolean, boolean)