/*
@VaadinApache2LicenseForJavaFiles@
*/
package com.vaadin.terminal.gwt.client;
import com.google.gwt.user.client.ui.Widget;
/**
* An interface used by client-side widgets or paintable parts to receive
* updates from the corresponding server-side components in the form of
* {@link UIDL}.
*
* Updates can be sent back to the server using the
* {@link ApplicationConnection#updateVariable()} methods.
*/
public interface ComponentConnector extends ServerConnector {
/*
* (non-Javadoc)
*
* @see com.vaadin.terminal.gwt.client.VPaintable#getState()
*/
public ComponentState getState();
/**
* Returns the widget for this {@link ComponentConnector}
*/
public Widget getWidget();
public LayoutManager getLayoutManager();
/**
* Returns true
if the width of this paintable is currently
* undefined. If the width is undefined, the actual width of the paintable
* is defined by its contents.
*
* @return true
if the width is undefined, else
* false
*/
public boolean isUndefinedWidth();
/**
* Returns true
if the height of this paintable is currently
* undefined. If the height is undefined, the actual height of the paintable
* is defined by its contents.
*
* @return true
if the height is undefined, else
* false
*/
public boolean isUndefinedHeight();
/**
* Returns true
if the width of this paintable is currently
* relative. If the width is relative, the actual width of the paintable is
* a percentage of the size allocated to it by its parent.
*
* @return true
if the width is undefined, else
* false
*/
public boolean isRelativeWidth();
/**
* Returns true
if the height of this paintable is currently
* relative. If the height is relative, the actual height of the paintable
* is a percentage of the size allocated to it by its parent.
*
* @return true
if the width is undefined, else
* false
*/
public boolean isRelativeHeight();
/**
* Returns the parent of this connector. Can be null for only the root
* connector.
*
* @return The parent of this connector, as set by
* {@link #setParent(ComponentContainerConnector)}.
*/
public ComponentContainerConnector getParent();
/**
* Sets the parent for this connector. This method should only be called by
* the framework to ensure that the connector hierarchy on the client side
* and the server side are in sync.
*
* Note that calling this method does not fire a * {@link ConnectorHierarchyChangeEvent}. The event is fired only when the * whole hierarchy has been updated. * * @param parent * The new parent of the connector */ public void setParent(ComponentContainerConnector parent); /** * Checks if the connector is read only. * * @deprecated This belongs in AbstractFieldConnector, see #8514 * @return true */ @Deprecated public boolean isReadOnly(); public boolean hasEventListener(String eventIdentifier); /** * Return true if parent handles caption, false if the paintable handles the * caption itself. * *
* This should always return true and all components should let the parent * handle the caption and use other attributes for internal texts in the * component *
* * @return true if caption handling is delegated to the parent, false if * parent should not be allowed to render caption */ public boolean delegateCaptionHandling(); /** * Sets the enabled state of the widget associated to this connector. * * @param widgetEnabled * true if the widget should be enabled, false otherwise */ public void setWidgetEnabled(boolean widgetEnabled); }