package org.simantics.district.network.visualisations.model; import java.util.List; import java.util.Map; import org.simantics.scl.runtime.function.Function1; import org.simantics.scl.runtime.function.Function2; import org.simantics.scl.runtime.tuple.Tuple0; public class DynamicSymbolContribution { private List children; private Function2, Map, String> symbolFunction; private Function1> symbolMapFunction; private Map symbolMap; // for graph persistence only private boolean used; private boolean useDefault; public DynamicSymbolContribution(List children, Function2, Map, String> symbolFunction, Function1> symbolMapFunction) { this.children = children; this.symbolFunction = symbolFunction; this.symbolMapFunction = symbolMapFunction; } public List getChildren() { return children; } public Function2, Map, String> getSymbolFunction() { return symbolFunction; } public void resolveSymbolMap() { symbolMap = symbolMapFunction.apply(Tuple0.INSTANCE); } public Map getSymbolMap() { return symbolMap; } public boolean isUsed() { return used; } public void setUsed(boolean used) { this.used = used; } public boolean isUseDefault() { return useDefault; } public void setUseDefault(boolean useDefault) { this.useDefault = useDefault; } }