public class Pin
{
public final GUIComponent component;
+ public final int logicWidth;
+
protected double relX;
protected double relY;
- private final List<Consumer<Pin>> pinMovedListeners;
+ private final List<Consumer<? super Pin>> pinMovedListeners;
- public Pin(GUIComponent component, double relX, double relY)
+ public Pin(GUIComponent component, int logicWidth, double relX, double relY)
{
this.component = component;
+ this.logicWidth = logicWidth;
this.relX = relX;
this.relY = relY;
}
// @formatter:off
- public void addPinMovedListener (Consumer<Pin> listener){pinMovedListeners.add (listener);}
+ public void addPinMovedListener (Consumer<? super Pin> listener){pinMovedListeners.add (listener);}
- public void removePinMovedListener(Consumer<Pin> listener){pinMovedListeners.remove(listener);}
+ public void removePinMovedListener(Consumer<? super Pin> listener){pinMovedListeners.remove(listener);}
private void callPinMovedListeners() {pinMovedListeners.forEach(l -> l.accept(this));}
// @formatter:on