void (final String authRealm, final boolean authSaveAllowed) { myPanel = new JPanel(new GridBagLayout()); final GridBagConstraints gb = new GridBagConstraints(0, 0, 1, 1, 0, 0, GridBagConstraints.WEST, GridBagConstraints.NONE, JBUI.insets(1), 0, 0); gb.fill = GridBagConstraints.HORIZONTAL; gb.gridwidth = 2; gb.weightx = 0; JLabel label = new JLabel(SvnBundle.message("label.auth.authentication.realm", authRealm)); myPanel.add(label, gb); ++ gb.gridy; gb.gridwidth = 1; gb.weightx = 0; final JLabel certificatePath = new JLabel(SvnBundle.message("label.ssl.certificate.path")); myPanel.add(certificatePath, gb); myCertificatePath = new TextFieldWithBrowseButton(); myCertificatePath.addBrowseFolderListener( SvnBundle.message("dialog.edit.http.proxies.settings.dialog.select.ssl.client.certificate.path.title"), null, null, FileChooserDescriptorFactory.createSingleFileNoJarsDescriptor()); gb.weightx = 1; ++ gb.gridx; myPanel.add(myCertificatePath, gb); gb.gridx = 0; gb.weightx = 0; ++ gb.gridy; final JLabel certificatePassword = new JLabel(SvnBundle.message("label.ssl.certificate.password")); myPanel.add(certificatePassword, gb); ++ gb.gridx; gb.weightx = 1; myCertificatePassword = new JPasswordField(); myPanel.add(myCertificatePassword, gb); gb.gridx = 0; ++ gb.gridy; gb.weightx = 0; mySaveAuth = new JCheckBox(SvnBundle.message("checkbox.ssl.keep.for.current.session"), authSaveAllowed); mySaveAuth.setEnabled(authSaveAllowed); myPanel.add(mySaveAuth, gb); if (! authSaveAllowed) { ++ gb.gridy; gb.gridwidth = 2; final JLabel cannotSaveLabel = new JLabel(SvnBundle.message("svn.cannot.save.credentials.store-auth-creds")); cannotSaveLabel.setForeground(NamedColorUtil.getInactiveTextColor()); myPanel.add(cannotSaveLabel, gb); } }