/* *Copyright 2007, 2011 CCLS Columbia University (USA), LIFO University of Orl��ans (France), BRGM (France) * *Authors: Cyril Nortet, Xiangrong Kong, Ansaf Salleb-Aouissi, Christel Vrain, Daniel Cassard * *This file is part of QuantMiner. * *QuantMiner is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version. * *QuantMiner 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 General Public License for more details. * *You should have received a copy of the GNU General Public License along with QuantMiner. If not, see <http://www.gnu.org/licenses/>. */ package src.graphicalInterface; import javax.swing.*; import src.simulatedAnnealing.*; import src.solver.*; import src.tools.*; public class PanelSimulatedParam extends PanelBaseParam {//step 3 technique parameters /** Creates new form PanneauParamGenetique */ public PanelSimulatedParam(ResolutionContext contexteResolution) { super(contexteResolution); ImageIcon iconeRetourDefaut = null; initComponents(); // Ic�nes sur les boutons : iconeRetourDefaut = new ImageIcon( ENV.REPERTOIRE_RESSOURCES + "retour_defaut.jpg" ); jButtonDefautIterations.setIcon(iconeRetourDefaut); jButtonDefautReglesParall.setIcon(iconeRetourDefaut); if (m_contexteResolution == null) return; SimulatedAnnealingParameters parametresRecuitSimule = m_contexteResolution.m_parametresTechRecuitSimule; // Initialisation du contenu des champs : jTextNombreIterations.setText( String.valueOf( parametresRecuitSimule.m_iNombreIterations ) ); jTextReglesParallelles.setText( String.valueOf( parametresRecuitSimule.m_iNombreSolutionsParalleles ) ); } /** 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 jTextNombreIterations = new javax.swing.JTextField(); jLabelNombreIterations = new javax.swing.JLabel(); jLabelReglesParallelles = new javax.swing.JLabel(); jTextReglesParallelles = new javax.swing.JTextField(); jButtonDefautIterations = new javax.swing.JButton(); jButtonDefautReglesParall = new javax.swing.JButton(); setLayout(null); setPreferredSize(new java.awt.Dimension(410, 150)); jTextNombreIterations.setText("jTextField1"); add(jTextNombreIterations); jTextNombreIterations.setBounds(330, 20, 60, 20); jLabelNombreIterations.setText("Nombre de tentatives d'am\u00e9lioration de la r\u00e8gle :"); add(jLabelNombreIterations); jLabelNombreIterations.setBounds(20, 20, 290, 16); jLabelReglesParallelles.setText("Nombre de r\u00e8gles potentielles \u00e0 tester en parall\u00e8le :"); add(jLabelReglesParallelles); jLabelReglesParallelles.setBounds(20, 50, 300, 16); jTextReglesParallelles.setText("jTextField1"); add(jTextReglesParallelles); jTextReglesParallelles.setBounds(330, 50, 60, 20); jButtonDefautIterations.setBackground(new java.awt.Color(255, 255, 255)); jButtonDefautIterations.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonDefautIterationsActionPerformed(evt); } }); add(jButtonDefautIterations); jButtonDefautIterations.setBounds(400, 20, 20, 20); jButtonDefautReglesParall.setBackground(new java.awt.Color(255, 255, 255)); jButtonDefautReglesParall.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButtonDefautReglesParallActionPerformed(evt); } }); add(jButtonDefautReglesParall); jButtonDefautReglesParall.setBounds(400, 50, 20, 20); }//GEN-END:initComponents private void jButtonDefautReglesParallActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonDefautReglesParallActionPerformed jTextReglesParallelles.setText( String.valueOf(SimulatedAnnealingParameters.DEFAUT_NBPARALL) ); }//GEN-LAST:event_jButtonDefautReglesParallActionPerformed private void jButtonDefautIterationsActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButtonDefautIterationsActionPerformed jTextNombreIterations.setText( String.valueOf(SimulatedAnnealingParameters.DEFAUT_NBITER) ); }//GEN-LAST:event_jButtonDefautIterationsActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton jButtonDefautIterations; private javax.swing.JButton jButtonDefautReglesParall; private javax.swing.JLabel jLabelNombreIterations; private javax.swing.JLabel jLabelReglesParallelles; private javax.swing.JTextField jTextNombreIterations; private javax.swing.JTextField jTextReglesParallelles; // End of variables declaration//GEN-END:variables public boolean EnregistrerParametres() { int iNombreIterations = 0; int iNombreSolutionsParalleles = 0; SimulatedAnnealingParameters parametresTechnique = m_contexteResolution.m_parametresTechRecuitSimule; if (parametresTechnique == null) return true; // M�morisation des param�tres : try { iNombreIterations = Integer.parseInt( jTextNombreIterations.getText() ); parametresTechnique.m_iNombreIterations = iNombreIterations; } catch (NumberFormatException e) { return false; } try { iNombreSolutionsParalleles = Integer.parseInt( jTextReglesParallelles.getText() ); parametresTechnique.m_iNombreSolutionsParalleles = iNombreSolutionsParalleles; } catch (NumberFormatException e) { return false; } return true; } }