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.adapter.AdaptException;
\r
7 import org.simantics.databoard.binding.mutable.Variant;
\r
8 import org.simantics.spreadsheet.graph.function.LineContentBean;
\r
9 import org.simantics.structural.synchronization.base.CommandBuilder;
\r
10 import org.simantics.structural.synchronization.base.ModuleUpdateContext;
\r
11 import org.simantics.structural.synchronization.base.ModuleUpdaterBase;
\r
12 import org.simantics.structural.synchronization.base.PropertyUpdateRule;
\r
13 import org.simantics.structural.synchronization.base.Solver;
\r
15 public class LineUpdater extends ModuleUpdaterBase<SheetLineComponent> {
\r
17 public LineUpdater(String id) {
\r
19 addPropertyUpdateRule(new PropertyUpdateRule<SheetLineComponent>() {
\r
22 public String getPropertyName() {
\r
27 public void apply(ModuleUpdateContext<SheetLineComponent> context, boolean isCreating,
\r
28 Map<String, Variant> propertyMap, Map<String, Collection<String>> connectionMap, Variant value) {
\r
30 LineCommandBuilder builder = context.<LineCommandBuilder>getConcreteCommand();
\r
32 LineContentBean valuee = (LineContentBean) value.getValue(LineContentBean.BINDING);
\r
33 builder.bean = valuee;
\r
34 } catch (AdaptException e) {
\r
35 e.printStackTrace();
\r
36 } catch (ClassCastException e) {
\r
37 e.printStackTrace();
\r
39 // if (valuee instanceof LineContentBean)
\r
42 // System.err.println("valuee is instanceof " + valuee.getClass().getSimpleName() + " " + valuee);
\r
50 public CommandBuilder createAddCommandBuilder(String name) {
\r
51 return new LineCommandBuilder(name, false);
\r
55 public CommandBuilder createUpdateCommandBuilder(String name) {
\r
56 return new LineCommandBuilder(name, true);
\r