78 lines
2.2 KiB
Java
78 lines
2.2 KiB
Java
package fr.iutfbleau.sae.vconverter;
|
||
/**
|
||
* Fenêtre principale du convertisseur.
|
||
*
|
||
* <p>
|
||
* Cette classe représente la vue principale de l’application.
|
||
* Elle regroupe les différents panneaux graphiques utilisés
|
||
* pour afficher les résultats de la conversion d’une image.
|
||
* </p>
|
||
*
|
||
*
|
||
*/
|
||
public class ConverterWindow {
|
||
|
||
|
||
private ImagePreviewPanel imagePreviewPanel;
|
||
private FrequencyTablePanel frequencyTablePanel;
|
||
private CodeTablePanel codeTablePanel;
|
||
|
||
/**
|
||
* Met à jour l’aperçu de l’image affichée dans la fenêtre.
|
||
*
|
||
* <p>
|
||
* Cette méthode est appelée par le contrôleur après le chargement
|
||
* de l’image. L’image reçue est simplement transmise
|
||
* au panneau d’aperçu pour être affichée.
|
||
* </p>
|
||
*
|
||
* @param img image à afficher dans l’aperçu
|
||
*/
|
||
public void setImagePreview(Object img) {
|
||
// mise à jour du ImagePreviewPanel avec l’image img
|
||
imagePreviewPanel.setImage(img);
|
||
}
|
||
|
||
/**
|
||
* Met à jour les tables de fréquences des composantes R, G et B.
|
||
*
|
||
* <p>
|
||
* Cette méthode reçoit les tableaux de fréquences calculés
|
||
* par le contrôleur et les transmet au panneau chargé
|
||
* de les afficher.
|
||
* </p>
|
||
*/
|
||
public void setFrequencyTable() {
|
||
// mise à jour des fréquences dans le FrequencyTablePanel
|
||
frequencyTablePanel.updateFrequencies();
|
||
}
|
||
|
||
/**
|
||
* Met à jour l’affichage des codes Huffman.
|
||
*
|
||
* <p>
|
||
* Les codes sont déjà calculés par le contrôleur.
|
||
* Cette méthode se contente de demander au panneau
|
||
* des codes de les afficher.
|
||
* </p>
|
||
*/
|
||
public void setHuffmanTable() {
|
||
// mise à jour des codes Huffman dans le CodeTablePanel
|
||
codeTablePanel.updateCodes();
|
||
}
|
||
|
||
/**
|
||
* Met à jour l’affichage des codes canoniques.
|
||
*
|
||
* <p>
|
||
* Cette méthode est utilisée après la génération
|
||
* des codes canoniques (Sprint 2).
|
||
* Elle ne fait aucun calcul et se limite à l’affichage.
|
||
* </p>
|
||
*/
|
||
public void setCanonicalTable() {
|
||
// mise à jour des codes canoniques dans le CodeTablePanel
|
||
codeTablePanel.updateCanonicalCodes();
|
||
}
|
||
}
|