/* * Q2DataDialog.java * * Created on 17. September 2004, 20:13 */ package jake2.qcommon; import java.awt.*; import java.awt.DisplayMode; import java.awt.GraphicsEnvironment; import java.io.IOException; import javax.swing.*; import javax.swing.JFileChooser; import javax.swing.JPanel; /** * * @author hoz */ public class Q2DataDialog extends javax.swing.JDialog { /** Creates new form Q2DataDialog */ public Q2DataDialog() { super(); initComponents(); DisplayMode mode = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDisplayMode(); int x = (mode.getWidth() - getWidth()) / 2; int y = (mode.getHeight() - getHeight()) / 2; setLocation(x, y); } /** 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. */ private void initComponents() {//GEN-BEGIN:initComponents java.awt.GridBagConstraints gridBagConstraints; choosePanel = new javax.swing.JPanel(); statusPanel = new JPanel(); status = new JLabel("initializing Jake2..."); jTextField1 = new javax.swing.JTextField(); changeButton = new javax.swing.JButton(); installButton = new javax.swing.JButton(); exitButton = new javax.swing.JButton(); okButton = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); setTitle("Jake2 - Bytonic Software"); setResizable(false); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { formWindowClosing(evt); } }); choosePanel.setLayout(new java.awt.GridBagLayout()); choosePanel.setMaximumSize(new java.awt.Dimension(400, 100)); choosePanel.setMinimumSize(new java.awt.Dimension(400, 100)); choosePanel.setPreferredSize(new java.awt.Dimension(400, 100)); jTextField1.setPreferredSize(null); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.gridwidth = 2; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.weightx = 1.0; choosePanel.add(jTextField1, gridBagConstraints); changeButton.setText("change"); changeButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { changeButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 0; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; choosePanel.add(changeButton, gridBagConstraints); installButton.setText("Install"); installButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { installButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 1; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.WEST; choosePanel.add(installButton, gridBagConstraints); exitButton.setText("Exit"); exitButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { exitButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 1; gridBagConstraints.gridy = 1; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); choosePanel.add(exitButton, gridBagConstraints); okButton.setText("OK"); okButton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { okButtonActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 2; gridBagConstraints.gridy = 1; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.anchor = java.awt.GridBagConstraints.EAST; choosePanel.add(okButton, gridBagConstraints); //getContentPane().add(choosePanel, java.awt.BorderLayout.SOUTH); Jake2Canvas c = new Jake2Canvas(); getContentPane().add(c, BorderLayout.CENTER); statusPanel.setLayout(new java.awt.GridBagLayout()); statusPanel.setMaximumSize(new java.awt.Dimension(400, 100)); statusPanel.setMinimumSize(new java.awt.Dimension(400, 100)); statusPanel.setPreferredSize(new java.awt.Dimension(400, 100)); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 0; gridBagConstraints.gridwidth = 1; gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; gridBagConstraints.insets = new java.awt.Insets(10, 10, 10, 10); gridBagConstraints.weightx = 1.0; statusPanel.add(status, gridBagConstraints); getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH); pack(); }//GEN-END:initComponents private void installButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_installButtonActionPerformed // TODO add your handling code here: }//GEN-LAST:event_installButtonActionPerformed private void exitButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_exitButtonActionPerformed System.exit(1); dispose(); }//GEN-LAST:event_exitButtonActionPerformed private void okButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_okButtonActionPerformed Cvar.Set("cddir", dir); FS.setCDDir(); synchronized(this) { notifyAll(); } }//GEN-LAST:event_okButtonActionPerformed private void changeButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_changeButtonActionPerformed JFileChooser chooser = new JFileChooser(); chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); chooser.setDialogType(JFileChooser.CUSTOM_DIALOG); chooser.setMultiSelectionEnabled(false); chooser.setDialogTitle("choose a valid baseq2 directory"); chooser.showDialog(this, "OK"); dir = null; try { dir = chooser.getSelectedFile().getCanonicalPath(); } catch (IOException e) {} jTextField1.setText(dir); }//GEN-LAST:event_changeButtonActionPerformed private void formWindowClosing(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowClosing System.exit(1); dispose(); }//GEN-LAST:event_formWindowClosing /** * @param args the command line arguments */ public static void main(String args[]) { new Q2DataDialog().show(); System.out.println("Hi"); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton changeButton; private javax.swing.JButton exitButton; private javax.swing.JButton installButton; private Jake2Canvas canvas; private javax.swing.JPanel choosePanel; private JPanel statusPanel; private JLabel status; private javax.swing.JTextField jTextField1; private javax.swing.JButton okButton; // End of variables declaration//GEN-END:variables private String dir; void showChooseDialog() { getContentPane().remove(statusPanel); getContentPane().add(choosePanel, BorderLayout.SOUTH); validate(); repaint(); } void showStatus() { getContentPane().remove(choosePanel); getContentPane().add(statusPanel, BorderLayout.SOUTH); validate(); repaint(); } void setStatus(String text) { status.setText(text); } void testQ2Data() { while (FS.LoadFile("pics/colormap.pcx") == null) { showChooseDialog(); try { synchronized(this) { wait(); } } catch (InterruptedException e) {} } showStatus(); } static class Jake2Canvas extends Canvas { private Image image; Jake2Canvas() { setSize(400, 200); image = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/splash.png")); while (!Toolkit.getDefaultToolkit().prepareImage(image, -1, -1, null)) { try { Thread.sleep(50); } catch (InterruptedException e) {} } } /* (non-Javadoc) * @see java.awt.Component#paint(java.awt.Graphics) */ public void paint(Graphics g) { g.drawImage(image, 0, 0, null); } } }