/*
*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;
}
}