List of usage examples for org.apache.wicket.markup.html.panel Fragment add
public MarkupContainer add(final Component... children)
From source file:com.evolveum.midpoint.gui.api.component.FocusTypeAssignmentPopupTabPanel.java
License:Apache License
@Override protected void initParametersPanel(Fragment parametersPanel) { WebMarkupContainer relationContainer = new WebMarkupContainer(ID_RELATION_CONTAINER); relationContainer.setOutputMarkupId(true); parametersPanel.add(relationContainer); relationContainer.add(new RelationDropDownChoicePanel(ID_RELATION, null, getSupportedRelations(), false)); }
From source file:com.evolveum.midpoint.gui.api.component.MemberPopupTabPanel.java
License:Apache License
@Override protected void initParametersPanel(Fragment parametersPanel) { WebMarkupContainer relationContainer = new WebMarkupContainer(ID_RELATION_CONTAINER); relationContainer.setOutputMarkupId(true); relationContainer.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override/*from w w w . j a v a 2s . c o m*/ public boolean isVisible() { return CollectionUtils.isNotEmpty(supportedRelationList); } @Override public boolean isEnabled() { return CollectionUtils.isNotEmpty(supportedRelationList) && supportedRelationList.size() > 1; } }); parametersPanel.add(relationContainer); relationContainer.add(new RelationDropDownChoicePanel(ID_RELATION, null, supportedRelationList, false)); }
From source file:com.evolveum.midpoint.gui.api.component.ResourceTypeAssignmentPopupTabPanel.java
License:Apache License
@Override protected void initParametersPanel(Fragment parametersPanel) { initModels();// w w w .j a va 2 s.c o m WebMarkupContainer kindContainer = new WebMarkupContainer(ID_KIND_CONTAINER); kindContainer.setOutputMarkupId(true); parametersPanel.add(kindContainer); DropDownChoicePanel<ShadowKindType> kindSelector = WebComponentUtil.createEnumPanel(ShadowKindType.class, ID_KIND, WebComponentUtil.createReadonlyModelFromEnum(ShadowKindType.class), Model.of(), ResourceTypeAssignmentPopupTabPanel.this, true); kindSelector.setOutputMarkupId(true); kindSelector.getBaseFormComponent().add(new AjaxFormComponentUpdatingBehavior("change") { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { kindValueUpdatePerformed(target); } }); kindSelector.getBaseFormComponent().add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isEnabled() { return getSelectedObjectsList() != null && getSelectedObjectsList().size() > 0; } }); kindSelector.getBaseFormComponent().add(new EmptyOnChangeAjaxFormUpdatingBehavior()); kindSelector.setOutputMarkupPlaceholderTag(true); kindContainer.add(kindSelector); WebMarkupContainer intentContainer = new WebMarkupContainer(ID_INTENT_CONTAINER); intentContainer.setOutputMarkupId(true); parametersPanel.add(intentContainer); DropDownChoicePanel<String> intentSelector = new DropDownChoicePanel<String>(ID_INTENT, Model.of(), intentValues, true); intentSelector.getBaseFormComponent().add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isEnabled() { return getKindValue() != null && getSelectedObjectsList() != null && getSelectedObjectsList().size() > 0; } }); intentSelector.getBaseFormComponent().add(new AjaxFormComponentUpdatingBehavior("change") { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { intentValueUpdatePerformed(target); } }); intentSelector.getBaseFormComponent().add(new EmptyOnChangeAjaxFormUpdatingBehavior()); intentSelector.setOutputMarkupId(true); intentSelector.setOutputMarkupPlaceholderTag(true); intentContainer.add(intentSelector); WebMarkupContainer associationContainer = new WebMarkupContainer(ID_ASSOCIATION_CONTAINER); associationContainer.setOutputMarkupId(true); associationContainer.add(new VisibleBehaviour(() -> isEntitlementAssignment())); parametersPanel.add(associationContainer); DropDownChoicePanel<RefinedAssociationDefinition> associationSelector = new DropDownChoicePanel<>( ID_ASSOCIATION, Model.of(), associationValuesModel, new IChoiceRenderer<RefinedAssociationDefinition>() { private static final long serialVersionUID = 1L; @Override public Object getDisplayValue(RefinedAssociationDefinition refinedAssociationDefinition) { return WebComponentUtil.getAssociationDisplayName(refinedAssociationDefinition); } @Override public String getIdValue(RefinedAssociationDefinition refinedAssociationDefinition, int index) { return Integer.toString(index); } @Override public RefinedAssociationDefinition getObject(String id, IModel<? extends List<? extends RefinedAssociationDefinition>> choices) { return StringUtils.isNotBlank(id) ? choices.getObject().get(Integer.parseInt(id)) : null; } }, true); associationSelector.setOutputMarkupId(true); associationSelector.getBaseFormComponent().add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isEnabled() { return getSelectedObjectsList() != null && getSelectedObjectsList().size() > 0 && getKindValue() != null && StringUtils.isNotEmpty(getIntentValue()); } }); associationSelector.getBaseFormComponent().add(new EmptyOnChangeAjaxFormUpdatingBehavior()); associationSelector.setOutputMarkupPlaceholderTag(true); associationContainer.add(associationSelector); }
From source file:com.evolveum.midpoint.gui.impl.page.admin.configuration.component.LoggingConfigurationTabPanel.java
License:Apache License
protected void initLayout() { PrismContainerPanel<LoggingConfigurationType> loggingPanel = new PrismContainerPanel<LoggingConfigurationType>( ID_LOGGING, getModel(), true, new Form<>("form"), itemWrapper -> getLoggingVisibility(itemWrapper.getPath()), getPageBase()); add(loggingPanel);/*from w ww . j a v a 2 s . c om*/ TableId tableIdLoggers = UserProfileStorage.TableId.LOGGING_TAB_LOGGER_TABLE; PageStorage pageStorageLoggers = getPageBase().getSessionStorage() .getLoggingConfigurationTabLoggerTableStorage(); IModel<ContainerWrapper<ClassLoggerConfigurationType>> loggerModel = new ContainerWrapperFromObjectWrapperModel<ClassLoggerConfigurationType, SystemConfigurationType>( Model.of(getModelObject().getObjectWrapper()), ItemPath.create(SystemConfigurationType.F_LOGGING, LoggingConfigurationType.F_CLASS_LOGGER)); MultivalueContainerListPanel<ClassLoggerConfigurationType> loggersMultivalueContainerListPanel = new MultivalueContainerListPanel<ClassLoggerConfigurationType>( ID_LOGGERS, loggerModel, tableIdLoggers, pageStorageLoggers) { private static final long serialVersionUID = 1L; @Override protected List<ContainerValueWrapper<ClassLoggerConfigurationType>> postSearch( List<ContainerValueWrapper<ClassLoggerConfigurationType>> items) { for (int i = 0; i < items.size(); i++) { ContainerValueWrapper<ClassLoggerConfigurationType> logger = items.get(i); if (ProfilingConfigurationTabPanel.LOGGER_PROFILING .equals(((ClassLoggerConfigurationType) logger.getContainerValue().getRealValue()) .getPackage())) { items.remove(logger); continue; } } return items; } @Override protected void newItemPerformed(AjaxRequestTarget target) { PrismContainerValue<ClassLoggerConfigurationType> newLogger = loggerModel.getObject().getItem() .createNewValue(); ContainerValueWrapper<ClassLoggerConfigurationType> newLoggerWrapper = getLoggersMultivalueContainerListPanel() .createNewItemContainerValueWrapper(newLogger, loggerModel); newLoggerWrapper.setShowEmpty(true, false); newLoggerWrapper.computeStripes(); loggerEditPerformed(target, Model.of(newLoggerWrapper), null); } @Override protected void initPaging() { initLoggerPaging(); } @Override protected boolean enableActionNewObject() { return true; } @Override protected ObjectQuery createQuery() { return null; } @Override protected List<IColumn<ContainerValueWrapper<ClassLoggerConfigurationType>, String>> createColumns() { return initLoggersBasicColumns(); } @Override protected void initCustomLayout() { } @Override protected void itemPerformedForDefaultAction(AjaxRequestTarget target, IModel<ContainerValueWrapper<ClassLoggerConfigurationType>> rowModel, List<ContainerValueWrapper<ClassLoggerConfigurationType>> listItems) { loggerEditPerformed(target, rowModel, listItems); } @Override protected List<SearchItemDefinition> initSearchableItems( PrismContainerDefinition<ClassLoggerConfigurationType> containerDef) { List<SearchItemDefinition> defs = new ArrayList<>(); return defs; } }; add(loggersMultivalueContainerListPanel); TableId tableIdAppenders = UserProfileStorage.TableId.LOGGING_TAB_APPENDER_TABLE; PageStorage pageStorageAppenders = getPageBase().getSessionStorage() .getLoggingConfigurationTabAppenderTableStorage(); IModel<ContainerWrapper<AppenderConfigurationType>> appenderModel = new ContainerWrapperFromObjectWrapperModel<AppenderConfigurationType, SystemConfigurationType>( Model.of(getModelObject().getObjectWrapper()), ItemPath.create(SystemConfigurationType.F_LOGGING, LoggingConfigurationType.F_APPENDER)); MultivalueContainerListPanelWithDetailsPanel<AppenderConfigurationType> appendersMultivalueContainerListPanel = new MultivalueContainerListPanelWithDetailsPanel<AppenderConfigurationType>( ID_APPENDERS, appenderModel, tableIdAppenders, pageStorageAppenders) { private static final long serialVersionUID = 1L; @Override protected List<ContainerValueWrapper<AppenderConfigurationType>> postSearch( List<ContainerValueWrapper<AppenderConfigurationType>> items) { return items; } @Override protected void newItemPerformed(AjaxRequestTarget target) { newAppendersClickPerformed(target); } @Override protected void initPaging() { initAppenderPaging(); } @Override protected boolean enableActionNewObject() { return true; } @Override protected ObjectQuery createQuery() { return null; } @Override protected List<IColumn<ContainerValueWrapper<AppenderConfigurationType>, String>> createColumns() { return initAppendersBasicColumns(); } @Override protected MultivalueContainerDetailsPanel<AppenderConfigurationType> getMultivalueContainerDetailsPanel( ListItem<ContainerValueWrapper<AppenderConfigurationType>> item) { return LoggingConfigurationTabPanel.this.getAppendersMultivalueContainerDetailsPanel(item); } @Override protected List<SearchItemDefinition> initSearchableItems( PrismContainerDefinition<AppenderConfigurationType> containerDef) { List<SearchItemDefinition> defs = new ArrayList<>(); return defs; } @Override protected WebMarkupContainer initButtonToolbar(String contentAreaId) { Fragment searchContainer = new Fragment(contentAreaId, ID_BUTTON_TOOLBAR_FRAGMENT, LoggingConfigurationTabPanel.this); Form appenderTypeForm = new Form(ID_CHOICE_APPENDER_TYPE_FORM); searchContainer.add(appenderTypeForm); AjaxSubmitButton newObjectIcon = new AjaxSubmitButton(ID_NEW_ITEM_BUTTON, new Model<>("<i class=\"fa fa-plus\"></i>")) { private static final long serialVersionUID = 1L; @Override protected void onSubmit(AjaxRequestTarget target) { newItemPerformed(target); } }; newObjectIcon.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isVisible() { return enableActionNewObject(); } @Override public boolean isEnabled() { return isNewObjectButtonEnabled(); } }); newObjectIcon.add(AttributeModifier.append("class", createStyleClassModelForNewObjectIcon())); appenderTypeForm.add(newObjectIcon); List<QName> appendersChoicesList = new ArrayList<QName>(); appendersChoicesList.add(FileAppenderConfigurationType.COMPLEX_TYPE); appendersChoicesList.add(SyslogAppenderConfigurationType.COMPLEX_TYPE); DropDownChoicePanel<QName> appenderChoise = new DropDownChoicePanel(ID_APPENDERS_CHOICE, new Model(FileAppenderConfigurationType.COMPLEX_TYPE), Model.of(appendersChoicesList), new QNameIChoiceRenderer("LoggingConfigurationTabPanel." + ID_APPENDERS_CHOICE)); appenderChoise.setOutputMarkupId(true); appenderTypeForm.addOrReplace(appenderChoise); return searchContainer; } }; add(appendersMultivalueContainerListPanel); IModel<ContainerWrapper<AuditingConfigurationType>> auditModel = new ContainerWrapperFromObjectWrapperModel<AuditingConfigurationType, SystemConfigurationType>( Model.of(getModelObject().getObjectWrapper()), ItemPath.create(SystemConfigurationType.F_LOGGING, LoggingConfigurationType.F_AUDITING)); PrismContainerPanel<AuditingConfigurationType> auditPanel = new PrismContainerPanel<>(ID_AUDITING, auditModel, true, new Form<>("form"), null, getPageBase()); add(auditPanel); setOutputMarkupId(true); }
From source file:com.evolveum.midpoint.web.component.assignment.AbstractRoleAssignmentPanel.java
License:Apache License
protected Fragment initCustomButtonToolbar(String contentAreaId) { Fragment searchContainer = new Fragment(contentAreaId, ID_BUTTON_TOOLBAR_FRAGMENT, this); AjaxIconButton newObjectIcon = getMultivalueContainerListPanel().getNewItemButton(ID_NEW_ITEM_BUTTON); searchContainer.add(newObjectIcon); AjaxIconButton showAllAssignmentsButton = new AjaxIconButton(ID_SHOW_ALL_ASSIGNMENTS_BUTTON, new Model<>("fa fa-address-card"), createStringResource("AssignmentTablePanel.menu.showAllAssignments")) { private static final long serialVersionUID = 1L; @Override// ww w . ja v a2s.c o m public void onClick(AjaxRequestTarget ajaxRequestTarget) { showAllAssignments(ajaxRequestTarget); } }; searchContainer.addOrReplace(showAllAssignmentsButton); showAllAssignmentsButton.setOutputMarkupId(true); showAllAssignmentsButton.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; public boolean isVisible() { return showAllAssignmentsVisible(); } }); return searchContainer; }
From source file:com.evolveum.midpoint.web.component.assignment.AbstractRoleAssignmentPanel.java
License:Apache License
@Override protected Fragment getCustomSpecificContainers(String contentAreaId, ContainerValueWrapper<AssignmentType> modelObject) { Fragment specificContainers = new Fragment(contentAreaId, AssignmentPanel.ID_SPECIFIC_CONTAINERS_FRAGMENT, this); specificContainers.add(getSpecificContainerPanel(modelObject)); return specificContainers; }
From source file:com.evolveum.midpoint.web.component.assignment.AssignmentPanel.java
License:Apache License
private MultivalueContainerDetailsPanel<AssignmentType> createMultivalueContainerDetailsPanel( ListItem<ContainerValueWrapper<AssignmentType>> item) { if (isAssignmentsLimitReached()) { item.getModelObject().setReadonly(true, true); } else if (item.getModelObject().isReadonly()) { item.getModelObject().setReadonly(false, true); }//from w ww.jav a2 s . co m MultivalueContainerDetailsPanel<AssignmentType> detailsPanel = new MultivalueContainerDetailsPanel<AssignmentType>( MultivalueContainerListPanelWithDetailsPanel.ID_ITEM_DETAILS, item.getModel()) { private static final long serialVersionUID = 1L; @Override protected ItemVisibility getBasicTabVisibity(ItemWrapper itemWrapper, ItemPath parentAssignmentPath) { return AssignmentPanel.this.getBasicTabVisibity(itemWrapper, parentAssignmentPath, item.getModel()); } @Override protected void addBasicContainerValuePanel(String idPanel) { add(getBasicContainerPanel(idPanel, item.getModel())); } @Override protected Fragment getSpecificContainers(String contentAreaId) { Fragment specificContainers = getCustomSpecificContainers(contentAreaId, item.getModelObject()); Form form = this.findParent(Form.class); ItemPath assignmentPath = item.getModelObject().getContainerValue().getValue() .asPrismContainerValue().getPath(); ContainerWrapperFromObjectWrapperModel<ActivationType, FocusType> activationModel = new ContainerWrapperFromObjectWrapperModel<ActivationType, FocusType>( ((PageAdminObjectDetails<FocusType>) getPageBase()).getObjectModel(), assignmentPath.append(AssignmentType.F_ACTIVATION)); PrismContainerPanel<ActivationType> acitvationContainer = new PrismContainerPanel<ActivationType>( ID_ACTIVATION_PANEL, IModel.of(activationModel), true, form, itemWrapper -> getActivationVisibileItems(itemWrapper.getPath(), assignmentPath), getPageBase()); specificContainers.add(acitvationContainer); return specificContainers; } @Override protected DisplayNamePanel<AssignmentType> createDisplayNamePanel(String displayNamePanelId) { IModel<AssignmentType> displayNameModel = getDisplayModel( item.getModelObject().getContainerValue().getValue()); return new DisplayNamePanel<AssignmentType>(displayNamePanelId, displayNameModel) { private static final long serialVersionUID = 1L; @Override protected QName getRelation() { return getRelationForDisplayNamePanel(item.getModelObject()); } @Override protected IModel<String> getKindIntentLabelModel() { return getKindIntentLabelModelForDisplayNamePanel(item.getModelObject()); } }; } }; return detailsPanel; }
From source file:com.evolveum.midpoint.web.component.assignment.AssignmentPanel.java
License:Apache License
protected Fragment getCustomSpecificContainers(String contentAreaId, ContainerValueWrapper<AssignmentType> modelObject) { Fragment specificContainers = new Fragment(contentAreaId, AssignmentPanel.ID_SPECIFIC_CONTAINERS_FRAGMENT, this); specificContainers.add(getSpecificContainerPanel(modelObject)); return specificContainers; }
From source file:com.evolveum.midpoint.web.component.assignment.InducedEntitlementsPanel.java
License:Apache License
@Override protected Fragment getCustomSpecificContainers(String contentAreaId, ContainerValueWrapper<AssignmentType> modelObject) { Fragment specificContainers = new Fragment(contentAreaId, AssignmentPanel.ID_SPECIFIC_CONTAINERS_FRAGMENT, this); specificContainers.add(getConstructionAssociationPanel(modelObject)); specificContainers.add(super.getBasicContainerPanel(ID_ASSIGNMENT_DETAILS, new Model(modelObject))); return specificContainers; }
From source file:com.evolveum.midpoint.web.page.login.PageAbstractFlow.java
License:Apache License
private void initLayout() { // initAccessBehaviour(mainForm); // add(mainForm); Form<?> mainForm = new Form<>(ID_MAIN_FORM); mainForm.setMultiPart(true);/*from w w w . j a v a2 s. c o m*/ add(mainForm); WebMarkupContainer content = null; Fragment fragment = null; if (!isCustomFormDefined()) { fragment = new Fragment(ID_CONTENT_AREA, "staticContent", this); content = initStaticLayout(); } else { fragment = new Fragment(ID_CONTENT_AREA, "dynamicContent", this); content = initDynamicLayout(); } fragment.setOutputMarkupId(true); content.setOutputMarkupId(true); initCaptchaAndButtons(fragment); fragment.add(content); mainForm.add(fragment); }