Ajout scrollbar dans les diagrammes UML

This commit is contained in:
2021-04-24 12:37:54 +02:00
parent 304be1f454
commit b1252a47c9
3 changed files with 29 additions and 0 deletions

View File

@@ -52,6 +52,16 @@ public class UmlDiagramController {
needToSave();
}
/**
* Retire un lien du diagramme.
*
* @param l Le lien à retirer.
*/
public void removeLink(Link l) {
_umlDiagram.removeLink(l);
needToSave();
}
/**
* Supprime l'ensemble des classes du diagramme.
*/

View File

@@ -24,6 +24,9 @@ public class UmlDiagramFrame extends CompositionFrame implements UmlToolbarListe
private boolean _viewGrips = false;
private int gripSize = 8;
private int _sizeX = 3000;
private int _sizeY = 3000;
private UmlDiagramController _umlDiagramController;
public enum ClassGrip {
@@ -52,6 +55,9 @@ public class UmlDiagramFrame extends CompositionFrame implements UmlToolbarListe
super();
this.setLayout(new BorderLayout());
_sizeX = 3000;
_sizeY = 3000;
_umlToolbar = new UmlToolbar();
_umlToolbar.addUmlToolbarListener(this);
this.add(_umlToolbar, BorderLayout.NORTH);
@@ -245,6 +251,7 @@ public class UmlDiagramFrame extends CompositionFrame implements UmlToolbarListe
}
};
_drawPanel.setBackground(new Color(218, 233, 244));
_drawPanel.setPreferredSize(new Dimension(_sizeX, _sizeY));
_drawPanel.addMouseListener(this);
_drawPanel.addMouseMotionListener(this);
JScrollPane scroll = new JScrollPane(_drawPanel);
@@ -343,6 +350,17 @@ public class UmlDiagramFrame extends CompositionFrame implements UmlToolbarListe
_selected = null;
}
/**
* Retire un lien de la composition UML.
*
* @param l Le lien à retirer.
*/
public void removeLink(Link l) {
//On supprime la classe principale
_umlDiagramController.removeLink(l);
_selected = null;
}
//Evenements souris
/**
@@ -504,6 +522,7 @@ public class UmlDiagramFrame extends CompositionFrame implements UmlToolbarListe
System.out.println("On supprime un élément.");
this.select(e.getX(), e.getY());
if (_selected instanceof Class) removeClass((Class) _selected);
else if (_selected instanceof Link) removeLink((Link) _selected);
break;
case COPY_TOOL:
System.out.println("On copie un élément.");