Add UI components for outline

This commit is contained in:
2026-09-29 10:46:51 +02:00
parent 4a5f1a864e
commit 21faf82da6
12 changed files with 425 additions and 5 deletions

View File

@@ -35,6 +35,7 @@ public class NavBar extends JMenuBar implements INavBar {
private JMenu linearMenu;
private JMenu histogramMenu;
private JMenu morphologyMenu;
private Menu outlineMenu;
private NavPresenter presenter;
@@ -97,6 +98,12 @@ public class NavBar extends JMenuBar implements INavBar {
new MenuItem("Complexe", this::displayComplexeMorphology)
);
outlineMenu = new Menu("Contours","/cp_51_p1.jpg",
new MenuItem("Linéair", this::displayLinearOutline),
new MenuItem("Non-linéair", this::displayNonLinearOutline)
);
histogramMenu = new Menu("Histogramme","/report_48_hot.jpg",
new MenuItem("Afficher", "/report_32_hot.jpg",this::displayHistogram)
);
@@ -106,12 +113,14 @@ public class NavBar extends JMenuBar implements INavBar {
this.add(fourierMenu);
this.add(linearMenu);
this.add(morphologyMenu);
this.add(outlineMenu);
this.add(histogramMenu);
drawingMenu.setEnabled(false);
fourierMenu.setEnabled(false);
linearMenu.setEnabled(false);
morphologyMenu.setEnabled(false);
outlineMenu.setEnabled(false);
histogramMenu.setEnabled(false);
}
@@ -181,6 +190,7 @@ public class NavBar extends JMenuBar implements INavBar {
fourierMenu.setEnabled(true);
linearMenu.setEnabled(true);
morphologyMenu.setEnabled(true);
outlineMenu.setEnabled(true);
histogramMenu.setEnabled(true);
}
@@ -190,6 +200,7 @@ public class NavBar extends JMenuBar implements INavBar {
fourierMenu.setEnabled(false);
linearMenu.setEnabled(false);
morphologyMenu.setEnabled(false);
outlineMenu.setEnabled(false);
histogramMenu.setEnabled(false);
}
@@ -243,6 +254,15 @@ public class NavBar extends JMenuBar implements INavBar {
presenter.goToConvolution();
}
private void displayBasicMorphology(ActionEvent actionEvent) { presenter.goToBasicMorphology(); }
private void displayComplexeMorphology(ActionEvent actionEvent) { presenter.goToComplexMorphology(); }
private void displayLinearOutline(ActionEvent actionEvent) { presenter.goToLinearOutline(); }
private void displayNonLinearOutline(ActionEvent actionEvent) { presenter.goToNonLinearOutline();}
private void displayErrorMessage(String title, String message) {
JOptionPane.showMessageDialog(
this,
@@ -252,7 +272,4 @@ public class NavBar extends JMenuBar implements INavBar {
);
}
private void displayBasicMorphology(ActionEvent actionEvent) { presenter.goToBasicMorphology(); }
private void displayComplexeMorphology(ActionEvent actionEvent) { presenter.goToComplexMorphology(); }
}