Provided by: kaya_0.4.4-6ubuntu3_amd64
NAME
HTMLDocument::addInlineElementAt - Wrap existing text in an inline element
SYNOPSIS
ElementTree addInlineElementAt( ElementTree block, InlineElement inline, Int startpos, Int endpos )
ARGUMENTS
block The element to add to inline The inline element to add startpos The start position for the inline element endpos The end position for the inline element
DESCRIPTION
Encloses existing text within an element within an inline element. The characters from startpos to endpos inclusive (with a starting index of zero) will be included in the inline element. p = addParagraph(parent,"abcdefghijklmnopqrstuvwxyz"); void(addInlineElementAt(p,Emphasis,5,10)); void(addInlineElementAt(p,StrongEmphasis,6,8)); // <p>abcde<em>f<strong>ghi</strong>jk</em>lmnopqrstuvwxyz</p> An HTMLDocument.InvalidNesting (3kaya) Exception will be thrown if the element being added to cannot contain inline elements, or an impossible nesting situation would be created. An HTMLDocument.InvalidRange (3kaya) Exception will be thrown if the startpos or endpos are outside the text contents of the block. p = addParagraph(parent,"abcdefghijklmnopqrstuvwxyz"); void(addInlineElementAt(p,Emphasis,5,10)); void(addInlineElementAt(p,StrongEmphasis,6,15)); // exception thrown The firstOccurs function is useful for highlighting a particular word within a string. haystack = getAllText(element); npos = firstOccurs(needle,haystack); if (npos < length(haystack)) { try { added = addInlineElementAt(element,Emphasis,npos,npos+length(needle)+1); } catch(InvalidNesting(details)) { // probably overlapping elements } }
AUTHORS
Kaya standard library by Edwin Brady, Chris Morris and others (kaya@kayalang.org). For further information see http://kayalang.org/
LICENSE
The Kaya standard library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (version 2.1 or any later version) as published by the Free Software Foundation.
RELATED
HTMLDocument.InlineElement (3kaya) HTMLDocument.appendInlineElement (3kaya) Strings.firstOccurs_1 (3kaya)