[Shapes] Add shapes application
Merge commit '9bd4e3a87ca931af87c4d88b09f25fa1090eed38' as 'shapes'
This commit is contained in:
73
shapes/src/main/java/fr/uha/graphics/ui/Controller.java
Executable file
73
shapes/src/main/java/fr/uha/graphics/ui/Controller.java
Executable file
@ -0,0 +1,73 @@
|
||||
package fr.uha.graphics.ui;
|
||||
|
||||
import java.awt.event.KeyEvent;
|
||||
import java.awt.event.KeyListener;
|
||||
import java.awt.event.MouseEvent;
|
||||
import java.awt.event.MouseListener;
|
||||
import java.awt.event.MouseMotionListener;
|
||||
|
||||
public class Controller implements MouseListener, MouseMotionListener, KeyListener {
|
||||
protected Object model;
|
||||
private View view;
|
||||
|
||||
public Controller(Object newModel) {
|
||||
model = newModel;
|
||||
}
|
||||
|
||||
public void setView(View view) {
|
||||
this.view = view;
|
||||
}
|
||||
|
||||
final public View getView() {
|
||||
return this.view;
|
||||
}
|
||||
|
||||
public void setModel(Object model) {
|
||||
this.model = model;
|
||||
}
|
||||
|
||||
public Object getModel() {
|
||||
return this.model;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mousePressed(MouseEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseReleased(MouseEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseEntered(MouseEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseExited(MouseEvent e) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseMoved(MouseEvent evt) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseDragged(MouseEvent evt) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void keyTyped(KeyEvent evt) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void keyPressed(KeyEvent evt) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void keyReleased(KeyEvent evt) {
|
||||
}
|
||||
|
||||
}
|
34
shapes/src/main/java/fr/uha/graphics/ui/View.java
Executable file
34
shapes/src/main/java/fr/uha/graphics/ui/View.java
Executable file
@ -0,0 +1,34 @@
|
||||
package fr.uha.graphics.ui;
|
||||
|
||||
import javax.swing.JPanel;
|
||||
|
||||
public abstract class View extends JPanel {
|
||||
private Object model;
|
||||
private Controller controller;
|
||||
|
||||
public View(Object model) {
|
||||
this.model = model;
|
||||
this.controller = defaultController(model);
|
||||
this.controller.setView(this);
|
||||
this.addMouseListener(this.controller);
|
||||
this.addMouseMotionListener(this.controller);
|
||||
this.addKeyListener(this.controller);
|
||||
}
|
||||
|
||||
public void setModel(Object model) {
|
||||
this.model = model;
|
||||
this.controller.setModel(model);
|
||||
}
|
||||
|
||||
public Object getModel() {
|
||||
return this.model;
|
||||
}
|
||||
|
||||
public Controller defaultController(Object model) {
|
||||
return new Controller(model);
|
||||
}
|
||||
|
||||
final public Controller getController() {
|
||||
return this.controller;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user