fractionOfChildren /= parent.getChildTimeScaleFactor();
	public Rectangle2D.Double getExtent()	{		// The amount of area rendered for the Call should be equal to its fraction		//   of the parent time		// It should occupy the fraction of the extent equal to its fraction of all the time		//   spent in children of its parent		double fractionOfChildren = call.getInclusiveFractionOfParentChildTimes(measure);		if ( call.getParent() != null )		{			// fractionOfChildren /= new CallAdapter(call.getParent()).getChildTimeScaleFactor();		}		double areaRatio = ( remainderExtent.height / parentExtent.height ) * ( remainderExtent.width / parentExtent.width );		// System.out.println(call + " is " + fractionOfChildren + " of " + call.getParent());		// System.out.println("areaRatio is " + areaRatio);				// Upper-left of call extent in coordinates of parent extent		Point2D.Double upperLeft = new Point2D.Double(remainderExtent.x, remainderExtent.y + remainderExtent.height);		double enclosedWidth, enclosedHeight;		// The rectangle should take be left-to-right if the		//   available space is wider than it is long (or square)		if ( remainderExtent.width >= remainderExtent.height )		{			enclosedWidth = remainderExtent.width * fractionOfChildren / areaRatio;			enclosedHeight = remainderExtent.height;		}		// Otherwise, top-to-bottom		else		{			enclosedWidth = remainderExtent.width;			enclosedHeight = remainderExtent.height * fractionOfChildren / areaRatio;		}		return new Rectangle2D.Double(upperLeft.x, upperLeft.y - enclosedHeight,									  enclosedWidth, enclosedHeight);	}