@Override
  public void layoutContainer(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);
  }
@Override
  public void layoutContainer(Container parent)