1 package org.simantics.spreadsheet.graph.synchronization;
\r
3 import java.util.Collection;
\r
4 import java.util.Map;
\r
6 import org.simantics.databoard.binding.mutable.Variant;
\r
7 import org.simantics.structural.synchronization.base.CommandBuilder;
\r
8 import org.simantics.structural.synchronization.base.ModuleUpdateContext;
\r
9 import org.simantics.structural.synchronization.base.ModuleUpdaterBase;
\r
10 import org.simantics.structural.synchronization.base.PropertyUpdateRule;
\r
12 public class LineNodeUpdater extends ModuleUpdaterBase<SheetLineComponent> {
\r
14 public LineNodeUpdater(String id) {
\r
20 addPropertyUpdateRule(new PropertyUpdateRule<SheetLineComponent>() {
\r
23 public String getPropertyName() {
\r
28 public void apply(ModuleUpdateContext<SheetLineComponent> context, boolean isCreating,
\r
29 Map<String, Variant> propertyMap, Map<String, Collection<String>> connectionMap, Variant value) {
\r
31 LinesCommandBuilder builder = context.<LinesCommandBuilder>getConcreteCommand();
\r
32 Variant v = propertyMap.get("keys");
\r
33 if (v != null & v.getValue() != null)
\r
34 builder.keys = (int[])v.getValue();
\r
43 public CommandBuilder createAddCommandBuilder(String name) {
\r
44 return new LinesCommandBuilder(name, false);
\r
48 public CommandBuilder createUpdateCommandBuilder(String name) {
\r
49 return new LinesCommandBuilder(name, true);
\r