code: public void addButton(final AbstractButton button) {
          WidgetUtils.setDefaultButtonStyle(button);
          final EmptyBorder baseBorder =
                  new EmptyBorder(WidgetUtils.BORDER_WIDE_WIDTH - 1, 9, WidgetUtils.BORDER_WIDE_WIDTH - 1, 9);
          if (getComponentCount() == 0) {
              button.setBorder(baseBorder);
          } else {
              final Component lastComponent = getComponent(getComponentCount() - 1);
              if (lastComponent instanceof AbstractButton) {
                  // previous component was also a button - add a line on the left
                  // side
                  final Border outsideBorder = new MatteBorder(0, 1, 0, 0, WidgetUtils.BG_COLOR_LESS_BRIGHT);
                  button.setBorder(new CompoundBorder(outsideBorder, baseBorder));
              } else {
                  button.setBorder(baseBorder);
              }
          }
          button.setOpaque(false);
          _buttons.add(button);
  
          add(button);
      }
docs: Adds a button to this {@link ComboButton}. Beware that this method does
  change the styling (colors, borders etc.) of the button to make it fit
  the {@link ComboButton}.
  
  @param button