From 9ebf04338e362ae5672511463d93d1f4100bc55a Mon Sep 17 00:00:00 2001 From: Antoine Date: Fri, 4 Jun 2021 23:29:22 +0200 Subject: [PATCH] UIDummy is now an abstract class --- src/engine/gui/UIDummy.java | 12 +++++++++++- src/engine/gui/UIElement.java | 8 +++----- src/engine/gui/UIElementText.java | 15 ++++++++++----- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/src/engine/gui/UIDummy.java b/src/engine/gui/UIDummy.java index 331e474..baeb8bc 100644 --- a/src/engine/gui/UIDummy.java +++ b/src/engine/gui/UIDummy.java @@ -1,6 +1,11 @@ package engine.gui; -public class UIDummy { +/** + * Classe dont hérite tous les autres élements d'interface + */ +public abstract class UIDummy { + + protected float scalingFactor; public void init(){ } @@ -8,7 +13,12 @@ public class UIDummy { private void getObjInPosition(){ } + /** + * Method pour le moteur ne pas utiliser + * @param scaleFactor + */ public void updateScalingFactor(float scaleFactor){ + this.scalingFactor *= scaleFactor; } public void update(){ diff --git a/src/engine/gui/UIElement.java b/src/engine/gui/UIElement.java index f4b98f7..f12330f 100644 --- a/src/engine/gui/UIElement.java +++ b/src/engine/gui/UIElement.java @@ -6,12 +6,14 @@ import engine.math.Vector3f; import engine.object.Camera; import engine.object.ObjectGl; +/** + * Affiche un seul ObjectGl le lie à une position dans la zone de projection + */ public class UIElement extends UIDummy{ private final ObjectGl obj; private final Engine engine; private final Camera camera; - private float scalingFactor; private float xPos; private float yPos; private float zPos; @@ -52,10 +54,6 @@ public class UIElement extends UIDummy{ obj.translate(new Vector3f(- engine.transformationView.x, engine.transformationView.y)); } - public void updateScalingFactor(float scaleFactor){ - this.scalingFactor *= scaleFactor; - } - public void update(){ this.getObjInPosition(); } diff --git a/src/engine/gui/UIElementText.java b/src/engine/gui/UIElementText.java index c37dd85..e06fed8 100644 --- a/src/engine/gui/UIElementText.java +++ b/src/engine/gui/UIElementText.java @@ -10,13 +10,15 @@ import engine.object.Text; import java.util.ArrayList; import java.util.List; +/** + * Affiche du texte le lie à une position dans la zone de projection + */ public class UIElementText extends UIDummy{ private final List objs; private final Engine engine; private final Camera camera; private final Text txt; - private float scalingFactor; private float xPos; private float yPos; private float zPos; @@ -40,10 +42,17 @@ public class UIElementText extends UIDummy{ this.getObjInPosition(); } + /** + * Ajouter l'element à la liste de rendu du moteur dont il est lié. + */ public void init(){ this.engine.add_objectsGl(objs); } + /** + * Modifier le texte + * @param txt le nouveau texte + */ public void setText(String txt){ this.txt.setNewText(txt); } @@ -66,10 +75,6 @@ public class UIElementText extends UIDummy{ } } - public void updateScalingFactor(float scaleFactor){ - this.scalingFactor *= scaleFactor; - } - public void update(){ this.getObjInPosition(); }