Mercurial > hg > ltpda
view src/MPipeline2/src/mpipeline/ltpdapreferences/RepositoryDialog.java @ 33:5e7477b94d94 database-connection-manager
Add known repositories list to LTPDAPreferences
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Mon, 05 Dec 2011 16:20:06 +0100 |
parents | |
children | dd93c9ba6624 |
line wrap: on
line source
package mpipeline.ltpdapreferences; import java.util.HashSet; import javax.swing.DefaultComboBoxModel; import javax.swing.table.TableModel; public class RepositoryDialog extends javax.swing.JDialog { public boolean cancelled = true; public String hostname; public String database; public String username; private TableModel model; public RepositoryDialog(java.awt.Window parent, TableModel model) { super(parent, java.awt.Dialog.ModalityType.APPLICATION_MODAL); this.model = model; initComponents(); initHostnameCombo(); initDatabaseCombo(); initUsernameCombo(); super.setLocationRelativeTo(parent); } public RepositoryDialog(java.awt.Frame parent) { super(parent, true); initComponents(); super.setLocationRelativeTo(parent); } public RepositoryDialog() { super(new java.awt.Frame(), true); initComponents(); } @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jLabel9 = new javax.swing.JLabel(); jLabel10 = new javax.swing.JLabel(); jLabel11 = new javax.swing.JLabel(); databaseCombo = new javax.swing.JComboBox(); hostnameCombo = new javax.swing.JComboBox(); usernameCombo = new javax.swing.JComboBox(); okButton = new javax.swing.JButton(); cancelButton = new javax.swing.JButton(); setTitle("Database connection"); setLocationByPlatform(true); setModal(true); setResizable(false); jLabel9.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); jLabel9.setText("Hostname:"); jLabel10.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); jLabel10.setText("Database:"); jLabel11.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT); jLabel11.setText("Username:"); databaseCombo.setEditable(true); hostnameCombo.setEditable(true); hostnameCombo.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { hostnameComboActionPerformed(evt); } }); usernameCombo.setEditable(true); okButton.setText("Ok"); okButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { okButtonActionPerformed(evt); } }); cancelButton.setText("Cancel"); cancelButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { cancelButtonActionPerformed(evt); } }); org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .addContainerGap() .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .add(jLabel9) .add(18, 18, 18) .add(hostnameCombo, 0, 240, Short.MAX_VALUE)) .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup() .add(jLabel10) .add(21, 21, 21) .add(databaseCombo, 0, 240, Short.MAX_VALUE)) .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup() .add(cancelButton) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(okButton)) .add(layout.createSequentialGroup() .add(jLabel11) .add(18, 18, 18) .add(usernameCombo, 0, 240, Short.MAX_VALUE))) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .addContainerGap() .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(hostnameCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .add(jLabel9)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(databaseCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .add(jLabel10)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jLabel11) .add(usernameCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 12, Short.MAX_VALUE) .add(okButton) .addContainerGap()) .add(layout.createSequentialGroup() .addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED) .add(cancelButton) .addContainerGap()))) ); pack(); }// </editor-fold>//GEN-END:initComponents private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cancelButtonActionPerformed cancelled = true; doClose(); }//GEN-LAST:event_cancelButtonActionPerformed private void okButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okButtonActionPerformed cancelled = false; hostname = (String) hostnameCombo.getSelectedItem(); database = (String) databaseCombo.getSelectedItem(); username = (String) usernameCombo.getSelectedItem(); doClose(); }//GEN-LAST:event_okButtonActionPerformed private void hostnameComboActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_hostnameComboActionPerformed initDatabaseCombo(); initUsernameCombo(); }//GEN-LAST:event_hostnameComboActionPerformed private void initHostnameCombo() { HashSet<String> hostnames = new HashSet<String>(); int rows = model.getRowCount(); for (int i = 0; i < rows; i++) { hostnames.add((String) model.getValueAt(i, 0)); } hostnameCombo.setModel(new DefaultComboBoxModel(hostnames.toArray())); } private void initDatabaseCombo() { HashSet<String> databases = new HashSet<String>(); hostname = (String) hostnameCombo.getSelectedItem(); int rows = model.getRowCount(); for (int i = 0; i < rows; i++) { if (hostname.equals((String) model.getValueAt(i, 0))) { databases.add((String) model.getValueAt(i, 1)); } } databaseCombo.setModel(new DefaultComboBoxModel(databases.toArray())); } private void initUsernameCombo() { HashSet<String> usernames = new HashSet<String>(); hostname = (String) hostnameCombo.getSelectedItem(); int rows = model.getRowCount(); for (int i = 0; i < rows; i++) { if (hostname.equals((String) model.getValueAt(i, 0))) { usernames.add((String) model.getValueAt(i, 2)); } } usernameCombo.setModel(new DefaultComboBoxModel(usernames.toArray())); } private void doClose() { setVisible(false); dispose(); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton cancelButton; private javax.swing.JComboBox databaseCombo; private javax.swing.JComboBox hostnameCombo; private javax.swing.JLabel jLabel10; private javax.swing.JLabel jLabel11; private javax.swing.JLabel jLabel9; private javax.swing.JButton okButton; private javax.swing.JComboBox usernameCombo; // End of variables declaration//GEN-END:variables }