public void initialize(Container container) {
JTextArea queryLabel = new JTextArea(originalQuery);
queryLabel.setRows(3);
queryLabel.setEditable(false);
GraphQueryPlan graphQueryPlan = result.getPlan()
.orElseThrow(() ->
new ShouldNeverHappenException("Sergey Ishchenko",
"GraphQueryPanel is initialized when explain or profile queries are executed"));
ListTreeTableModelOnColumns model = createModel(graphQueryPlan, result.isProfilePlan());
treeTable = new TreeTableView(model);
treeTable.setAutoCreateColumnsFromModel(true);
treeTable.setRootVisible(true);
treeTable.setCellSelectionEnabled(false);
treeTable.setRowSelectionAllowed(true);
treeTable.setAutoResizeMode(TreeTableView.AUTO_RESIZE_OFF);
treeTable.getTree().setShowsRootHandles(true);
DefaultTreeExpander expander = new DefaultTreeExpander(treeTable.getTree());
expander.expandAll();
initTreeCellRenderer(model);
JBLabel infoLabel = new JBLabel(getStatusText(result));
infoLabel.setHorizontalAlignment(SwingConstants.LEFT);
container.add(new JBScrollPane(queryLabel), BorderLayout.NORTH);
container.add(new JBScrollPane(treeTable, JBScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JBScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED), BorderLayout.CENTER);
container.add(infoLabel, BorderLayout.SOUTH);
new ColumnResizer(treeTable).resize();
}