protected Shape createOuterFocus(final SegmentType segmentType,final int x,final int y,final int w,final int h){
switch (segmentType) {
case FIRST:
    return shapeGenerator.createRoundRectangle(x - 2,y - 2,w + 3,h + 3,CornerSize.OUTER_FOCUS,CornerStyle.ROUNDED,CornerStyle.ROUNDED,CornerStyle.SQUARE,CornerStyle.SQUARE);
case MIDDLE:
  return shapeGenerator.createRectangle(x - 2,y - 2,w + 3,h + 3);
case LAST:
return shapeGenerator.createRoundRectangle(x - 2,y - 2,w + 3,h + 3,CornerSize.OUTER_FOCUS,CornerStyle.SQUARE,CornerStyle.SQUARE,CornerStyle.ROUNDED,CornerStyle.ROUNDED);
default :
return shapeGenerator.createRoundRectangle(x - 2,y - 2,w + 3,h + 3,CornerSize.OUTER_FOCUS);
}
}

protected Shape createOuterFocus ( final SegmentType segmentType , final int x , final int y , final int w , final int h ) { switch ( segmentType ) { case FIRST : return shapeGenerator . createRoundRectangle ( x - 2 , y - 2 , w + 3 , h + 3 , CornerSize . OUTER_FOCUS , CornerStyle . ROUNDED , CornerStyle . ROUNDED , CornerStyle . SQUARE , CornerStyle . SQUARE ) ; case MIDDLE : return shapeGenerator . createRectangle ( x - 2 , y - 2 , w + 3 , h + 3 ) ; case LAST : return shapeGenerator . createRoundRectangle ( x - 2 , y - 2 , w + 3 , h + 3 , CornerSize . OUTER_FOCUS , CornerStyle . SQUARE , CornerStyle . SQUARE , CornerStyle . ROUNDED , CornerStyle . ROUNDED ) ; default : return shapeGenerator . createRoundRectangle ( x - 2 , y - 2 , w + 3 , h + 3 , CornerSize . OUTER_FOCUS ) ; } }
create the shape for the outer focus ring . designed to be drawn rather than filled .
