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

Binary file not shown.

View File

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