PageRenderTime 20ms CodeModel.GetById 12ms RepoModel.GetById 1ms app.codeStats 0ms

/src/org/bitbucket/connectors/jetbrains/ui/BitbucketSettingsPanel.java

https://bitbucket.org/atlassian/jetbrains-bitbucket-connector/
Java | 77 lines | 58 code | 14 blank | 5 comment | 2 complexity | bd7204702af270392e6f24c24de5dac1 MD5 | raw file
  1. package org.bitbucket.connectors.jetbrains.ui;
  2. import com.intellij.ide.BrowserUtil;
  3. import com.intellij.openapi.project.ProjectManager;
  4. import com.intellij.openapi.ui.Messages;
  5. import org.bitbucket.connectors.jetbrains.BitbucketUtil;
  6. import javax.swing.*;
  7. import javax.swing.event.HyperlinkEvent;
  8. import javax.swing.event.HyperlinkListener;
  9. import java.awt.event.ActionEvent;
  10. import java.awt.event.ActionListener;
  11. /**
  12. * User: leha2000
  13. * Date: Apr 7, 2011
  14. * Time: 2:03:43 PM
  15. */
  16. public class BitbucketSettingsPanel {
  17. private JPanel myPane;
  18. private JTextField myLoginTextField;
  19. private JPasswordField myPasswordField;
  20. private JButton myTestButton;
  21. private JTextPane mySignupPane;
  22. private JButton myAddSSHKeyButton;
  23. public BitbucketSettingsPanel() {
  24. String msg = BitbucketBundle.message("signup-on-bitbucket", "https://bitbucket.org/account/signup/");
  25. mySignupPane.setText(msg);
  26. mySignupPane.setBackground(myPane.getBackground());
  27. mySignupPane.addHyperlinkListener(new HyperlinkListener() {
  28. public void hyperlinkUpdate(HyperlinkEvent e) {
  29. if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
  30. BrowserUtil.launchBrowser(e.getURL().toExternalForm());
  31. }
  32. }
  33. });
  34. myTestButton.addActionListener(new ActionListener() {
  35. public void actionPerformed(ActionEvent e) {
  36. boolean result = BitbucketUtil.checkCredentials(ProjectManager.getInstance().getDefaultProject(), getLogin(), getPassword());
  37. Messages.showInfoMessage(
  38. result ? BitbucketBundle.message("connection-success") : BitbucketBundle.message("cannot-login"),
  39. result ? BitbucketBundle.message("success") : BitbucketBundle.message("failure"));
  40. }
  41. });
  42. myAddSSHKeyButton.addActionListener(new ActionListener() {
  43. public void actionPerformed(ActionEvent e) {
  44. BitbucketUtil.addSshKey(ProjectManager.getInstance().getDefaultProject(), myPane, getLogin(), getPassword());
  45. }
  46. });
  47. }
  48. public JComponent getPanel() {
  49. return myPane;
  50. }
  51. public void setLogin(String login) {
  52. myLoginTextField.setText(login);
  53. }
  54. public void setPassword(String password) {
  55. myPasswordField.setText(password);
  56. }
  57. public String getLogin() {
  58. return myLoginTextField.getText().trim();
  59. }
  60. public String getPassword() {
  61. return String.valueOf(myPasswordField.getPassword());
  62. }
  63. }