/*
 *                                                                            
 *  Copyright (c) 2011, 2016 - Loetz GmbH&Co.KG (69115 Heidelberg, Germany) 
 *                                                                            
 *  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:                                                      
 * 	   Florian Pirchner - Initial implementation
 *     Loetz GmbH&Co.KG                               
 * 
 */
package org.eclipse.osbp.vaadin.emf.api;

// TODO: Auto-generated Javadoc
/**
 * The Interface IModelingConstants.
 */
public interface IModelingConstants {
	
	/**
	 * Sends the clicked UI element and the associated model element by this
	 * topic in event admin.
	 */
	public static final String TOPIC__ELEMENT_CLICKED = "osbee/vaadin/emf/elementClicked";

}
