104 lines
2.3 KiB
Java
104 lines
2.3 KiB
Java
|
|
import javax.swing.*;
|
||
|
|
import java.awt.*;
|
||
|
|
import java.awt.event.MouseEvent;
|
||
|
|
import java.awt.event.MouseListener;
|
||
|
|
import java.awt.event.MouseMotionListener;
|
||
|
|
import java.io.Serializable;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gère une création qui est ajoutée à un projet
|
||
|
|
*/
|
||
|
|
public class Composition extends JPanel implements MouseListener, MouseMotionListener, Serializable {
|
||
|
|
public static int _compositionId = 0;
|
||
|
|
public static String UML_DIAGRAM = "UML Diagram";
|
||
|
|
|
||
|
|
private Project _project;
|
||
|
|
protected String _name;
|
||
|
|
protected String _type;
|
||
|
|
protected Object _toolbar;
|
||
|
|
protected AppThinkerWindow _window;
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Constructeur - Crée une nouvelle composition.
|
||
|
|
* @param project Le projet associé à la composition.
|
||
|
|
*/
|
||
|
|
public Composition(Project project){
|
||
|
|
_project = project;
|
||
|
|
this.addMouseListener(this);
|
||
|
|
this.addMouseMotionListener(this);
|
||
|
|
this.setPreferredSize(new Dimension(3000,3000));
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Paramètre la fenêtre enfant de la composition.
|
||
|
|
* @param window La fenêtre qui affiche la composition.
|
||
|
|
*/
|
||
|
|
public void setWindow(AppThinkerWindow window){
|
||
|
|
_window = window;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Retourne le type de la composition.
|
||
|
|
* @return Le type de la composition.
|
||
|
|
*/
|
||
|
|
public String getType(){
|
||
|
|
return _type;
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Retourne le projet associé à la composition.
|
||
|
|
* @return Le projet associé à la composition.
|
||
|
|
*/
|
||
|
|
public Project getProject(){
|
||
|
|
return _project;
|
||
|
|
}
|
||
|
|
|
||
|
|
public Object getToolbar(){
|
||
|
|
return _toolbar;
|
||
|
|
}
|
||
|
|
|
||
|
|
public JScrollPane getScrollPanel(){
|
||
|
|
return new JScrollPane(this);
|
||
|
|
}
|
||
|
|
|
||
|
|
//Evènements souris
|
||
|
|
@Override
|
||
|
|
public void mouseClicked(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mousePressed(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mouseReleased(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mouseEntered(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mouseExited(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mouseDragged(MouseEvent e) {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void mouseMoved(MouseEvent e) {
|
||
|
|
int getX = e.getX();
|
||
|
|
int getY = e.getY();
|
||
|
|
int sens = 5;
|
||
|
|
//Mise à jour des coordonnées de la souris dans la statusbar
|
||
|
|
AppThinker.getWindow().getStatusbar().setPosLabel(e.getX(), e.getY());
|
||
|
|
}
|
||
|
|
}
|