From: Stefan F. <ste...@us...> - 2012-07-08 20:59:31
|
src/rails/game/OperatingRound.java | 12 +----------- src/rails/game/model/PresidentModel.java | 11 +++-------- src/rails/game/state/Observer.java | 12 ++---------- src/rails/ui/swing/GridPanel.java | 22 ++++++++-------------- src/rails/ui/swing/elements/Field.java | 18 ++++-------------- src/rails/ui/swing/elements/GUIStockSpace.java | 22 +--------------------- src/rails/ui/swing/hexmap/GUIHex.java | 15 +-------------- 7 files changed, 20 insertions(+), 92 deletions(-) New commits: commit 39169f9f7195e3b705d712780d589fa26dea3a39 Author: Stefan Frey <ste...@we...> Date: Sun Jul 8 22:59:08 2012 +0200 started rethinking the Observer interface diff --git a/src/rails/game/OperatingRound.java b/src/rails/game/OperatingRound.java index 4e2c305..50becdd 100644 --- a/src/rails/game/OperatingRound.java +++ b/src/rails/game/OperatingRound.java @@ -3124,7 +3124,7 @@ public class OperatingRound extends Round implements Observer { /** * Update the status if the step has changed by an Undo or Redo */ - public void update() { + public void update(Observable observable, String text) { prepareStep(); } @@ -3144,14 +3144,4 @@ public class OperatingRound extends Round implements Observer { return toString(); } - // Observer Interface - public Observable getObservable() { - return stepObject; - } - - public boolean deRegister() { - if (stepObject == null) return false; - return stepObject.removeObserver(this); - } - } \ No newline at end of file diff --git a/src/rails/game/model/PresidentModel.java b/src/rails/game/model/PresidentModel.java index 442385d..0f7cbb4 100644 --- a/src/rails/game/model/PresidentModel.java +++ b/src/rails/game/model/PresidentModel.java @@ -43,14 +43,9 @@ public final class PresidentModel extends Model implements Observer { else return company.getPresident().getNameAndPriority(); } - public Observable getObservable() { - // TODO Auto-generated method stub - return null; - } - - public boolean deRegister() { - // TODO Auto-generated method stub - return false; + // FIXME: Add code what to do here + public void update(Observable observable, String text) { + } } diff --git a/src/rails/game/state/Observer.java b/src/rails/game/state/Observer.java index c1b1eb5..2cdd4ea 100644 --- a/src/rails/game/state/Observer.java +++ b/src/rails/game/state/Observer.java @@ -1,18 +1,10 @@ package rails.game.state; /** - * An interface defining an observer for states and models - * - * It is a very simple approach that only relays the update information itself. - * - * @author freystef + * An interface defining an Observer to Observable classes */ public interface Observer{ - void update(); - - Observable getObservable(); - - boolean deRegister(); + void update(Observable observable, String text); } diff --git a/src/rails/ui/swing/GridPanel.java b/src/rails/ui/swing/GridPanel.java index 02bc2ef..f61dca3 100644 --- a/src/rails/ui/swing/GridPanel.java +++ b/src/rails/ui/swing/GridPanel.java @@ -75,10 +75,11 @@ implements ActionListener, KeyListener { revalidate(); } + // FIXME: This has to be replaced protected void deRegisterObservers() { log.debug("Deregistering observers"); for (Observer vo : observers) { - vo.deRegister(); +// vo.deRegister(); } } @@ -106,10 +107,11 @@ implements ActionListener, KeyListener { gridPanel.add(comp, gbc); - if (comp instanceof Observer - && ((Observer) comp).getObservable() != null) { - observers.add((Observer) comp); - } + // FIXME: This has to be replaced +// if (comp instanceof Observer +// && ((Observer) comp).getObservable() != null) { +// observers.add((Observer) comp); +// } if (fields != null && fields[x][y] == null) fields[x][y] = comp; comp.setVisible(visible); @@ -178,20 +180,12 @@ implements ActionListener, KeyListener { } */ - public void update() { + public void update(Observable observable, String text) { // FIXME: There was a Boolean object submitted if the company is closed // TODO: Make this functionality available again // see above the old update method } - public Observable getObservable() { - return observable; - } - - public boolean deRegister() { - return observable.removeObserver(this); - } - } diff --git a/src/rails/ui/swing/elements/Field.java b/src/rails/ui/swing/elements/Field.java index ae4199d..95dcaf9 100644 --- a/src/rails/ui/swing/elements/Field.java +++ b/src/rails/ui/swing/elements/Field.java @@ -71,10 +71,11 @@ public class Field extends JLabel implements Observer { return observable; } + // FIXME: Rewrite that part here public void setModel(Observable m) { observable = m; observable.addObserver(this); - update(); +// update(); } public void setHighlight(boolean highlight) { @@ -115,19 +116,8 @@ public class Field extends JLabel implements Observer { } /** Needed to satisfy the Observer interface. */ - public void update() { - setText(observable.getText()); + public void update(Observable observable, String text) { + setText(text); } - public boolean deRegister() { - dependents = null; - if (observable == null) return false; - return observable.removeObserver(this); - } - - public Observable getObservable() { - return observable; - } - - } diff --git a/src/rails/ui/swing/elements/GUIStockSpace.java b/src/rails/ui/swing/elements/GUIStockSpace.java index f121a09..0c388da 100644 --- a/src/rails/ui/swing/elements/GUIStockSpace.java +++ b/src/rails/ui/swing/elements/GUIStockSpace.java @@ -135,32 +135,12 @@ public class GUIStockSpace extends JLayeredPane implements Observer { /* * (non-Javadoc) * - * @see rails.ui.swing.elements.ViewObject#deRegister() - */ - public boolean deRegister() { - if (model == null) return false; - return model.removeObserver(this); - } - - /* - * (non-Javadoc) - * * @see java.rails.util.Observer#update(java.rails.util.Observable, * java.lang.Object) */ - public void update(String data) { + public void update(Observable observable, String text) { recreate(); } - public void update() { - // TODO Auto-generated method stub - - } - - public Observable getObservable() { - // TODO Auto-generated method stub - return null; - } - } diff --git a/src/rails/ui/swing/hexmap/GUIHex.java b/src/rails/ui/swing/hexmap/GUIHex.java index 86cd721..ad9d27d 100644 --- a/src/rails/ui/swing/hexmap/GUIHex.java +++ b/src/rails/ui/swing/hexmap/GUIHex.java @@ -891,13 +891,6 @@ public class GUIHex implements Observer { toolTip = null; } - /** Needed to satisfy the ViewObject interface. Currently not used. */ - public boolean deRegister() { - if (model == null) return false; - model.removeObserver(this); - return true; - } - // FIXME: Why is this called getModel instead of getMapHex? public MapHex getModel() { return model; @@ -931,15 +924,9 @@ public class GUIHex implements Observer { } // FIMXE: Add the code here - public void update() { + public void update(Observable observable, String id) { // TODO Auto-generated method stub } - public Observable getObservable() { - // TODO Auto-generated method stub - return null; - } - - } |