/* (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 com.extjs.gxt.ui.client.Style.Scroll; import com.extjs.gxt.ui.client.widget.TabItem; import org.geoserver.geofence.gui.client.Constants; import org.geoserver.geofence.gui.client.Resources; import org.geoserver.geofence.gui.client.i18n.I18nProvider; import org.geoserver.geofence.gui.client.service.GsUsersManagerRemoteServiceAsync; import org.geoserver.geofence.gui.client.service.ProfilesManagerRemoteServiceAsync; import org.geoserver.geofence.gui.client.widget.UserManagementWidget; // TODO: Auto-generated Javadoc /** * The Class GsUsersTabItem. */ public class GsUsersTabItem extends TabItem { /** The profile management widget. */ private UserManagementWidget userManagementWidget; /** * Instantiates a new gs users tab item. */ public GsUsersTabItem(String tabItemId) { super(I18nProvider.getMessages().userManagementLabel()); setId(tabItemId); setIcon(Resources.ICONS.user()); } /** * Instantiates a new gs users tab item. * @param usersTabItemId * * @param gsManagerServiceRemote * the gs manager service remote * @param profilesManagerServiceRemote */ public GsUsersTabItem(String tabItemId, GsUsersManagerRemoteServiceAsync gsManagerServiceRemote, ProfilesManagerRemoteServiceAsync profilesManagerServiceRemote) { this(tabItemId); setScrollMode(Scroll.NONE); setAutoWidth(true); setHeight(Constants.SOUTH_PANEL_DIMENSION - 25); setUserManagementWidget(new UserManagementWidget(gsManagerServiceRemote, profilesManagerServiceRemote)); add(getUserManagementWidget()); getUserManagementWidget().getUsersInfo().getLoader().load(0, org.geoserver.geofence.gui.client.Constants.DEFAULT_PAGESIZE); //Deactivate the "User Management" tab as configured in the activateTabs.property (Use Case geostoreIntegration) TabUtils.deactivateTabIfNeeded(gsManagerServiceRemote, this); } /** * Sets the feature management widget. * * @param userManagementWidget * the new feature management widget */ public void setUserManagementWidget(UserManagementWidget userManagementWidget) { this.userManagementWidget = userManagementWidget; } /** * Gets the feature management widget. * * @return the feature management widget */ public UserManagementWidget getUserManagementWidget() { return userManagementWidget; } }