package org.ovirt.engine.ui.common.widget.tab; import com.google.gwt.user.client.ui.IsWidget; /** * An {@link AbstractTabPanel} whose tab widgets should be rendered outside the tab panel. * <p> * This class delegates the responsibility of adding/removing tab widgets to other classes through * {@link TabWidgetHandler} interface. */ public abstract class AbstractHeadlessTabPanel extends AbstractTabPanel { private TabWidgetHandler tabWidgetHandler; public void setTabWidgetHandler(TabWidgetHandler tabWidgetHandler) { this.tabWidgetHandler = tabWidgetHandler; } @Override public void addTabWidget(IsWidget tabWidget, int index) { if (tabWidgetHandler != null) { tabWidgetHandler.addTabWidget(tabWidget, index); } } @Override public void removeTabWidget(IsWidget tabWidget) { if (tabWidgetHandler != null) { tabWidgetHandler.removeTabWidget(tabWidget); } } }