Multivalent API

multivalent.node
Class LeafUnicode

java.lang.Object
  extended by multivalent.VObject
      extended by multivalent.Node
          extended by multivalent.Leaf
              extended by multivalent.node.LeafText
                  extended by multivalent.node.LeafUnicode
All Implemented Interfaces:
java.lang.Cloneable
Direct Known Subclasses:
FixedLeafUnicode

public class LeafUnicode
extends LeafText

Leaf subclass for Unicode.

Each word gets its own leaf, more or less. I used to think this was wasteful, as opposed to having a leaf per screen line, say, but if a word costs 50 bytes instead of 5, that just means that a 10,000 word page (which is big) costs 500K instead of 50K, and 100,000 words cost 5MB instead of 500K. No sweat for today's memory sizes.

Version:
$Revision: 1.4 $ $Date: 2005/12/31 09:59:42 $
See Also:
ASCII

Field Summary
 
Fields inherited from class multivalent.node.LeafText
estr_, Widths_
 
Fields inherited from class multivalent.Node
align, ALIGN_INVALID, ATTR_ID, ATTR_SCRIPT, baseline, BASELINE, bbox, BOTH, BOTTOM, CENTER, CHAR, FILL, floats, INHERIT, JUSTIFY, LEFT, MAXNONSTRUCTDEPTH, MIDDLE, name_, NONE, observers_, parent_, PROBEWIDTH, RIGHT, sticky_, stickycnt_, TOP, valid_, valign
 
Fields inherited from class multivalent.VObject
attr_
 
Constructor Summary
LeafUnicode(java.lang.String name, java.util.Map<java.lang.String,java.lang.Object> attr, INode parent)
           
LeafUnicode(java.lang.String name, java.lang.String estr, java.util.Map<java.lang.String,java.lang.Object> attr, INode parent)
           
 
Method Summary
 boolean formatNodeContent(Context cx, int start, int end)
          Similar to paintNodeContent, set right font, measure.
 boolean paintNodeContent(Context cx, int start, int end)
          To paint content, set right font, use Graphics.drawString();
 
Methods inherited from class multivalent.node.LeafText
append, append, append, clipboardBeforeAfter, clipboardNode, getText, offset2rel, size, subelementCalc, subelementHit
 
Methods inherited from class multivalent.Leaf
checkRep, copy, cut, delete, dx, dy, eatme, eventBeforeAfter, eventNode, formatBeforeAfter, formatNode, getFirstLeaf, getLastLeaf, insert, insert, isLeaf, lengthTo, markDirtySubtreeDown, paintBeforeAfter, paintNode, paste, paste, removeTidy, setName, split, subelement
 
Methods inherited from class multivalent.Node
addObserver, addSticky, addSticky, breakAfter, breakBefore, childNum, clipboardBeforeAfter, clone, cmp, commonAncestor, commonAncestor, contains, contains, deleteObserver, dump, dump, dump, findBFS, findBFS, findBFS, findDFS, findDFS, findDFS, findDFS, getAbsLocation, getActivesAt, getActivesAt, getActivesAt, getBbox, getBrowser, getDocument, getElementById, getIScrollPane, getName, getNextLeaf, getNextNode, getNodeName, getObservers, getParentNode, getPrevLeaf, getPrevNode, getRelLocation, getRoot, getSticky, indexSticky, intersects, isStruct, isValid, markDirty, markDirtySubtree, markDirtyTo, morphInto, reformat, remove, removeSticky, removeSticky, repaint, repaint, repaint, repaint, scrollTo, scrollTo, setParentNode, setValid, sizeSticky, spanChunky, spanChunky, structChildNum, toString
 
Methods inherited from class multivalent.VObject
attrEntrySetIterator, attrKeysIterator, clearAttributes, getAttr, getAttr, getAttributes, getGlobal, getValue, hasAttributes, putAttr, removeAttr, setAttributes
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

LeafUnicode

public LeafUnicode(java.lang.String name,
                   java.util.Map<java.lang.String,java.lang.Object> attr,
                   INode parent)

LeafUnicode

public LeafUnicode(java.lang.String name,
                   java.lang.String estr,
                   java.util.Map<java.lang.String,java.lang.Object> attr,
                   INode parent)
Method Detail

formatNodeContent

public boolean formatNodeContent(Context cx,
                                 int start,
                                 int end)
Similar to paintNodeContent, set right font, measure.

Overrides:
formatNodeContent in class Leaf

paintNodeContent

public boolean paintNodeContent(Context cx,
                                int start,
                                int end)
To paint content, set right font, use Graphics.drawString();

Overrides:
paintNodeContent in class Leaf

Multivalent API