void () { myRootNode.removeAllChildren(); final ArrayList<PsiMethod> methods = new ArrayList<>(myData.keySet()); methods.sort(Comparator.comparing(PsiMethod::getName).thenComparingInt(o -> o.getParameterList().getParametersCount())); for (PsiMethod method : methods) { final PsiParameter[] params = method.getParameterList().getParameters(); final DefaultMutableTreeNode methodNode = new DefaultMutableTreeNode(method, true); myRootNode.add(methodNode); for (final PsiParameter parameter : params) { methodNode.add(new DefaultMutableTreeNode(parameter, false)); } } final ListTreeTableModelOnColumns tableModel = (ListTreeTableModelOnColumns)myParamsTable.getTableModel(); tableModel.reload(); TreeUtil.expandAll(myParamsTable.getTree()); myParamsTable.revalidate(); }