/* * Ext GWT - Ext for GWT * Copyright(c) 2007-2009, Ext JS, LLC. * licensing@extjs.com * * http://extjs.com/license */ package com.extjs.gxt.ui.client.widget; import com.extjs.gxt.ui.client.data.ModelData; import com.extjs.gxt.ui.client.widget.layout.LayoutData; import com.google.gwt.user.client.ui.Widget; /** * Provides access to package protected methods of component and widget. */ public class ComponentHelper { public static void doAttach(Widget widget) { if (widget != null && !widget.isAttached()) { if (widget instanceof Component) { ((Component) widget).onAttach(); } else { doAttachNative(widget); } } } public static void doDetach(Widget widget) { if (widget != null && widget.isAttached()) { if (widget instanceof Component) { ((Component) widget).onDetach(); } else { doDetachNative(widget); } } } public static LayoutData getLayoutData(Component c) { return c.getLayoutData(); } public static void setLayoutData(Component c, LayoutData data) { c.setLayoutData(data); } public static void setModel(Component c, ModelData model) { c.setModel(model); } static native void doAttachNative(Widget widget) /*-{ widget.@com.google.gwt.user.client.ui.Widget::onAttach()(); }-*/; static native void doDetachNative(Widget widget) /*-{ widget.@com.google.gwt.user.client.ui.Widget::onDetach()(); }-*/; }