/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.geofence.gui.client.widget.tab; //import org.geoserver.geofence.gui.client.AdministrationMode; import org.geoserver.geofence.gui.client.GeofenceEvents; import com.extjs.gxt.ui.client.GXT; import com.extjs.gxt.ui.client.event.BaseEvent; import com.extjs.gxt.ui.client.event.Listener; import com.extjs.gxt.ui.client.mvc.AppEvent; import com.extjs.gxt.ui.client.widget.TabItem; import com.extjs.gxt.ui.client.widget.TabPanel; // TODO: Auto-generated Javadoc /** * The Class TabWidget. */ public class TabWidget extends TabPanel implements Listener { /** * Instantiates a new tab widget. */ public TabWidget() { super(); initTab(); initTabItem(); addListener(GeofenceEvents.BIND_SELECTED_MEMBER, this); } /** * Inits the tab. */ private void initTab() { setAutoWidth(true); //System.out.println(super.getHeight()); if(this.height!=null)System.out.println("height: "+height); if(this.getParent()!=null)System.out.println("getParent().getOffsetHeight(): "+this.getParent().getOffsetHeight()); if(GXT.isIE || GXT.isIE7 || GXT.isIE8){ System.out.println("this.getOffsetHeight=="+this.getOffsetHeight()); System.out.println("this.getElement().getClientHeight()=="+this.getElement().getClientHeight()); } setAutoHeight(true); setHeight("95%"); } /** * Inits the tab item. */ private void initTabItem() { super.doLayout(); } /* * (non-Javadoc) * * @see * com.extjs.gxt.ui.client.event.Listener#handleEvent(com.extjs.gxt.ui.client.event.BaseEvent) */ public void handleEvent(BaseEvent e) { // if (e.getType() == GeofenceEvents.ADMIN_MODE_CHANGE) { // onAdminModeChange((AppEvent) e); // } if (e.getType() == GeofenceEvents.BIND_SELECTED_MEMBER) { onBindMember((AppEvent) e); } // if (e.getType() == GeofenceEvents.GEOCONSTRAINT_DELETED) { // onGeoConstraintDeleted((AppEvent) e); // } // if (e.getType() == GeofenceEvents.RELOAD_GEOCONSTRAINTS) { // onReloadGeoConstraints((AppEvent) e); // } } /** * Forward to all tabs. * * @param event * the event */ private void forwardToAllTabs(AppEvent event) { for (TabItem tabItem : this.getItems()) { tabItem.fireEvent(event.getType(), event); } } /** * On bind member. * * @param event * the event */ private void onBindMember(AppEvent event) { forwardToAllTabs(event); } /** * On reload geo constraints. * * @param event * the event */ private void onReloadGeoConstraints(AppEvent event) { forwardToAllTabs(event); } }