2023-04-01 09:54:28 +02:00
|
|
|
package fenetres;
|
|
|
|
|
|
|
|
import java.awt.BorderLayout;
|
|
|
|
import java.awt.Color;
|
|
|
|
import java.awt.FlowLayout;
|
|
|
|
import java.awt.Font;
|
|
|
|
import java.awt.event.ActionEvent;
|
|
|
|
import java.awt.event.ActionListener;
|
|
|
|
import java.awt.event.MouseEvent;
|
|
|
|
import java.awt.event.MouseListener;
|
|
|
|
|
|
|
|
import javax.swing.ImageIcon;
|
|
|
|
import javax.swing.JButton;
|
|
|
|
import javax.swing.JFrame;
|
|
|
|
import javax.swing.JLabel;
|
|
|
|
import javax.swing.JPanel;
|
|
|
|
import javax.swing.JScrollPane;
|
|
|
|
import javax.swing.JTable;
|
|
|
|
import javax.swing.ListSelectionModel;
|
|
|
|
import javax.swing.SwingConstants;
|
|
|
|
import javax.swing.event.ListSelectionEvent;
|
|
|
|
import javax.swing.event.ListSelectionListener;
|
|
|
|
|
|
|
|
import MEPTL.commandes;
|
|
|
|
import action.actOpenBaseEvaluation;
|
2024-04-10 12:29:17 +02:00
|
|
|
import baseEvaluations.chargeEvaluation;
|
2023-04-01 09:54:28 +02:00
|
|
|
import baseEvaluations.myTableBaseEvaluation;
|
2023-04-23 16:12:19 +02:00
|
|
|
import net.miginfocom.swing.MigLayout;
|
2023-04-01 09:54:28 +02:00
|
|
|
|
|
|
|
public class chargeBaseAuDemarrage extends JFrame {
|
|
|
|
|
|
|
|
private static final long serialVersionUID = 1L;
|
|
|
|
private myTableBaseEvaluation model = new myTableBaseEvaluation();
|
|
|
|
private JTable table= new JTable();
|
|
|
|
private JPanel panelHaut = new JPanel();
|
|
|
|
private JPanel panelBas = new JPanel();
|
|
|
|
JLabel lblInformationBaseEvluation = new JLabel("");
|
|
|
|
int indexSelect=0;
|
|
|
|
ListSelectionModel lsm = null;
|
|
|
|
JScrollPane scrollPane = new JScrollPane();
|
|
|
|
private final JButton btnCheminVersBaseDonnees = new JButton("<html>Travailler avec une autre base<br>d'évaluation</html>");
|
2023-04-04 14:29:25 +02:00
|
|
|
private final JPanel panelGauche = new JPanel();
|
|
|
|
private final JPanel panelDroite = new JPanel();
|
2023-04-23 16:12:19 +02:00
|
|
|
private final JLabel label = new JLabel(commandes.PathBaseEvaluations);
|
2023-04-01 09:54:28 +02:00
|
|
|
|
|
|
|
public chargeBaseAuDemarrage() {
|
|
|
|
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
|
|
|
|
|
|
|
setBounds(100, 100, 1200, 600);
|
|
|
|
int screenWidth = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getWidth();
|
|
|
|
int screenHeight = (int) java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment().getMaximumWindowBounds().getHeight();
|
|
|
|
setLocation(( (screenWidth) - getWidth()) / 2, (screenHeight - getHeight()) / 2);
|
|
|
|
|
|
|
|
ImageIcon img = new ImageIcon(getClass().getResource("/evalwriter.png") );
|
|
|
|
setIconImage(img.getImage());
|
|
|
|
setTitle(commandes.Titre + " - La base de données des évaluations");
|
|
|
|
|
|
|
|
getContentPane().setLayout(new BorderLayout(2, 2));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
model.addOrUpdate();
|
|
|
|
table = new JTable(model);
|
|
|
|
scrollPane = new JScrollPane(table);
|
|
|
|
|
|
|
|
//Add the scroll pane to this panel.
|
|
|
|
getContentPane().add(scrollPane,BorderLayout.CENTER);
|
2023-04-23 16:12:19 +02:00
|
|
|
panelBas.setLayout(new MigLayout("", "[394px][394px][]", "[53px]"));
|
2023-04-01 09:54:28 +02:00
|
|
|
|
2023-04-23 16:12:19 +02:00
|
|
|
panelBas.add(label, "flowy,cell 0 0,grow");
|
2023-04-04 14:29:25 +02:00
|
|
|
|
2023-04-01 09:54:28 +02:00
|
|
|
|
|
|
|
getContentPane().add(panelBas, BorderLayout.SOUTH);
|
2023-04-23 16:12:19 +02:00
|
|
|
btnCheminVersBaseDonnees.setForeground(new Color(0, 128, 192));
|
|
|
|
btnCheminVersBaseDonnees.setFont(new Font("Tahoma", Font.BOLD, 16));
|
|
|
|
btnCheminVersBaseDonnees.setIcon(new ImageIcon(chargeBaseAuDemarrage.class.getResource("/resources/sauvegardehistoriqueevaluation.png")));
|
|
|
|
btnCheminVersBaseDonnees.setSelectedIcon(new ImageIcon(chargeBaseAuDemarrage.class.getResource("/resources/sauvegardehistoriqueevaluation.png")));
|
|
|
|
panelBas.add(btnCheminVersBaseDonnees, "cell 2 0,alignx right,growy");
|
2024-04-07 19:18:49 +02:00
|
|
|
lblInformationBaseEvluation.setIcon(new ImageIcon(chargeBaseAuDemarrage.class.getResource("/resources/accueilChargeEvaluation.png")));
|
2023-04-01 09:54:28 +02:00
|
|
|
|
|
|
|
//*Le haut
|
|
|
|
lblInformationBaseEvluation.setHorizontalAlignment(SwingConstants.CENTER);
|
|
|
|
getContentPane().add(panelHaut, BorderLayout.NORTH);
|
|
|
|
lblInformationBaseEvluation.setFont(new Font("Tahoma", Font.BOLD, 16));
|
|
|
|
panelHaut.add(lblInformationBaseEvluation);
|
|
|
|
|
|
|
|
|
|
|
|
//*Détection de la ligne sélectionnée
|
|
|
|
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
|
2023-04-04 14:29:25 +02:00
|
|
|
FlowLayout flowLayout_1 = (FlowLayout) panelGauche.getLayout();
|
|
|
|
flowLayout_1.setHgap(10);
|
|
|
|
|
|
|
|
getContentPane().add(panelGauche, BorderLayout.WEST);
|
|
|
|
FlowLayout flowLayout = (FlowLayout) panelDroite.getLayout();
|
|
|
|
flowLayout.setHgap(10);
|
|
|
|
|
|
|
|
getContentPane().add(panelDroite, BorderLayout.EAST);
|
2023-04-01 09:54:28 +02:00
|
|
|
ListSelectionModel rowSM = table.getSelectionModel();
|
|
|
|
rowSM.addListSelectionListener(new ListSelectionListener() {
|
|
|
|
@Override
|
|
|
|
public void valueChanged(ListSelectionEvent e) {
|
|
|
|
//Ignore extra messages.
|
|
|
|
if (e.getValueIsAdjusting()) return;
|
|
|
|
lsm = (ListSelectionModel)e.getSource();
|
|
|
|
if (lsm.isSelectionEmpty()) {
|
|
|
|
System.out.println("No rows are selected.");
|
|
|
|
} else {
|
|
|
|
indexSelect = lsm.getMinSelectionIndex();
|
|
|
|
System.out.println("Row " + indexSelect + " is now selected.");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
ListenerAction();
|
|
|
|
setVisible(true);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private void ListenerAction() {
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Quitter le fenêtre.</br>
|
|
|
|
*/
|
|
|
|
addWindowListener(new java.awt.event.WindowAdapter() {
|
|
|
|
@Override
|
|
|
|
public void windowClosing(java.awt.event.WindowEvent windowEvent) {
|
|
|
|
dispose();
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Chargement d'une évaluation par double click.
|
|
|
|
*/
|
|
|
|
table.addMouseListener( new MouseListener() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mouseClicked(MouseEvent e) {
|
|
|
|
if (e.getClickCount() == 2) {
|
|
|
|
if (e.getClickCount() == 2 && e.getButton() == MouseEvent.BUTTON1) {
|
|
|
|
System.out.println("double clicked");
|
|
|
|
if(lsm!=null) {
|
|
|
|
if (!lsm.isSelectionEmpty()) {
|
|
|
|
indexSelect = lsm.getMinSelectionIndex();
|
2024-04-10 12:29:17 +02:00
|
|
|
chargeEvaluation.chargeEnMémoireEvaluationSelected(indexSelect);
|
2023-04-01 09:54:28 +02:00
|
|
|
commandes.IndexEvaluationCharger = indexSelect;
|
|
|
|
evaluate.getInstance();
|
|
|
|
dispose();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mousePressed(MouseEvent e) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mouseReleased(MouseEvent e) {
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mouseEntered(MouseEvent e) {
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public void mouseExited(MouseEvent e) {
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Bouton chargement depuis un autre emplacement de la base de données.
|
|
|
|
*/
|
|
|
|
btnCheminVersBaseDonnees.addActionListener(new ActionListener() {
|
|
|
|
public void actionPerformed(ActionEvent e) {
|
2024-04-09 14:50:03 +02:00
|
|
|
new ChargePathBaseEvaluation();
|
2023-04-01 09:54:28 +02:00
|
|
|
new actOpenBaseEvaluation();
|
2023-04-23 16:12:19 +02:00
|
|
|
label.setText(commandes.PathBaseEvaluations);
|
2023-04-01 09:54:28 +02:00
|
|
|
model.addOrUpdate();
|
|
|
|
table = new JTable(model);
|
2023-04-23 16:12:19 +02:00
|
|
|
revalidate();
|
2023-04-01 09:54:28 +02:00
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|