From 8f8c2f90e563d86938ce080bcdf0d138c97fde11 Mon Sep 17 00:00:00 2001 From: Maxmtg Date: Wed, 16 May 2012 07:50:45 +0000 Subject: [PATCH] MyObservable - moved frequent calls to a variable, moved the very class to utils package --- .gitattributes | 2 +- src/main/java/forge/GameEntity.java | 1 + src/main/java/forge/GameLog.java | 2 ++ .../java/forge/control/input/InputControl.java | 2 +- src/main/java/forge/game/phase/PhaseHandler.java | 2 +- src/main/java/forge/game/zone/MagicStack.java | 2 +- src/main/java/forge/game/zone/PlayerZone.java | 2 +- src/main/java/forge/gui/GuiInput.java | 2 +- src/main/java/forge/{ => util}/MyObservable.java | 16 ++++++++++------ 9 files changed, 19 insertions(+), 12 deletions(-) rename src/main/java/forge/{ => util}/MyObservable.java (72%) diff --git a/.gitattributes b/.gitattributes index ddc40a5ef3e..73d5240e57f 100644 --- a/.gitattributes +++ b/.gitattributes @@ -11636,7 +11636,6 @@ src/main/java/forge/GameEntity.java -text src/main/java/forge/GameLog.java -text src/main/java/forge/HandSizeOp.java svneol=native#text/plain src/main/java/forge/ImageCache.java svneol=native#text/plain -src/main/java/forge/MyObservable.java svneol=native#text/plain src/main/java/forge/NameChanger.java svneol=native#text/plain src/main/java/forge/Singletons.java svneol=native#text/plain src/main/java/forge/StaticEffect.java svneol=native#text/plain @@ -12143,6 +12142,7 @@ src/main/java/forge/util/IStorageView.java -text src/main/java/forge/util/IgnoringXStream.java -text src/main/java/forge/util/LineReader.java -text src/main/java/forge/util/MultiplexOutputStream.java svneol=native#text/plain +src/main/java/forge/util/MyObservable.java svneol=native#text/plain src/main/java/forge/util/MyRandom.java svneol=native#text/plain src/main/java/forge/util/StorageImmediatelySerialized.java svneol=native#text/plain src/main/java/forge/util/StorageReaderFile.java -text diff --git a/src/main/java/forge/GameEntity.java b/src/main/java/forge/GameEntity.java index 45926af8e9e..ded2d27bd8d 100644 --- a/src/main/java/forge/GameEntity.java +++ b/src/main/java/forge/GameEntity.java @@ -21,6 +21,7 @@ import java.util.ArrayList; import forge.card.spellability.SpellAbility; import forge.game.player.Player; +import forge.util.MyObservable; /** *

