void (Container parent) { List<UIPluginGroup> groups = ((PluginsGroupComponent)parent).getGroups(); int width = parent.getWidth(); int y = 0; int groupGap = myGroupGap.get(); int lines = 0; myMiddleLineHeight = 0; for (UIPluginGroup group : groups) { Component component = group.panel; int height = component.getPreferredSize().height; component.setBounds(0, y, width, height); y += height; for (ListPluginComponent plugin : group.plugins) { int lineHeight = plugin.getPreferredSize().height; plugin.setBounds(0, y, width, lineHeight); y += lineHeight; myMiddleLineHeight += lineHeight; } lines += group.plugins.size(); y += groupGap; } calculateLineHeight(lines); }