@Override
	protected void layoutSelf(Rectangle bounds) {
		Rectangle compBounds = new Rectangle(bounds);
		if (!mOnlyPreferredSize) {
			Dimension size = LayoutSize.MINIMUM.get(mComponent);
			if (compBounds.width < size.width) {
				compBounds.width = size.width;
			}
			if (compBounds.height < size.height) {
				compBounds.height = size.height;
			}
			size = LayoutSize.MAXIMUM.get(mComponent);
			if (compBounds.width > size.width) {
				compBounds.width = size.width;
			}
			if (compBounds.height > size.height) {
				compBounds.height = size.height;
			}
		}
		mComponent.setBounds(Alignment.position(bounds, compBounds, getHorizontalAlignment(), getVerticalAlignment()));
	}