diff --git a/src/main/java/forge/GameLog.java b/src/main/java/forge/GameLog.java index acb8b3b7270..d986eb12c7c 100644 --- a/src/main/java/forge/GameLog.java +++ b/src/main/java/forge/GameLog.java @@ -20,6 +20,8 @@ package forge; import java.util.ArrayList; +import forge.util.MyObservable; + /** *

diff --git a/src/main/java/forge/control/input/InputControl.java b/src/main/java/forge/control/input/InputControl.java index b127521e72f..806757362fb 100644 --- a/src/main/java/forge/control/input/InputControl.java +++ b/src/main/java/forge/control/input/InputControl.java @@ -21,13 +21,13 @@ import java.util.LinkedList; import java.util.Stack; import forge.AllZone; -import forge.MyObservable; import forge.game.phase.PhaseHandler; import forge.game.phase.PhaseType; import forge.game.player.ComputerAIInput; import forge.game.player.Player; import forge.gui.match.CMatchUI; import forge.model.FModel; +import forge.util.MyObservable; /** *

diff --git a/src/main/java/forge/game/phase/PhaseHandler.java b/src/main/java/forge/game/phase/PhaseHandler.java index 75917f6afb6..5d0b83d3112 100644 --- a/src/main/java/forge/game/phase/PhaseHandler.java +++ b/src/main/java/forge/game/phase/PhaseHandler.java @@ -29,12 +29,12 @@ import forge.Card; import forge.CardList; import forge.CardListFilter; import forge.GameActionUtil; -import forge.MyObservable; import forge.Singletons; import forge.card.trigger.TriggerType; import forge.game.player.Player; import forge.game.zone.ZoneType; import forge.properties.ForgePreferences.FPref; +import forge.util.MyObservable; /** *

diff --git a/src/main/java/forge/game/zone/MagicStack.java b/src/main/java/forge/game/zone/MagicStack.java index 35f1eb37c82..aedc0030d27 100644 --- a/src/main/java/forge/game/zone/MagicStack.java +++ b/src/main/java/forge/game/zone/MagicStack.java @@ -31,7 +31,6 @@ import forge.CardList; import forge.CardListFilter; import forge.Command; import forge.GameActionUtil; -import forge.MyObservable; import forge.Singletons; import forge.card.abilityfactory.AbilityFactory; import forge.card.cardfactory.CardFactoryUtil; @@ -60,6 +59,7 @@ import forge.gui.GuiUtils; import forge.gui.framework.EDocID; import forge.gui.framework.SDisplayUtil; import forge.gui.match.CMatchUI; +import forge.util.MyObservable; import forge.view.ButtonUtil; /** diff --git a/src/main/java/forge/game/zone/PlayerZone.java b/src/main/java/forge/game/zone/PlayerZone.java index 042a952cced..6067fbf6eac 100644 --- a/src/main/java/forge/game/zone/PlayerZone.java +++ b/src/main/java/forge/game/zone/PlayerZone.java @@ -19,7 +19,7 @@ package forge.game.zone; import java.util.Observer; -import forge.MyObservable; +import forge.util.MyObservable; //PlayerZone observers the cards that are added to its zone /** diff --git a/src/main/java/forge/gui/GuiInput.java b/src/main/java/forge/gui/GuiInput.java index c4a19cc149b..178da6f6b7c 100644 --- a/src/main/java/forge/gui/GuiInput.java +++ b/src/main/java/forge/gui/GuiInput.java @@ -22,11 +22,11 @@ import java.util.Observer; import forge.AllZone; import forge.Card; -import forge.MyObservable; import forge.Singletons; import forge.control.input.Input; import forge.game.player.Player; import forge.game.zone.PlayerZone; +import forge.util.MyObservable; /** *

diff --git a/src/main/java/forge/MyObservable.java b/src/main/java/forge/util/MyObservable.java similarity index 72% rename from src/main/java/forge/MyObservable.java rename to src/main/java/forge/util/MyObservable.java index f130dc41bd8..304f71cdf2d 100644 --- a/src/main/java/forge/MyObservable.java +++ b/src/main/java/forge/util/MyObservable.java @@ -15,10 +15,13 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -package forge; +package forge.util; import java.util.Observable; +import forge.Singletons; +import forge.game.phase.PhaseHandler; + /** *

* MyObservable class. @@ -38,12 +41,13 @@ public class MyObservable extends Observable { this.notifyObservers(); if (Singletons.getModel() == null) { return; } - - if ((Singletons.getModel().getGameState().getPhaseHandler() != null) && Singletons.getModel().getGameState().getPhaseHandler().isNeedToNextPhase()) { - if (Singletons.getModel().getGameState().getPhaseHandler().isNeedToNextPhaseInit()) { + PhaseHandler phases = Singletons.getModel().getGameState().getPhaseHandler(); + + if ((phases != null) && phases.isNeedToNextPhase()) { + if (phases.isNeedToNextPhaseInit()) { // this is used. - Singletons.getModel().getGameState().getPhaseHandler().setNeedToNextPhase(false); - Singletons.getModel().getGameState().getPhaseHandler().nextPhase(); + phases.setNeedToNextPhase(false); + phases.nextPhase(); } } }