void showPopup() {
    if (!isEnabled()) return;
    final BaseListPopupStep<String> list = new BaseListPopupStep<>(null, myItems) {
      @Override
      public PopupStep<?> onChosen(@NlsContexts.Label String selectedValue, boolean finalChoice) {
        setSelectedItem(selectedValue);
        if (myConsumer != null) myConsumer.accept(selectedValue);
        return super.onChosen(selectedValue, finalChoice);
      }

      @Override
      public int getDefaultOptionIndex() {
        return myItems.indexOf(mySelectedItem);
      }
    };
    final ListPopup popup = JBPopupFactory.getInstance().createListPopup(list);
    popup.show(new RelativePoint(this, new Point(JBUIScale.scale(-2), getHeight() + JBUIScale.scale(2))));
  }
void showPopup()