X-Git-Url: https://mograsim.net/gitweb/?a=blobdiff_plain;f=net.mograsim.logic.ui%2Fsrc%2Fnet%2Fmograsim%2Flogic%2Fui%2Fmodel%2Fcomponents%2FGUIComponent.java;h=a586616ee49244c7143904bbb1a9a6a042215e80;hb=a84700145147c263ad6692c99117a7cf37832378;hp=13ec4a600c7e5e092f93be4ccb22bafe5b3d092e;hpb=55b6b41a94961d0c19ce7dcd784f287a3592064f;p=Mograsim.git diff --git a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/GUIComponent.java b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/GUIComponent.java index 13ec4a60..a586616e 100644 --- a/net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/GUIComponent.java +++ b/net.mograsim.logic.ui/src/net/mograsim/logic/ui/model/components/GUIComponent.java @@ -1,7 +1,6 @@ package net.mograsim.logic.ui.model.components; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -33,9 +32,9 @@ public abstract class GUIComponent */ private final Map pinsByName; /** - * An unmodifiable view of {@link #pinsByName}.{@link Map#values() values()}. + * An unmodifiable view of {@link #pinsByName}. */ - protected final Collection pinsUnmodifiable; + protected final Map pinsUnmodifiable; private final List> componentMovedListeners; private final List> pinAddedListeners; @@ -53,7 +52,7 @@ public abstract class GUIComponent this.model = model; this.bounds = new Rectangle(0, 0, 0, 0); this.pinsByName = new HashMap<>(); - this.pinsUnmodifiable = Collections.unmodifiableCollection(pinsByName.values()); + this.pinsUnmodifiable = Collections.unmodifiableMap(pinsByName); this.componentMovedListeners = new ArrayList<>(); this.pinAddedListeners = new ArrayList<>(); @@ -81,6 +80,11 @@ public abstract class GUIComponent /** * Adds the given pin to this component and calls pinAddedListeners and redrawListeners. + * + * @throws IllegalArgumentException if the pin doesn't belong to this component + * @throws IllegalArgumentException if there already is a pin with the given name + * + * @author Daniel Kirschten */ protected void addPin(Pin pin) { @@ -97,7 +101,9 @@ public abstract class GUIComponent /** * Removes the given pin from this component and calls pinAddedListeners and redrawListeners. * - * @throws NullPointerException if there was no pin with this name. + * @throws NullPointerException if there was no pin with this name + * + * @author Daniel Kirschten */ protected void removePin(String name) { @@ -112,7 +118,7 @@ public abstract class GUIComponent * * @author Daniel Kirschten */ - public Collection getPins() + public Map getPins() { return pinsUnmodifiable; } @@ -213,6 +219,8 @@ public abstract class GUIComponent /** * Called when this component is clicked. Absolute coordinates of the click are given. Returns true if this component consumed this * click. + * + * @author Daniel Kirschten */ @SuppressWarnings({ "static-method", "unused" }) // this method is inteded to be overridden public boolean clicked(double x, double y)