package com.github.jmchilton.jgalaxy;
import com.github.jmchilton.jgalaxy.mvp.DialogDisplay;
import java.util.Map;
import javax.swing.DefaultComboBoxModel;
public class ConnectionDisplay extends DialogDisplay {
private final ConnectionPresenter connectionPresenter;
private final InstanceManager instanceManager;
/**
* Creates new form ConnectionDisplay
*/
public ConnectionDisplay(final ConnectionPresenter connectionPresenter,
final InstanceManager instanceManager) {
this.connectionPresenter = connectionPresenter;
this.instanceManager = instanceManager;
initComponents();
initGalaxyUrls();
}
private void initGalaxyUrls() {
final DefaultComboBoxModel model = ((DefaultComboBoxModel) galaxyUrlField.getModel());
for(final Map.Entry<String, String> entry : instanceManager.getStockGalaxyInstances().entrySet()) {
final String url = entry.getKey();
model.addElement(url);
}
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
galaxyUrlLabel = new javax.swing.JLabel();
apiKeyLabel = new javax.swing.JLabel();
apiKeyField = new javax.swing.JTextField();
galaxyUrlField = new javax.swing.JComboBox();
connectButton = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
galaxyUrlLabel.setText("Galaxy URL");
apiKeyLabel.setText("API Key");
galaxyUrlField.setEditable(true);
galaxyUrlField.setActionCommand("");
connectButton.setText("Connect");
connectButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
connectButtonActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(galaxyUrlLabel)
.addComponent(apiKeyLabel))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(apiKeyField)
.addComponent(galaxyUrlField, 0, 284, Short.MAX_VALUE)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGap(0, 0, Short.MAX_VALUE)
.addComponent(connectButton)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(galaxyUrlLabel)
.addComponent(galaxyUrlField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(apiKeyLabel)
.addComponent(apiKeyField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(connectButton)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>//GEN-END:initComponents
private void connectButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_connectButtonActionPerformed
connectionPresenter.connect(galaxyUrlField.getSelectedItem().toString(), apiKeyField.getText());
}//GEN-LAST:event_connectButtonActionPerformed
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JTextField apiKeyField;
private javax.swing.JLabel apiKeyLabel;
private javax.swing.JButton connectButton;
private javax.swing.JComboBox galaxyUrlField;
private javax.swing.JLabel galaxyUrlLabel;
// End of variables declaration//GEN-END:variables
}