protected void layoutContainer(){
  Rectangle inBounds=p.getBounds();
  Insets insets=p.getInsets();
  inBounds.x+=insets.left;
  inBounds.width-=insets.left;
  inBounds.width-=insets.right;
  inBounds.y+=insets.top;
  inBounds.height-=insets.top;
  inBounds.height-=insets.bottom;
  backgroundBounds=(Rectangle)inBounds.clone();
  occludingBounds=(Rectangle)inBounds.clone();
  layoutCardinals();
  layoutEast(p.getEast(),occludingBounds.x + occludingBounds.width,occludingBounds.y,occludingBounds.width,occludingBounds.height);
  layoutWest(p.getWest(),occludingBounds.x,occludingBounds.y,occludingBounds.width,occludingBounds.height);
  int southLeft=inBounds.x + getWidthAtYCardinal(p.getWest(),inBounds.y + inBounds.height - getHeightAtLeftCardinal(p.getSouth()));
  int southRight=inBounds.x + inBounds.width - getWidthAtYCardinal(p.getEast(),inBounds.y + inBounds.height - getHeightAtRightCardinal(p.getSouth()));
  layoutSouth(p.getSouth(),southLeft,occludingBounds.y + occludingBounds.height,southRight - southLeft,occludingBounds.height);
  int northLeft=inBounds.x + getWidthAtYCardinal(p.getWest(),inBounds.y + getHeightAtLeftCardinal(p.getNorth()));
  int northRight=inBounds.x + inBounds.width - getWidthAtYCardinal(p.getEast(),inBounds.y + getHeightAtRightCardinal(p.getNorth()));
  layoutNorth(p.getNorth(),northLeft,occludingBounds.y,northRight - northLeft,occludingBounds.height);
  layoutBackground();
}

protected void layoutContainer ( ) { Rectangle inBounds = p . getBounds ( ) ; Insets insets = p . getInsets ( ) ; inBounds . x += insets . left ; inBounds . width -= insets . left ; inBounds . width -= insets . right ; inBounds . y += insets . top ; inBounds . height -= insets . top ; inBounds . height -= insets . bottom ; backgroundBounds = ( Rectangle ) inBounds . clone ( ) ; occludingBounds = ( Rectangle ) inBounds . clone ( ) ; layoutCardinals ( ) ; layoutEast ( p . getEast ( ) , occludingBounds . x + occludingBounds . width , occludingBounds . y , occludingBounds . width , occludingBounds . height ) ; layoutWest ( p . getWest ( ) , occludingBounds . x , occludingBounds . y , occludingBounds . width , occludingBounds . height ) ; int southLeft = inBounds . x + getWidthAtYCardinal ( p . getWest ( ) , inBounds . y + inBounds . height - getHeightAtLeftCardinal ( p . getSouth ( ) ) ) ; int southRight = inBounds . x + inBounds . width - getWidthAtYCardinal ( p . getEast ( ) , inBounds . y + inBounds . height - getHeightAtRightCardinal ( p . getSouth ( ) ) ) ; layoutSouth ( p . getSouth ( ) , southLeft , occludingBounds . y + occludingBounds . height , southRight - southLeft , occludingBounds . height ) ; int northLeft = inBounds . x + getWidthAtYCardinal ( p . getWest ( ) , inBounds . y + getHeightAtLeftCardinal ( p . getNorth ( ) ) ) ; int northRight = inBounds . x + inBounds . width - getWidthAtYCardinal ( p . getEast ( ) , inBounds . y + getHeightAtRightCardinal ( p . getNorth ( ) ) ) ; layoutNorth ( p . getNorth ( ) , northLeft , occludingBounds . y , northRight - northLeft , occludingBounds . height ) ; layoutBackground ( ) ; }
layout the entire container .
