From 21e6965c5eb1cb98f58da3a96a6a9bbb1c2113a6 Mon Sep 17 00:00:00 2001 From: Ludovic Apvrille <ludovic.apvrille@telecom-paristech.fr> Date: Thu, 17 Feb 2011 20:25:24 +0000 Subject: [PATCH] TEPE: Support of property connector in TEPE data structure from the graphical form --- src/tepe/TEPEComponent.java | 37 +++++++++++++++++++ src/ui/AvatarRequirementPanelTranslator.java | 21 +++++++++++ .../avatarpd/AvatarPDPropertyConnector.java | 7 ++++ 3 files changed, 65 insertions(+) diff --git a/src/tepe/TEPEComponent.java b/src/tepe/TEPEComponent.java index 07abeab068..d204b174a3 100644 --- a/src/tepe/TEPEComponent.java +++ b/src/tepe/TEPEComponent.java @@ -200,5 +200,42 @@ public abstract class TEPEComponent { } } + public void addInSignalComponent(TEPEComponent _tepec) { + if (inSignalComponents != null) { + inSignalComponents.add(_tepec); + } + } + + public void addInNegatedSignalComponent(TEPEComponent _tepec) { + if (inNegatedSignalComponents != null) { + inNegatedSignalComponents.add(_tepec); + } + } + + public void addOutSignalComponent(TEPEComponent _tepec) { + if (outSignalComponents != null) { + outSignalComponents.add(_tepec); + } + + } + + public void addInPropertyComponent(TEPEComponent _tepec) { + if (inPropertyComponents != null) { + inPropertyComponents.add(_tepec); + } + } + + public void addInNegatedPropertyComponent(TEPEComponent _tepec) { + if (inNegatedPropertyComponents != null) { + inNegatedPropertyComponents.add(_tepec); + } + } + + public void addOutPropertyComponent(TEPEComponent _tepec) { + if (outPropertyComponents != null) { + outPropertyComponents.add(_tepec); + } + } + } diff --git a/src/ui/AvatarRequirementPanelTranslator.java b/src/ui/AvatarRequirementPanelTranslator.java index 3f57e8a872..923441914e 100644 --- a/src/ui/AvatarRequirementPanelTranslator.java +++ b/src/ui/AvatarRequirementPanelTranslator.java @@ -232,6 +232,27 @@ public class AvatarRequirementPanelTranslator { element2.addInAttributeComponent(element1); } } + } else if (tgc instanceof AvatarPDPropertyConnector) { + AvatarPDPropertyConnector apdpco = (AvatarPDPropertyConnector)tgc; + tgc1 = _apdp.getComponentToWhichBelongs(apdpco.getTGConnectingPointP1()); + tgc2 = _apdp.getComponentToWhichBelongs(apdpco.getTGConnectingPointP2()); + if ((tgc1 == null) || (tgc2 == null)) { + TraceManager.addDev("Tgcs null in Avatar translation"); + } else { + element1 = (TEPEComponent)(listE.getObject(tgc1)); + element2 = (TEPEComponent)(listE.getObject(tgc2)); + if ((element1 != null) && (element2 != null)) { + TraceManager.addDev("Adding output / input"); + element1.addOutAttributeComponent(element2); + + // Must know whether it is negated, or not + if (apdpco.isNegated()) { + element2.addInNegatedPropertyComponent(element1); + } else { + element2.addInPropertyComponent(element1); + } + } + } } } } diff --git a/src/ui/avatarpd/AvatarPDPropertyConnector.java b/src/ui/avatarpd/AvatarPDPropertyConnector.java index 4816241056..8cda1ab843 100644 --- a/src/ui/avatarpd/AvatarPDPropertyConnector.java +++ b/src/ui/avatarpd/AvatarPDPropertyConnector.java @@ -198,6 +198,13 @@ public class AvatarPDPropertyConnector extends TGConnector implements ScalableT oldScaleFactor = scaleFactor; } + public boolean isNegated() { + if (value.compareTo("not") == 0) { + return true; + } + return false; + } + } -- GitLab