1 package org.simantics.modeling.typicals.rules;
\r
3 import org.simantics.db.Resource;
\r
4 import org.simantics.db.WriteGraph;
\r
5 import org.simantics.db.exception.DatabaseException;
\r
6 import org.simantics.diagram.query.DiagramRequests;
\r
7 import org.simantics.diagram.synchronization.graph.DiagramGraphUtil;
\r
8 import org.simantics.g2d.page.DiagramDesc;
\r
9 import org.simantics.modeling.typicals.ITypicalSynchronizationRule;
\r
10 import org.simantics.modeling.typicals.TypicalInfo;
\r
13 * @author Tuukka Lehtonen
\r
14 * @since 1.22.2, 1.25.0
\r
16 public enum PageSettingsTypicalRule implements ITypicalSynchronizationRule {
\r
20 public static PageSettingsTypicalRule get() {
\r
25 public boolean synchronize(WriteGraph graph, Resource template, Resource instance, TypicalInfo info) throws DatabaseException {
\r
26 DiagramDesc mdesc = graph.syncRequest(DiagramRequests.getDiagramDesc(template));
\r
27 DiagramDesc idesc = graph.syncRequest(DiagramRequests.getDiagramDesc(instance));
\r
28 if (mdesc.equals(idesc))
\r
31 DiagramGraphUtil.setDiagramDesc(graph, instance, mdesc);
\r
32 info.messageLog.add("\t\tset diagram page settings:"
\r
33 + "\n\t\t\tshow page borders: " + mdesc.isPageBordersVisible()
\r
34 + "\n\t\t\tshow margins: " + mdesc.isMarginsVisible()
\r
35 + "\n\t\t\tgrid size: " + mdesc.getGridSize()
\r
36 + "\n\t\t\tpage settings: " + mdesc.getPageDesc()
\r