-/*******************************************************************************\r
- * Copyright (c) 2007, 2010 Association for Decentralized Information Management\r
- * in Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- * VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
-package org.simantics.g2d.diagram.handler.impl;\r
-\r
-import java.util.Collection;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import org.simantics.g2d.diagram.IDiagram;\r
-import org.simantics.g2d.diagram.handler.LifeCycle;\r
-import org.simantics.g2d.diagram.handler.TransactionContext;\r
-import org.simantics.g2d.element.IElement;\r
-import org.simantics.utils.datastructures.ListenerList;\r
-\r
-/**\r
- * @author Toni Kalajainen\r
- */\r
-public class TransactionContextImpl implements TransactionContext, LifeCycle {\r
-\r
- Map<IDiagram, ListenerList<TransactionListener>> list =\r
- new HashMap<IDiagram, ListenerList<TransactionListener>>();\r
-\r
- @Override\r
- public void addTransactionListener(IDiagram d, TransactionListener l) {\r
- ListenerList<TransactionListener> ll = list.get(d);\r
- if (ll==null) {\r
- ll = new ListenerList<TransactionListener>(TransactionListener.class);\r
- list.put(d, ll);\r
- }\r
- ll.add(l);\r
- }\r
-\r
- @Override\r
- public void removeTransactionListener(IDiagram d, TransactionListener l) {\r
- ListenerList<TransactionListener> ll = list.get(d);\r
- if (ll==null) return;\r
- ll.remove(l);\r
- }\r
-\r
- @Override\r
- public void onDiagramDestroyed(IDiagram diagram) {\r
- }\r
-\r
- @Override\r
- public void onDiagramDisposed(IDiagram diagram) {\r
- list.remove(diagram);\r
- }\r
-\r
- @Override\r
- public void onDiagramCreated(IDiagram diagram) {\r
- }\r
-\r
-// @Override\r
-// public void finishTransaction(IDiagram d, Transaction t, ChangeSet cs) {\r
-// ListenerList<TransactionListener> ll = list.get(d);\r
-// if (ll==null) return;\r
-// for (TransactionListener l : ll.getListeners())\r
-// l.transactionFinished(d, t, cs);\r
-// }\r
-\r
-// @Override\r
-// public void startTransaction(IDiagram d, Transaction t) {\r
-// ListenerList<TransactionListener> ll = list.get(d);\r
-// if (ll==null) return;\r
-// for (TransactionListener l : ll.getListeners())\r
-// l.transactionStarted(d, t);\r
-// }\r
-\r
- @Override\r
- public void onDiagramLoaded(IDiagram diagram, Collection<IElement> initialElements) {\r
- }\r
-\r
- @Override\r
- public Transaction startTransaction(IDiagram d, TransactionType type) {\r
- Transaction t = new Transaction.Impl(type);\r
- ListenerList<TransactionListener> ll = list.get(d);\r
- if (ll != null)\r
- for (TransactionListener l : ll.getListeners())\r
- l.transactionStarted(d, t);\r
- return t;\r
- }\r
-\r
- @Override\r
- public void finishTransaction(IDiagram d, Transaction t) {\r
- ListenerList<TransactionListener> ll = list.get(d);\r
- if (ll == null)\r
- return;\r
- for (TransactionListener l : ll.getListeners())\r
- l.transactionFinished(d, t);\r
- }\r
-\r
-// @Override\r
-// public void cancelTransaction(IDiagram d, Transaction t) {\r
-// ListenerList<TransactionListener> ll = list.get(d);\r
-// if (ll == null)\r
-// return;\r
-// for (TransactionListener l : ll.getListeners())\r
-// l.transactionCanceled(d, t);\r
-// }\r
-\r
-}\r
+/*******************************************************************************
+ * Copyright (c) 2007, 2010 Association for Decentralized Information Management
+ * in Industry THTH ry.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * VTT Technical Research Centre of Finland - initial API and implementation
+ *******************************************************************************/
+package org.simantics.g2d.diagram.handler.impl;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.simantics.g2d.diagram.IDiagram;
+import org.simantics.g2d.diagram.handler.LifeCycle;
+import org.simantics.g2d.diagram.handler.TransactionContext;
+import org.simantics.g2d.element.IElement;
+import org.simantics.utils.datastructures.ListenerList;
+
+/**
+ * @author Toni Kalajainen
+ */
+public class TransactionContextImpl implements TransactionContext, LifeCycle {
+
+ Map<IDiagram, ListenerList<TransactionListener>> list =
+ new HashMap<IDiagram, ListenerList<TransactionListener>>();
+
+ @Override
+ public void addTransactionListener(IDiagram d, TransactionListener l) {
+ ListenerList<TransactionListener> ll = list.get(d);
+ if (ll==null) {
+ ll = new ListenerList<TransactionListener>(TransactionListener.class);
+ list.put(d, ll);
+ }
+ ll.add(l);
+ }
+
+ @Override
+ public void removeTransactionListener(IDiagram d, TransactionListener l) {
+ ListenerList<TransactionListener> ll = list.get(d);
+ if (ll==null) return;
+ ll.remove(l);
+ }
+
+ @Override
+ public void onDiagramDestroyed(IDiagram diagram) {
+ }
+
+ @Override
+ public void onDiagramDisposed(IDiagram diagram) {
+ list.remove(diagram);
+ }
+
+ @Override
+ public void onDiagramCreated(IDiagram diagram) {
+ }
+
+// @Override
+// public void finishTransaction(IDiagram d, Transaction t, ChangeSet cs) {
+// ListenerList<TransactionListener> ll = list.get(d);
+// if (ll==null) return;
+// for (TransactionListener l : ll.getListeners())
+// l.transactionFinished(d, t, cs);
+// }
+
+// @Override
+// public void startTransaction(IDiagram d, Transaction t) {
+// ListenerList<TransactionListener> ll = list.get(d);
+// if (ll==null) return;
+// for (TransactionListener l : ll.getListeners())
+// l.transactionStarted(d, t);
+// }
+
+ @Override
+ public void onDiagramLoaded(IDiagram diagram, Collection<IElement> initialElements) {
+ }
+
+ @Override
+ public Transaction startTransaction(IDiagram d, TransactionType type) {
+ Transaction t = new Transaction.Impl(type);
+ ListenerList<TransactionListener> ll = list.get(d);
+ if (ll != null)
+ for (TransactionListener l : ll.getListeners())
+ l.transactionStarted(d, t);
+ return t;
+ }
+
+ @Override
+ public void finishTransaction(IDiagram d, Transaction t) {
+ ListenerList<TransactionListener> ll = list.get(d);
+ if (ll == null)
+ return;
+ for (TransactionListener l : ll.getListeners())
+ l.transactionFinished(d, t);
+ }
+
+// @Override
+// public void cancelTransaction(IDiagram d, Transaction t) {
+// ListenerList<TransactionListener> ll = list.get(d);
+// if (ll == null)
+// return;
+// for (TransactionListener l : ll.getListeners())
+// l.transactionCanceled(d, t);
+// }
+
+}