void () { removeAll(); setLayout(new GridBagLayout()); if (myLabelText != null) { myLabel = new JLabel(myLabelText); this.add(myLabel, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, JBUI.insetsBottom(5), 0, 0)); myLabel.setLabelFor(myComponent); } this.add(myComponent, new GridBagConstraints(0, 1, 1, 1, 1.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, JBInsets.emptyInsets(), 0, 0)); if (myBrowseButtonActionListener != null) { if (myComponent instanceof ExtendableTextComponent) { ((ExtendableTextComponent)myComponent).addExtension(ExtendableTextComponent.Extension.create( getDefaultIcon(), getHoveredIcon(), getIconTooltip(), this::notifyActionListener)); new DumbAwareAction() { @Override public void actionPerformed(@NotNull AnActionEvent e) { notifyActionListener(); } }.registerCustomShortcutSet(new CustomShortcutSet(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, InputEvent.SHIFT_DOWN_MASK)), myComponent); } else { FixedSizeButton browseButton = new FixedSizeButton(getComponent()); myDoClickAction = new TextFieldWithBrowseButton.MyDoClickAction(browseButton); browseButton.setFocusable(false); browseButton.addActionListener(myBrowseButtonActionListener); myButtons.add(browseButton); this.add(browseButton, new GridBagConstraints(GridBagConstraints.RELATIVE, 1, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, JBUI.insetsLeft(2), 0, 0)); } } if (myViewerDialogTitle != null) { final FixedSizeButton showViewerButton = new FixedSizeButton(getComponent()); if (myBrowseButtonActionListener == null) { LOG.assertTrue(myDoClickAction == null); myDoClickAction = new TextFieldWithBrowseButton.MyDoClickAction(showViewerButton); } showViewerButton.setFocusable(false); showViewerButton.setIcon(AllIcons.Actions.ShowViewer); showViewerButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { Viewer viewer = new Viewer(); viewer.setTitle(myViewerDialogTitle); viewer.show(); } }); myButtons.add(showViewerButton); this.add(showViewerButton, new GridBagConstraints(GridBagConstraints.RELATIVE, 1, 1, 1, 0.0, 0.0, GridBagConstraints.WEST, GridBagConstraints.NONE, JBInsets.emptyInsets(), 0, 0)); } }