/* * EuroCarbDB, a framework for carbohydrate bioinformatics * * Copyright (c) 2006-2009, Eurocarb project, or third-party contributors as * indicated by the @author tags or express copyright attribution * statements applied by the authors. * * This copyrighted material is made available to anyone wishing to use, modify, * copy, or redistribute it subject to the terms and conditions of the GNU * Lesser General Public License, as published by the Free Software Foundation. * A copy of this license accompanies this distribution in the file LICENSE.txt. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License * for more details. * * Last commit: $Rev: 1930 $ by $Author: david@nixbioinf.org $ on $Date:: 2010-07-29 #$ */ /** @author Alessio Ceroni (a.ceroni@imperial.ac.uk) */ package org.eurocarbdb.application.glycoworkbench; import org.eurocarbdb.application.glycanbuilder.*; public class FragmentOptionsDialog extends EscapeDialog implements java.awt.event.ActionListener { private FragmentOptions theFragmentOptions; /** Creates new form FragmentOptionsDialog */ public FragmentOptionsDialog(java.awt.Frame parent, FragmentOptions frag_opt) { super(parent,true); theFragmentOptions = frag_opt; initComponents(); fillComponents(); setSelections(); setTraversal(); setActions(); enableItems(); // set location setLocationRelativeTo(parent); pack(); } private void fillComponents() { field_no_cleavages.setModel(new javax.swing.SpinnerNumberModel(1,1,5,1)); field_no_crossrings.setModel(new javax.swing.SpinnerNumberModel(0,0,5,1)); } private void setSelections() { field_afragments.setSelected(theFragmentOptions.ADD_AFRAGMENTS); field_bfragments.setSelected(theFragmentOptions.ADD_BFRAGMENTS); field_cfragments.setSelected(theFragmentOptions.ADD_CFRAGMENTS); field_xfragments.setSelected(theFragmentOptions.ADD_XFRAGMENTS); field_yfragments.setSelected(theFragmentOptions.ADD_YFRAGMENTS); field_zfragments.setSelected(theFragmentOptions.ADD_ZFRAGMENTS); field_internal_fragments.setSelected(theFragmentOptions.INTERNAL_FRAGMENTS); field_no_cleavages.setValue(theFragmentOptions.MAX_NO_CLEAVAGES); field_no_crossrings.setValue(theFragmentOptions.MAX_NO_CROSSRINGS); } private void setTraversal() { CustomFocusTraversalPolicy tp = new CustomFocusTraversalPolicy(); tp.addComponent(field_bfragments); tp.addComponent(field_cfragments); tp.addComponent(field_yfragments); tp.addComponent(field_zfragments); tp.addComponent(field_afragments); tp.addComponent(field_xfragments); tp.addComponent(field_internal_fragments); tp.addComponent(field_no_cleavages); tp.addComponent(field_no_crossrings); tp.addComponent(button_ok); tp.addComponent(button_cancel); this.setFocusTraversalPolicy(tp); getRootPane().setDefaultButton(button_ok); } private void setActions() { button_ok.addActionListener(this); button_cancel.addActionListener(this); } private void enableItems() { } private void retrieveData() { theFragmentOptions.ADD_AFRAGMENTS = field_afragments.isSelected(); theFragmentOptions.ADD_BFRAGMENTS = field_bfragments.isSelected(); theFragmentOptions.ADD_CFRAGMENTS = field_cfragments.isSelected(); theFragmentOptions.ADD_XFRAGMENTS = field_xfragments.isSelected(); theFragmentOptions.ADD_YFRAGMENTS = field_yfragments.isSelected(); theFragmentOptions.ADD_ZFRAGMENTS = field_zfragments.isSelected(); theFragmentOptions.INTERNAL_FRAGMENTS = field_internal_fragments.isSelected(); theFragmentOptions.MAX_NO_CLEAVAGES = (Integer)field_no_cleavages.getValue(); theFragmentOptions.MAX_NO_CROSSRINGS = (Integer)field_no_crossrings.getValue(); } public void actionPerformed(java.awt.event.ActionEvent e) { String action = e.getActionCommand(); if (action == "OK") { retrieveData(); return_status = action; closeDialog(); } else if (action == "Cancel"){ return_status = action; closeDialog(); } } /** 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. */ // <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents private void initComponents() { field_bfragments = new javax.swing.JCheckBox(); jLabel1 = new javax.swing.JLabel(); field_cfragments = new javax.swing.JCheckBox(); field_yfragments = new javax.swing.JCheckBox(); field_zfragments = new javax.swing.JCheckBox(); jLabel3 = new javax.swing.JLabel(); field_afragments = new javax.swing.JCheckBox(); field_xfragments = new javax.swing.JCheckBox(); jLabel2 = new javax.swing.JLabel(); jSeparator1 = new javax.swing.JSeparator(); button_cancel = new javax.swing.JButton(); button_ok = new javax.swing.JButton(); jLabel4 = new javax.swing.JLabel(); field_no_crossrings = new javax.swing.JSpinner(); field_no_cleavages = new javax.swing.JSpinner(); field_internal_fragments = new javax.swing.JCheckBox(); setTitle("Fragment options"); addWindowListener(new java.awt.event.WindowAdapter() { public void windowClosing(java.awt.event.WindowEvent evt) { closeDialog(); } }); field_bfragments.setText("B fragment"); field_bfragments.setActionCommand("B fragments"); field_bfragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_bfragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); jLabel1.setText("Fragment types"); field_cfragments.setText("C fragments"); field_cfragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_cfragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); field_yfragments.setText("Y fragments"); field_yfragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_yfragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); field_zfragments.setText("Z fragments"); field_zfragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_zfragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); jLabel3.setText("Cross ring fragments"); field_afragments.setText("A fragments"); field_afragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_afragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); field_xfragments.setText("X fragments"); field_xfragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_xfragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); jLabel2.setText("Max n.o. cleavages"); button_cancel.setText("Cancel"); button_ok.setText("OK"); jLabel4.setText("Max n.o. cross rings"); field_internal_fragments.setText("Internal fragments"); field_internal_fragments.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); field_internal_fragments.setMargin(new java.awt.Insets(0, 0, 0, 0)); org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this.getContentPane()); this.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(jSeparator1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 278, Short.MAX_VALUE) .add(layout.createSequentialGroup() .add(65, 65, 65) .add(button_ok) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(button_cancel)) .add(layout.createSequentialGroup() .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(jLabel3) .add(jLabel1) .add(jLabel2) .add(jLabel4)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(field_xfragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_afragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_zfragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_yfragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_cfragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_bfragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(field_internal_fragments, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 133, Short.MAX_VALUE) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING, false) .add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup() .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_no_crossrings)) .add(org.jdesktop.layout.GroupLayout.LEADING, field_no_cleavages, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 63, Short.MAX_VALUE))))) .addContainerGap()) ); layout.linkSize(new java.awt.Component[] {button_cancel, button_ok}, org.jdesktop.layout.GroupLayout.HORIZONTAL); layout.setVerticalGroup( layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING) .add(layout.createSequentialGroup() .addContainerGap() .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jLabel1) .add(field_bfragments)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_cfragments) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_yfragments) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_zfragments) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jLabel3) .add(field_afragments)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_xfragments) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(field_internal_fragments) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jLabel2) .add(field_no_cleavages, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(jLabel4) .add(field_no_crossrings, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .add(jSeparator1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE) .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED) .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE) .add(button_ok) .add(button_cancel)) .addContainerGap()) ); pack(); }// </editor-fold>//GEN-END:initComponents /** Closes the dialog */ private void closeDialog() {//GEN-FIRST:event_closeDialog setVisible(false); dispose(); }//GEN-LAST:event_closeDialog // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton button_cancel; private javax.swing.JButton button_ok; private javax.swing.JCheckBox field_afragments; private javax.swing.JCheckBox field_bfragments; private javax.swing.JCheckBox field_cfragments; private javax.swing.JCheckBox field_xfragments; private javax.swing.JCheckBox field_yfragments; private javax.swing.JCheckBox field_zfragments; private javax.swing.JCheckBox field_internal_fragments; private javax.swing.JSpinner field_no_cleavages; private javax.swing.JSpinner field_no_crossrings; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JSeparator jSeparator1; // End of variables declaration//GEN-END:variables }