public long getResolvedPreferredSize() {
   if (parent == null) {
     return 0;
   }
   if (blockLevelNode) {
     return parent.getContentAreaWidth();
   }
   return getContentAreaWidth();
 }
  public void updateParentX2(final long position) {
    if (parent == null) {
      return;
    }

    if (overflowX) {
      // overflow means that child nodes will not expand the parent's content area. The nodes float
      // elsewhere.
      return;
    }

    parent.updateX2(position);
  }
 public long getParentX1() {
   if (parent == null) {
     return 0;
   }
   return parent.getX1();
 }
 public long getBlockContextWidth() {
   if (blockContext == null) {
     return 0;
   }
   return blockContext.getContentAreaWidth();
 }