List of usage examples for com.vaadin.ui ComponentContainer removeAllComponents
public void removeAllComponents();
From source file:ro.zg.netcell.vaadin.action.application.OpenSelectedEntityHandler.java
License:Apache License
@Override public void handle(final ActionContext actionContext) throws Exception { final ComponentContainer container = actionContext.getTargetContainer(); container.removeAllComponents(); // container.setSizeFull(); // container.setMargin(false); final OpenGroupsApplication app = actionContext.getApp(); final Entity entity = actionContext.getEntity(); EntityState entityState = entity.getState(); boolean isOpened = entityState.isOpened(); String complexEntityType = entity.getComplexType(); ApplicationConfigManager appConfigManager = app.getAppConfigManager(); List<String> subtyesList = appConfigManager.getSubtypesForComplexType(complexEntityType); // Panel currentContainer = (Panel) container; ComponentContainer currentContainer = container; entity.setEntityContainer(container); CssLayout headerContainer = new CssLayout(); headerContainer.addStyleName("entity-header-container"); currentContainer.addComponent(headerContainer); // CssLayout titleContainer = new CssLayout(); // titleContainer.setWidth("80%"); // titleContainer.addStyleName(OpenGroupsStyles.MIDDLE_LEFT); // headerContainer.addComponent(titleContainer); // titleContainer.setSizeFull(); // /* show level */ // String levelMsg = getMessage("level"); // Label levelLabel = new Label(levelMsg+" "+entity.getDepth()); // titleContainer.addComponent(levelLabel); /* show entity type */ if (entity.getState().isEntityTypeVisible()) { String entityTypeCaption = getMessage(entity.getComplexType()); String size = OpenGroupsIconsSet.MEDIUM; if (entity.getContent() != null) { size = OpenGroupsIconsSet.LARGE; }/* www . j av a 2s . c om*/ // Label typeIcon = new Label(); // typeIcon.setDescription(entityTypeCaption); // typeIcon.setIcon(OpenGroupsResources.getIcon(entity.getComplexType().toLowerCase(), // size)); // typeIcon.setSizeUndefined(); // typeIcon.addStyleName("top-left right-margin-20"); // headerContainer.addComponent(typeIcon); Embedded eicon = new Embedded(null, OpenGroupsResources.getIcon(entity.getComplexType().toLowerCase(), size)); eicon.setDescription(entityTypeCaption); eicon.addStyleName("top-left right-margin-20"); headerContainer.addComponent(eicon); // Embedded eicon2 = new Embedded("", // OpenGroupsResources.getIcon(entity.getComplexType().toLowerCase(), // size)); // eicon2.setDescription(entityTypeCaption); // eicon2.addStyleName("top-left right-margin-20"); // headerContainer.addComponent(eicon2); } // Label test = new Label("test"); // test.setSizeUndefined(); // test.addStyleName("top-left"); // headerContainer.addComponent(test); /* add last action for this entity */ if (entity.getLastActionType() != null) { String actionType = entity.getLastActionType(); String msg = getMessage(actionType); // Label actionLabel = new Label(); // actionLabel.setDescription(msg); // actionLabel.setIcon(OpenGroupsResources.getIcon(actionType, // OpenGroupsIconsSet.MEDIUM)); // actionLabel.setSizeUndefined(); // actionLabel.addStyleName(OpenGroupsStyles.MIDDLE_LEFT); // titleContainer.addComponent(actionLabel); Embedded actionIcon = new Embedded(null, OpenGroupsResources.getIcon(actionType, OpenGroupsIconsSet.MEDIUM)); actionIcon.setDescription(msg); actionIcon.addStyleName("top-left right-margin-20"); headerContainer.addComponent(actionIcon); } EntityLink selectedCause = entity.getSelectedCause(); /* display title */ /* if the entity is open */ /* treat leafs like all posts 21.08.2012 */ if (isOpened /* * || (subtyesList == null && entity.getLastActionType() == * null) */) { Label title = new Label(entity.getTitle()); if (isOpened) { title.addStyleName(OpenGroupsStyles.TITLE_LINK); } else { title.addStyleName("list-issue-title"); } // title.addStyleName("top-left"); // title.setSizeFull(); title.setWidth("80%"); // title.setHeight("100%"); headerContainer.addComponent(title); } else { // Button titleLink = new Button(entity.getTitle()); // titleLink.setWidth("100%"); // titleLink.addStyleName(BaseTheme.BUTTON_LINK); // titleLink.addStyleName("issue-title"); // titleLink.setDescription(entity.getContentPreview()); Label titleLink = null; /* treat leafs like all posts 21.08.2012 */ // if (subtyesList != null) { titleLink = OpenGroupsUtil.getLinkForEntity(entity, app); titleLink.setDescription(entity.getContentPreview()); titleLink.addStyleName("list-issue-title"); // } // /* is a leaf entity in the recent activity list */ // else { // String parentTitle = selectedCause.getParentTitle(); // Entity parentEntity = new Entity(selectedCause.getParentId()); // parentEntity.setTitle(parentTitle); // // parentEntity.getState().setDesiredActionsPath( // complexEntityType + // Defaults.getDefaultActionForEntityType(complexEntityType)); // titleLink = OpenGroupsUtil.getLinkForEntity(parentEntity, app, // entity.getTitle()); // titleLink.setDescription(entity.getContentPreview()); // titleLink.addStyleName("list-issue-title"); // // } // titleLink.setWidth("75%"); titleLink.addStyleName("top-left"); headerContainer.addComponent(titleLink); // titleContainer.setExpandRatio(titleLink, 10f); // currentContainer.addStyleName("list-item"); } /* add parent link */ if (selectedCause != null && !isOpened && entity.getContent() == null) { // CssLayout parentInfoContainer = new CssLayout(); // parentInfoContainer.addStyleName(OpenGroupsStyles.TOP_RIGHT); // headerContainer.addComponent(parentInfoContainer); // headerContainer.setColumnExpandRatio(1, 1f); // headerContainer.setComponentAlignment(parentInfoContainer, // Alignment.TOP_RIGHT); /* if parent entity is the current selected entity, say it */ Entity mainEntity = actionContext.getMainEntity(); if (selectedCause.getParentId() == mainEntity.getId()) { // String currentMsg = getMessage(mainEntity.getComplexType() + // ".current"); // Label currentEntityLabel = new Label(currentMsg); // currentEntityLabel.setSizeUndefined(); // currentEntityLabel.addStyleName("top-right"); // headerContainer.addComponent(currentEntityLabel); // titleContainer.setExpandRatio(currentEntityLabel, 2f); } else {/* add link to the parent entity */ String parentTitle = selectedCause.getParentTitle(); final Entity parentEntity = new Entity(selectedCause.getParentId()); parentEntity.setTitle(parentTitle); Label parentLink = OpenGroupsUtil.getLinkForEntityWithImage(parentEntity, app, OpenGroupsResources.getIconPath(OpenGroupsIconsSet.PARENT, OpenGroupsIconsSet.MEDIUM)); parentLink.setDescription(parentTitle); parentLink.setSizeUndefined(); parentLink.addStyleName(OpenGroupsStyles.TOP_RIGHT); // CssLayout imgContainer = new CssLayout(); // imgContainer.setWidth("24px"); // imgContainer.setHeight("24px"); // imgContainer.addStyleName(OpenGroupsStyles.TOP_RIGHT); // imgContainer.addComponent(parentLink); // parentInfoContainer.addComponent(imgContainer); headerContainer.addComponent(parentLink); } } /* display header actions */ if (isOpened) { UserActionList headerActions = getAvailableActions(entity, ActionLocations.HEADER); boolean allowRefresh = appConfigManager.getComplexEntityBooleanParam(entity.getComplexType(), ComplexEntityParam.ALLOW_REFRESH); boolean hasHeaderActions = headerActions != null && headerActions.getActions() != null; if (allowRefresh || hasHeaderActions) { HorizontalLayout actionsContainer = new HorizontalLayout(); actionsContainer.addStyleName(OpenGroupsStyles.TOP_RIGHT); actionsContainer.setSpacing(true); // /* add refresh button */ // if (allowRefresh) { // actionsContainer.addComponent(getRefreshButton(entity, app)); // } // if (hasHeaderActions) { // for (final UserAction ha : // headerActions.getActions().values()) { // Button actButton = getButtonForAction(ha, entity, app); // actionsContainer.addComponent(actButton); // } // } headerContainer.addComponent(actionsContainer); // headerContainer.setColumnExpandRatio(1, 1f); // headerContainer.setComponentAlignment(actionsContainer, // Alignment.TOP_RIGHT); entity.setHeaderActionLinksContainer(actionsContainer); refreshHeaderActionLinks(entity, app, actionContext); } } /* display tags */ List<Tag> tags = entity.getTags(); if (tags != null) { if (tags.size() > 0) { String tagsList = ""; for (int i = 0; i < tags.size(); i++) { Tag tag = tags.get(i); tagsList += tag.getTagName(); if ((tags.size() - i) > 1) { tagsList += ", "; } } String tagsLabelString = app.getMessage("tags.label") + tagsList; currentContainer.addComponent(new Label(tagsLabelString)); } } CssLayout statusPane = new CssLayout(); statusPane.addStyleName("entity-status-pane"); currentContainer.addComponent(statusPane); if (appConfigManager.getComplexEntityBooleanParam(complexEntityType, ComplexEntityParam.SHOW_POST_INFO)) { String insertDateString = entity.getInsertDate().toString(); Label insertDate = new Label(app.getMessage("posted") + DateUtil.removeNanos(insertDateString)); statusPane.addComponent(insertDate); // statusPane.setColumnExpandRatio(0, 1f); } CssLayout statsSummaryPane = new CssLayout(); statsSummaryPane.addStyleName("entity-stats-summary-pane"); // statsSummaryPane.setSizeFull(); // statsSummaryPane.setWidth("100%"); currentContainer.addComponent(statsSummaryPane); /* add votes */ if (appConfigManager.getComplexEntityBooleanParam(complexEntityType, ComplexEntityParam.ALLOW_VOTING)) { // HorizontalLayout votesPane = new HorizontalLayout(); // votesPane.setMargin(false); // votesPane.addStyleName("middle-left"); // votesPane.addStyleName("margin-right"); // statsSummaryPane.addComponent(votesPane); // statsSummaryPane.setExpandRatio(votesPane, 1f); // statsSummaryPane.setComponentAlignment(votesPane, // Alignment.MIDDLE_LEFT); Label votesLabel = new Label(app.getMessage("votes") + ": "); votesLabel.setContentMode(Label.CONTENT_XHTML); votesLabel.setSizeUndefined(); votesLabel.addStyleName("middle-left"); // votesPane.addComponent(votesLabel); Label proVotes = FormatingUtils.coloredLabel(entity.getProVotes(), "336633"); proVotes.addStyleName("middle-left"); proVotes.setSizeUndefined(); // votesPane.addComponent(proVotes); Label dash = new Label("-"); dash.addStyleName("middle-left"); dash.setSizeUndefined(); // votesPane.addComponent(new Label("-")); Label opposedVotes = FormatingUtils.coloredLabel(entity.getOpposedVotes(), "660000"); // votesPane.addComponent(opposedVotes); opposedVotes.addStyleName("middle-left"); opposedVotes.addStyleName("right-margin-10"); opposedVotes.setSizeUndefined(); statsSummaryPane.addComponent(votesLabel); statsSummaryPane.addComponent(proVotes); statsSummaryPane.addComponent(dash); statsSummaryPane.addComponent(opposedVotes); } List<TypeRelationConfig> subtypes = appConfigManager.getSubtypesForType(entity.getComplexTypeId()); // if (subtyesList != null) { if (subtypes != null) { Map<String, Long> firstLevelSubtypesCount = entity.getSubtypeEntitiesCount(); Map<String, Long> allSubtypesCount = entity.getRecursiveSubtypeEntitiesCount(); // for (String s : subtyesList) { // String subtype = s.toLowerCase(); for (TypeRelationConfig trc : subtypes) { String targetComplexType = trc.getTargetComplexType(); String subtype = targetComplexType.toLowerCase(); String displayName = app.getMessage("subtype." + subtype); Entity refEntity = new Entity(entity.getId()); refEntity.getState().setDesiredActionsPath( targetComplexType + Defaults.getDefaultActionForEntityType(targetComplexType)); Label subtypeLink = OpenGroupsUtil.getLinkForEntity(refEntity, app, displayName); String valueString = ": " + firstLevelSubtypesCount.get(subtype); // if (getAppConfigManager().getComplexEntityBooleanParam(s, // ComplexEntityParam.ALLOW_RECURSIVE_LIST)) { if (appConfigManager.getTypeRelationBooleanConfigParam(trc.getId(), TypeRelationConfigParam.ALLOW_RECURSIVE_LIST)) { Long recCount = allSubtypesCount.get(subtype); if (recCount != null) { valueString += " / " + recCount; } } Label sl = new Label(valueString); sl.setWidth(null); sl.addStyleName("middle-left"); sl.addStyleName("right-margin-10"); subtypeLink.setWidth(null); subtypeLink.addStyleName("middle-left"); statsSummaryPane.addComponent(subtypeLink); statsSummaryPane.addComponent(sl); // statsSummaryPane.setExpandRatio(sl, 1f); // statsSummaryPane.setComponentAlignment(sl, // Alignment.MIDDLE_LEFT); } } displaySummaryActions(entity, app, statsSummaryPane, actionContext); // statusPane.addComponent(statsSummaryPane, 1, 0); // statusPane.setColumnExpandRatio(1, 1.8f); // statusPane.setComponentAlignment(statsSummaryPane, // Alignment.MIDDLE_RIGHT); // summaryLayout.setComponentAlignment(statsSummaryPane, // Alignment.MIDDLE_RIGHT); /* add the content */ Object contentObj = entity.getContent(); if (contentObj != null) { // content.setSizeFull(); Panel contentContainer = new Panel(); // CssLayout contentContainer = new CssLayout(); contentContainer.addStyleName("text-content"); currentContainer.addComponent(contentContainer); Label content = new Label(contentObj.toString()); content.setContentMode(Label.CONTENT_XHTML); // content.addStyleName("text-label"); contentContainer.addComponent(content); /* if the content is visible, display footer actions */ displayFooterActions(entity, app, currentContainer, actionContext); } }
From source file:ro.zg.netcell.vaadin.action.application.OpenSelectedEntityWithHeaderActions.java
License:Apache License
@Override public void handle(ActionContext actionContext) throws Exception { OpenGroupsApplication app = actionContext.getApp(); Entity entity = actionContext.getEntity(); ComponentContainer container = actionContext.getTargetContainer(); app.getModel().populateCauses(entity); getActionsManager().executeAction(ActionsManager.REFRESH_SELECTED_ENTITY, entity, app, container, false, actionContext);// ww w . j av a 2 s .co m if (app.hasErrors()) { return; } container.removeAllComponents(); // container.setWidth("100%"); if (app.getRootEntity().getId() != entity.getId()) { /* create header containers */ createHeaderContainers(actionContext); /* add causes combo */ addCausesFragment(actionContext); } // Panel entityContainer = new Panel(); CssLayout entityContainer = new CssLayout(); entityContainer.addStyleName("entity-container"); // entityContainer.setSizeFull(); // entityContainer.setWidth("100%"); container.addComponent(entityContainer); getActionsManager().executeAction(ActionsManager.OPEN_SELECTED_ENTITY, entity, app, entityContainer, false, actionContext); }
From source file:ro.zg.netcell.vaadin.action.application.UpdateEntityHandler.java
License:Apache License
@Override public void handle(ActionContext actionContext) throws Exception { ComponentContainer targetContainer = actionContext.getTargetContainer(); Entity entity = actionContext.getEntity(); targetContainer.removeAllComponents(); ExtendedForm form = getForm(entity, actionContext.getUserAction(), actionContext.getApp(), targetContainer, actionContext);/*from w w w . j av a 2 s .c o m*/ targetContainer.addComponent(form); }
From source file:ro.zg.netcell.vaadin.action.application.UpdateEntityHandler.java
License:Apache License
private void displaySuccessfulMessage(final Entity entity, final UserAction ua, final OpenGroupsApplication app, final ComponentContainer targetComponent, final ActionContext ac) { /* store current target component */ // final ComponentContainer targetComponent = app.getTargetComponent(); targetComponent.removeAllComponents(); String entityTypeLowerCase = ua.getTargetEntityType().toLowerCase(); String createdSuccessfullyMessage = app.getMessage(entityTypeLowerCase + ".updated.successfully"); String newUpdateMessage = app.getMessage("new.update"); HorizontalLayout container = new HorizontalLayout(); container.setSizeFull();// www. j a va 2 s . co m container.setSpacing(true); targetComponent.addComponent(container); Label success = new Label(createdSuccessfullyMessage); container.addComponent(success); Button newUpdate = new Button(newUpdateMessage); container.addComponent(newUpdate); newUpdate.addListener(new ClickListener() { @Override public void buttonClick(ClickEvent event) { // Entity entity = new Entity(entityId); // app.pushSelectedEntity(entity); // app.executeAction(ActionsManager.OPEN_ENTITY_IN_WINDOW); ua.executeHandler(entity, app, targetComponent, ac); } }); }
From source file:ro.zg.netcell.vaadin.action.application.UserNotificationRulesHandler.java
License:Apache License
private void refreshNotificationsView(final ActionContext actionContext) throws Exception { final NotificationRulesList rulesList = getNotificationRulesList(actionContext); final OpenGroupsApplication app = actionContext.getApp(); ComponentContainer container = actionContext.getTargetContainer(); container.removeAllComponents(); UserEventHandler<UserEvent> eventHandler = new UserEventHandler<UserEvent>() { @Override/*from ww w .ja v a2 s .c o m*/ public void handleEvent(UserEvent event) { boolean saved = app.getModel().saveUserNotificationRules(app.getCurrentUserId(), actionContext.getEntity().getId(), rulesList); if (saved) { rulesList.markAsSaved(); } else { app.pushError(OpenGroupsExceptions.getSystemError()); } } }; UserNotificationRulesView view = getViewsManager().createView(UserNotificationRulesView.class, eventHandler); rulesList.addView(view); view.update(rulesList); container.addComponent(view.getContainer()); }
From source file:ro.zg.netcell.vaadin.action.application.VoteEntityHandler.java
License:Apache License
@Override public void handle(ActionContext actionContext) throws Exception { ComponentContainer container = actionContext.getTargetContainer(); container.removeAllComponents(); Entity selectedEntity = actionContext.getEntity(); EntityUserData userData = selectedEntity.getUserData(); if (userData.getVote() != null) { showAlreadyVotedFragment(container, selectedEntity, actionContext.getApp(), actionContext.getUserAction(), actionContext); } else {// w w w .j av a2s . com showVotesFragment(container, selectedEntity, actionContext.getApp(), actionContext.getUserAction(), actionContext); } }
From source file:ro.zg.netcell.vaadin.action.user.UpdateUserHandler.java
License:Apache License
@Override public void handle(ActionContext actionContext) throws Exception { ComponentContainer targetContainer = actionContext.getTargetContainer(); targetContainer.removeAllComponents(); Form form = getUpdateForm(actionContext.getUserAction(), actionContext.getApp(), actionContext.getTargetContainer(), actionContext); targetContainer.addComponent(form);//ww w . ja va 2s. c om }
From source file:ro.zg.netcell.vaadin.action.user.UpdateUserHandler.java
License:Apache License
private void showSuccessMessage(final OpenGroupsApplication app, final ComponentContainer container, final UserAction ua, final ActionContext ac) { container.removeAllComponents(); Label msg = new Label(getMessage("user.data.succesfully.updated")); Button button = new Button(getMessage("new.user.data.update")); button.addListener(new ClickListener() { @Override//from www . ja va2 s . c o m public void buttonClick(ClickEvent event) { ua.executeHandler(null, app, container, ac); } }); container.addComponent(msg); container.addComponent(button); }
From source file:ro.zg.netcell.vaadin.action.UserActionListHandler.java
License:Apache License
@Override public void handle(final ActionContext actionContext) throws Exception { ComponentContainer displayArea = actionContext.getTargetContainer(); displayArea.removeAllComponents(); UserActionList ual = (UserActionList) actionContext.getUserAction(); final OpenGroupsApplication app = actionContext.getApp(); final Entity entity = actionContext.getEntity(); final TabSheet actionsTabSheet = new TabSheet(); actionsTabSheet.addStyleName(Reindeer.TABSHEET_MINIMAL); // actionsTabSheet.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); actionsTabSheet.addStyleName(OpenGroupsStyles.USER_ACTIONS_TABSHEET); // final CssLayout contentArea = new CssLayout(); // contentArea.setWidth("100%"); // contentArea.setStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); // displayArea.addComponent(contentArea); /* add listener */ actionsTabSheet.addListener(new SelectedTabChangeListener() { @Override//from www . j a va 2s .c om public void selectedTabChange(SelectedTabChangeEvent event) { TabSheet tabSheet = event.getTabSheet(); AbstractComponentContainer selectedTabContent = (AbstractComponentContainer) tabSheet .getSelectedTab(); UserAction ua = (UserAction) selectedTabContent.getData(); if (entity != null) { Deque<String> desiredActionsQueue = entity.getState().getDesiredActionTabsQueue(); /* * if a desired action exists, it will be set afterwards, otherwise allow the first action from the * list to be selected by default */ if (desiredActionsQueue.size() != 0) { String nextAction = desiredActionsQueue.peek(); if (nextAction.equals(ua.getActionName())) { /* remove action from the queue */ desiredActionsQueue.remove(); } else { /* * if this action does not match with the next desired action, do nothing */ return; } } else { entity.getState().resetPageInfo(); } } if (ua instanceof UserActionList) { // selectedTabContent.removeStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); // contentArea.setWidth("100%"); // contentArea.setMargin(false); // selectedTabContent.setMargin(false); ua.executeHandler(entity, app, selectedTabContent, false, actionContext); } else { // selectedTabContent.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); // contentArea.setWidth("99.5%"); // contentArea.setMargin(true); // selectedTabContent.setMargin(true); // selectedTabContent.setWidth("100%"); if (entity != null) { entity.getState().setCurrentTabAction(ua); entity.getState().setCurrentTabActionContainer(selectedTabContent); entity.getState().setCurrentActionsPath(ua.getFullActionPath()); // entity.getState().getDesiredActionTabsQueue().clear(); // entity.getState().resetPageInfoForCurrentAction(); actionContext.getWindow().setFragmentToEntity(entity); } ua.executeHandler(entity, app, selectedTabContent, false, actionContext); } } }); /* add the tabsheet to the target component */ // List<String> currentUserTypes = getCurrentUserTypes(entity, app); Map<String, ComponentContainer> actionPathContainers = new HashMap<String, ComponentContainer>(); List<UserAction> actionsList = new ArrayList<UserAction>(ual.getActions().values()); for (UserAction cua : actionsList) { /* display only the actions that the user is allowed to see */ // if (!cua.allowRead(currentUserTypes)) { if (!cua.isVisible(actionContext)) { continue; } CssLayout tabContent = new CssLayout(); if (cua instanceof UserActionList) { // tabContent.setMargin(false); // contentArea.setMargin(false); // tabContent.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); // tabContent.setWidth("100%"); } else { // tabContent.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); tabContent.setMargin(true); // contentArea.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); // contentArea.setMargin(true); } tabContent.addStyleName(OpenGroupsStyles.USER_ACTION_CONTENT_PANE); actionPathContainers.put(cua.getActionName(), tabContent); tabContent.setData(cua); actionsTabSheet.addTab(tabContent, cua.getDisplayName(), null); } displayArea.addComponent(actionsTabSheet); if (entity != null) { Deque<String> desiredActionsQueue = entity.getState().getDesiredActionTabsQueue(); if (desiredActionsQueue.size() != 0) { // System.out.println("desired actions: " + // entity.getState().getDesiredActionsPath()); // System.out.println("full url: "+app.getFullUrl()); /* select the tab specified by the next desired action */ actionsTabSheet.setSelectedTab(actionPathContainers.get(desiredActionsQueue.peek())); } } }