/******************************************************************************* * Copyright (c) 2006-2013 The RCP Company and others. * 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: * The RCP Company - initial API and implementation *******************************************************************************/ package com.rcpcompany.uibindings; import org.eclipse.core.runtime.IConfigurationElement; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; /** * <!-- begin-user-doc --> A representation of the model object '<em><b>Decorator Provider</b></em> * '. <!-- end-user-doc --> * * <p> * The following features are supported: * <ul> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getManager <em>Manager</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getId <em>Id</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getType <em>Type</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getModelTypes <em>Model Types</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getUiTypes <em>Ui Types</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getProviderCE <em>Provider CE</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getChildCE <em>Child CE</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getDecorator <em>Decorator</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#isExactModelTypeMatch <em>Exact Model * Type Match</em>}</li> * <li>{@link com.rcpcompany.uibindings.IDecoratorProvider#getModelValueKind <em>Model Value Kind * </em>}</li> * </ul> * </p> * * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider() * @generated */ public interface IDecoratorProvider extends EObject, IArgumentProvider { /** * Returns the value of the '<em><b>Manager</b></em>' container reference. It is bidirectional * and its opposite is '{@link com.rcpcompany.uibindings.IManager#getProviders * <em>Providers</em>}'. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Manager</em>' container reference isn't clear, there really should * be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Manager</em>' container reference. * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_Manager() * @see com.rcpcompany.uibindings.IManager#getProviders * @generated */ IManager getManager(); /** * Returns the value of the '<em><b>Id</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Id</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Id</em>' attribute. * @see #setId(String) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_Id() * @generated */ String getId(); /** * Sets the value of the '{@link com.rcpcompany.uibindings.IDecoratorProvider#getId <em>Id</em>} * ' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Id</em>' attribute. * @see #getId() * @generated */ void setId(String value); /** * Returns the value of the '<em><b>Type</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Type</em>' attribute isn't clear, there really should be more of a * description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Type</em>' attribute. * @see #setType(String) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_Type() * @generated */ String getType(); /** * Sets the value of the '{@link com.rcpcompany.uibindings.IDecoratorProvider#getType * <em>Type</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Type</em>' attribute. * @see #getType() * @generated */ void setType(String value); /** * Returns the value of the '<em><b>Model Types</b></em>' attribute list. The list contents are * of type {@link java.lang.String}. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Model Types</em>' attribute list isn't clear, there really should * be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Model Types</em>' attribute list. * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_ModelTypes() * @generated */ EList<String> getModelTypes(); /** * Returns the value of the '<em><b>Ui Types</b></em>' attribute list. The list contents are of * type {@link java.lang.String}. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Ui Types</em>' attribute list isn't clear, there really should be * more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Ui Types</em>' attribute list. * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_UiTypes() * @generated */ EList<String> getUiTypes(); /** * Returns the value of the '<em><b>Provider CE</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Provider CE</em>' attribute isn't clear, there really should be * more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Provider CE</em>' attribute. * @see #setProviderCE(IConfigurationElement) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_ProviderCE() * @generated */ IConfigurationElement getProviderCE(); /** * Sets the value of the '{@link com.rcpcompany.uibindings.IDecoratorProvider#getProviderCE * <em>Provider CE</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Provider CE</em>' attribute. * @see #getProviderCE() * @generated */ void setProviderCE(IConfigurationElement value); /** * Returns the value of the '<em><b>Child CE</b></em>' attribute. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Child CE</em>' attribute isn't clear, there really should be more * of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Child CE</em>' attribute. * @see #setChildCE(IConfigurationElement) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_ChildCE() * @generated */ IConfigurationElement getChildCE(); /** * Sets the value of the '{@link com.rcpcompany.uibindings.IDecoratorProvider#getChildCE * <em>Child CE</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Child CE</em>' attribute. * @see #getChildCE() * @generated */ void setChildCE(IConfigurationElement value); /** * Returns the value of the '<em><b>Decorator</b></em>' reference. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Decorator</em>' reference isn't clear, there really should be more * of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Decorator</em>' reference. * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_Decorator() * @generated */ IUIBindingDecorator getDecorator(); /** * Returns the value of the '<em><b>Exact Model Type Match</b></em>' attribute. <!-- * begin-user-doc --> * <p> * If the meaning of the '<em>Exact Model Type Match</em>' attribute isn't clear, there really * should be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Exact Model Type Match</em>' attribute. * @see #setExactModelTypeMatch(boolean) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_ExactModelTypeMatch() * @generated */ boolean isExactModelTypeMatch(); /** * Sets the value of the ' * {@link com.rcpcompany.uibindings.IDecoratorProvider#isExactModelTypeMatch * <em>Exact Model Type Match</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Exact Model Type Match</em>' attribute. * @see #isExactModelTypeMatch() * @generated */ void setExactModelTypeMatch(boolean value); /** * Returns the value of the '<em><b>Model Value Kind</b></em>' attribute. The literals are from * the enumeration {@link com.rcpcompany.uibindings.ModelValueKind}. <!-- begin-user-doc --> * <p> * If the meaning of the '<em>Model Value Kind</em>' attribute isn't clear, there really should * be more of a description here... * </p> * <!-- end-user-doc --> * * @return the value of the '<em>Model Value Kind</em>' attribute. * @see com.rcpcompany.uibindings.ModelValueKind * @see #setModelValueKind(ModelValueKind) * @see com.rcpcompany.uibindings.IUIBindingsPackage#getDecoratorProvider_ModelValueKind() * @generated */ ModelValueKind getModelValueKind(); /** * Sets the value of the '{@link com.rcpcompany.uibindings.IDecoratorProvider#getModelValueKind * <em>Model Value Kind</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc --> * * @param value the new value of the '<em>Model Value Kind</em>' attribute. * @see com.rcpcompany.uibindings.ModelValueKind * @see #getModelValueKind() * @generated */ void setModelValueKind(ModelValueKind value); /** * "Reads" the information about the provider from the extensiion register. * * @param id the ID of the provider * @param providerCE the configuration element of the provider * @param childCE the child configuration element with the provider specific configuration */ void providerReader(String id, IConfigurationElement providerCE, IConfigurationElement childCE); } // IDecoratorProvider