X-Git-Url: https://harishankar.org/repos/?p=habeas.git;a=blobdiff_plain;f=src%2Fhabeas%2FDatabaseSettingsDialog.java;fp=src%2Fhabeas%2FDatabaseSettingsDialog.java;h=763361e9b0ae2627cf7c2f254ab22a79e60e6ff2;hp=c28c82d58194cb43e6f3406b8038fbbdad7356c6;hb=43efa7c67c7da936d3395345983dde4603253896;hpb=d70d1fecd85b5f5b7a6eea4ac59fd8926bb5fe8f diff --git a/src/habeas/DatabaseSettingsDialog.java b/src/habeas/DatabaseSettingsDialog.java index c28c82d..763361e 100644 --- a/src/habeas/DatabaseSettingsDialog.java +++ b/src/habeas/DatabaseSettingsDialog.java @@ -6,6 +6,7 @@ package habeas; import javax.swing.JFileChooser; +import javax.swing.JOptionPane; /** * @@ -36,6 +37,7 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { buttonChooseFile = new javax.swing.JButton(); buttonClose = new javax.swing.JButton(); buttonApply = new javax.swing.JButton(); + jButton1 = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Connection"); @@ -50,6 +52,7 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { } }); + buttonClose.setMnemonic('C'); buttonClose.setText("Close"); buttonClose.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { @@ -57,6 +60,7 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { } }); + buttonApply.setMnemonic('a'); buttonApply.setText("Apply"); buttonApply.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { @@ -64,6 +68,13 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { } }); + jButton1.setText("Create..."); + jButton1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jButton1ActionPerformed(evt); + } + }); + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( @@ -73,16 +84,18 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 139, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(0, 0, Short.MAX_VALUE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(layout.createSequentialGroup() - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(txtDatabaseURL, javax.swing.GroupLayout.PREFERRED_SIZE, 231, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(buttonApply, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addComponent(txtDatabaseURL, javax.swing.GroupLayout.DEFAULT_SIZE, 255, Short.MAX_VALUE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(buttonClose, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(buttonChooseFile, javax.swing.GroupLayout.DEFAULT_SIZE, 93, Short.MAX_VALUE)))) - .addContainerGap()) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(buttonChooseFile, javax.swing.GroupLayout.DEFAULT_SIZE, 109, Short.MAX_VALUE) + .addComponent(buttonApply, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE) + .addComponent(buttonClose, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) @@ -92,11 +105,12 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(txtDatabaseURL, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(buttonChooseFile)) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 29, Short.MAX_VALUE) + .addComponent(buttonChooseFile) + .addComponent(jButton1)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 22, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(buttonClose) - .addComponent(buttonApply)) + .addComponent(buttonApply) + .addComponent(buttonClose)) .addContainerGap()) ); @@ -105,7 +119,7 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { private void buttonApplyActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonApplyActionPerformed // TODO add your handling code here - Utility.setConnectionURL (txtDatabaseURL.getText()); + Utility.saveConnectionURL (txtDatabaseURL.getText()); }//GEN-LAST:event_buttonApplyActionPerformed private void buttonCloseActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonCloseActionPerformed @@ -122,6 +136,22 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { } }//GEN-LAST:event_buttonChooseFileActionPerformed + private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed + // TODO add your handling code here: + JFileChooser chooser = new JFileChooser (); + int i = chooser.showSaveDialog(this); + if (i == JFileChooser.APPROVE_OPTION) { + String db_path = chooser.getSelectedFile().getAbsolutePath(); + boolean rt = Utility.createDatabase (db_path); + if (rt == false) + JOptionPane.showMessageDialog(this, ERROR_CREATING_TABLE); + else + txtDatabaseURL.setText(db_path); + } + }//GEN-LAST:event_jButton1ActionPerformed + private static final String ERROR_CREATING_TABLE = "Error creating database. " + + "Please check connection settings and driver"; + /** * @param args the command line arguments */ @@ -169,6 +199,7 @@ public class DatabaseSettingsDialog extends javax.swing.JDialog { private javax.swing.JButton buttonApply; private javax.swing.JButton buttonChooseFile; private javax.swing.JButton buttonClose; + private javax.swing.JButton jButton1; private javax.swing.JLabel jLabel1; private javax.swing.JTextField txtDatabaseURL; // End of variables declaration//GEN-END:variables