void (ActionGroup group, @NonNls String cardId, final String parentId) { JPanel card = new JPanel(new BorderLayout()); if (!USE_ICONS) { card.setOpaque(false); } JPanel withBottomFiller = new JPanel(new BorderLayout()); if (!USE_ICONS) { withBottomFiller.setOpaque(true); withBottomFiller.setBackground(Color.white); } withBottomFiller.add(card, BorderLayout.NORTH); myContent.add(withBottomFiller, cardId); List<JComponent> components = buildComponents(group, cardId); JPanel componentsPanel = new JPanel(new GridLayout(components.size(), 1, 5, 5)); if (!USE_ICONS) { componentsPanel.setOpaque(false); } componentsPanel.setBorder(new EmptyBorder(15, 15, 15, 15)); for (JComponent component : components) { componentsPanel.add(component); } card.add(componentsPanel, BorderLayout.CENTER); String title; title = group.getTemplatePresentation().getText(); card.add(new HeaderPanel(title, parentId), BorderLayout.NORTH); }