Ideally BorderLayoutContainer should support North, South, East & West where BorderLayoutData has size of -1 meaning, it should size itself based on its content, until this is supported it should throw an IllegalArgumentException if the size is -1 telling the user this is not supported.