blob: 92f950d7d67c472fb572c6d5c469d8f6127b063b [file] [log] [blame]
package com.intellij.tasks.pivotal;
import com.intellij.openapi.project.Project;
import com.intellij.tasks.config.BaseRepositoryEditor;
import com.intellij.ui.components.JBLabel;
import com.intellij.util.Consumer;
import com.intellij.util.ui.FormBuilder;
import org.jetbrains.annotations.Nullable;
import javax.swing.*;
/**
* @author Dennis.Ushakov
*/
public class PivotalTrackerRepositoryEditor extends BaseRepositoryEditor<PivotalTrackerRepository> {
private JTextField myProjectId;
private JTextField myAPIKey;
private JBLabel myProjectIDLabel;
private JBLabel myAPIKeyLabel;
public PivotalTrackerRepositoryEditor(final Project project,
final PivotalTrackerRepository repository,
Consumer<PivotalTrackerRepository> changeListener) {
super(project, repository, changeListener);
myUserNameText.setVisible(false);
myUsernameLabel.setVisible(false);
myPasswordText.setVisible(false);
myPasswordLabel.setVisible(false);
myProjectId.setText(repository.getProjectId());
myAPIKey.setText(repository.getAPIKey());
myUseHttpAuthenticationCheckBox.setVisible(false);
}
@Override
public void apply() {
super.apply();
myRepository.setProjectId(myProjectId.getText().trim());
myRepository.setAPIKey(myAPIKey.getText().trim());
}
@Nullable
@Override
protected JComponent createCustomPanel() {
myProjectIDLabel = new JBLabel("Project ID:", SwingConstants.RIGHT);
myProjectId = new JTextField();
installListener(myProjectId);
myAPIKeyLabel = new JBLabel("API Token:", SwingConstants.RIGHT);
myAPIKey = new JTextField();
installListener(myAPIKey);
return FormBuilder.createFormBuilder().addLabeledComponent(myProjectIDLabel, myProjectId).addLabeledComponent(myAPIKeyLabel, myAPIKey)
.getPanel();
}
@Override
public void setAnchor(@Nullable final JComponent anchor) {
super.setAnchor(anchor);
myProjectIDLabel.setAnchor(anchor);
myAPIKeyLabel.setAnchor(anchor);
}
}