1 /*******************************************************************************
2 * Copyright (c) 2007, 2010 Association for Decentralized Information Management
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Eclipse Public License v1.0
6 * which accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * VTT Technical Research Centre of Finland - initial API and implementation
11 *******************************************************************************/
12 package org.simantics.g2d.element.handler.impl.proxy;
14 import org.simantics.g2d.diagram.IDiagram;
15 import org.simantics.g2d.element.IElement;
16 import org.simantics.g2d.element.handler.LifeCycle;
19 * @author Toni Kalajainen
21 public class ProxyLifeCycle implements LifeCycle {
23 private static final long serialVersionUID = 2222511223508932210L;
26 IProxyProvider provider;
28 public ProxyLifeCycle(IProxyProvider provider, LifeCycle orig) {
29 this.provider = provider;
34 public void onElementActivated(IDiagram d, IElement e) {
35 e = provider.provide(e);
36 orig.onElementActivated(e.getDiagram(), e);
40 public void onElementCreated(IElement e) {
41 orig.onElementCreated(provider.provide(e));
45 public void onElementDeactivated(IDiagram d, IElement e) {
46 e = provider.provide(e);
47 orig.onElementDeactivated(e.getDiagram(), e);
51 public void onElementDestroyed(IElement e) {
52 orig.onElementDestroyed(provider.provide(e));