protected @Nullable UnnamedConfigurable getItemConfigurable(final T item) {
    final Ref<UnnamedConfigurable> result = new Ref<>();
    TreeUtil.traverse((TreeNode)myTree.getModel().getRoot(), node -> {
      final NamedConfigurable<?> configurable = (NamedConfigurable<?>)((DefaultMutableTreeNode)node).getUserObject();
      if (configurable.getEditableObject() == item) {
        //noinspection unchecked
        result.set(((ItemConfigurable)configurable).myConfigurable);
        return false;
      }
      else {
        return true;
      }
    });
    return result.get();
  }
protected @Nullable UnnamedConfigurable getItemConfigurable(final T item)