blob: a2f44dc98281214ac92e9cae91263dc021785e8e [file] [log] [blame]
/**
* Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), 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
*/
package org.eclipse.osbp.runtime.web.ecview.presentation.vaadin;
import org.eclipse.core.databinding.Binding;
import org.eclipse.osbp.ecview.core.common.model.core.YEditable;
import org.eclipse.osbp.ecview.core.common.model.core.YEnable;
import org.eclipse.osbp.ecview.core.common.model.core.YVisibleable;
import com.vaadin.data.Property;
import com.vaadin.ui.AbstractComponent;
import com.vaadin.ui.Component;
// TODO: Auto-generated Javadoc
/**
* A manager that is responsible for binding data for one view instance. Each
* binding manager has to be connected to exactly one view. All the bindings
* contained are bindings related to the associated view.
*/
public interface IBindingManager extends
org.eclipse.osbp.ecview.core.common.binding.IECViewBindingManager {
/**
* Binds the visible option.
*
* @param yVisibleAble
* the y visible able
* @param abstractComponent
* the abstract component
* @return Binding - the created binding
*/
public abstract Binding bindVisible(YVisibleable yVisibleAble,
AbstractComponent abstractComponent);
/**
* Binds the visible option.
*
* @param yEnable
* the y enable
* @param abstractComponent
* the abstract component
* @return Binding - the created binding
*/
public abstract Binding bindEnabled(YEnable yEnable,
AbstractComponent abstractComponent);
/**
* Binds the readonly option.
*
* @param yEditable
* the y editable
* @param field
* the field
* @return Binding - the created binding
*/
public abstract Binding bindReadonly(YEditable yEditable,
Property.ReadOnlyStatusChangeNotifier field);
/**
* Binds the readonly option. No notification for readonly state will be
* send from the ui element. To receive noticiations use
* {@link IBindingManager#bindReadonly(YEditable, com.vaadin.data.Property.ReadOnlyStatusChangeNotifier)}
*
* @param yEditable
* the y editable
* @param field
* the field
* @return Binding - the created binding
*/
public abstract Binding bindReadonlyOneway(YEditable yEditable,
Component field);
}