Dimension () { if (myMinimumButtonSize != null) myMinimumButtonSize.update(); Icon icon = getIcon(); Dimension size = icon.getIconWidth() < myMinimumButtonSize.width && icon.getIconHeight() < myMinimumButtonSize.height ? new Dimension(myMinimumButtonSize) : new Dimension(Math.max(myMinimumButtonSize.width, icon.getIconWidth() + myInsets.left + myInsets.right), Math.max(myMinimumButtonSize.height, icon.getIconHeight() + myInsets.top + myInsets.bottom)); JBInsets.addTo(size, getInsets()); return size; }