use of org.apache.wicket.extensions.markup.html.tabs.ITab in project midpoint by Evolveum.
the class PageUserHistory method createMainPanel.
@Override
protected AbstractObjectMainPanel<UserType> createMainPanel(String id) {
return new FocusMainPanel<UserType>(id, getObjectModel(), getAssignmentsModel(), getProjectionModel(), this) {
@Override
protected List<ITab> createTabs(final PageAdminObjectDetails<UserType> parentPage) {
List<ITab> tabs = new ArrayList<>();
FocusTabVisibleBehavior authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_BASIC_URL);
tabs.add(new PanelTab(parentPage.createStringResource("pageAdminFocus.basic"), authorization) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return createFocusDetailsTabPanel(panelId, parentPage);
}
});
//hidden, will be displayed in future version
// authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_PROJECTIONS_URL);
// tabs.add(
// new CountablePanelTab(parentPage.createStringResource("pageAdminFocus.projections"), authorization) {
//
// private static final long serialVersionUID = 1L;
//
// @Override
// public WebMarkupContainer createPanel(String panelId) {
// return createFocusProjectionsTabPanel(panelId, parentPage);
// }
//
// @Override
// public String getCount() {
// return Integer.toString(getProjectionModel().getObject() == null ?
// 0 : getProjectionModel().getObject().size());
// }
// });
authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_ASSIGNMENTS_URL);
tabs.add(new CountablePanelTab(parentPage.createStringResource("pageAdminFocus.assignments"), authorization) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return createFocusAssignmentsTabPanel(panelId, parentPage);
}
@Override
public String getCount() {
return Integer.toString(getAssignmentsModel().getObject() == null ? 0 : getAssignmentsModel().getObject().size());
}
});
authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_DELEGATED_TO_ME_URL);
tabs.add(new CountablePanelTab(parentPage.createStringResource("FocusType.delegatedToMe"), authorization) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new AssignmentTablePanel<UserType>(panelId, parentPage.createStringResource("FocusType.delegatedToMe"), getDelegatedToMeModel()) {
private static final long serialVersionUID = 1L;
@Override
public void populateAssignmentDetailsPanel(ListItem<AssignmentEditorDto> item) {
DelegationEditorPanel editor = new DelegationEditorPanel(ID_ROW, item.getModel(), true, new ArrayList<AssignmentsPreviewDto>(), PageUserHistory.this);
item.add(editor);
}
@Override
public String getExcludeOid() {
return getObject().getOid();
}
@Override
protected List<InlineMenuItem> createAssignmentMenu() {
return new ArrayList<>();
}
};
}
@Override
public String getCount() {
return Integer.toString(getDelegatedToMeModel().getObject() == null ? 0 : getDelegatedToMeModel().getObject().size());
}
});
return tabs;
}
@Override
protected boolean getOptionsPanelVisibility() {
return false;
}
};
}
use of org.apache.wicket.extensions.markup.html.tabs.ITab in project midpoint by Evolveum.
the class TaskMainPanel method initTabPanel.
protected void initTabPanel(Form mainForm) {
List<ITab> tabs = createTabs();
TabbedPanel<ITab> tabPanel = WebComponentUtil.createTabPanel(ID_TAB_PANEL, parentPage, tabs, new TabbedPanel.RightSideItemProvider() {
@Override
public Component createRightSideItem(String id) {
VisibleEnableBehaviour boxEnabled = new VisibleEnableBehaviour() {
@Override
public boolean isEnabled() {
return !parentPage.isEdit();
}
};
TaskShowAdvancedFeaturesPanel advancedFeaturesPanel = new TaskShowAdvancedFeaturesPanel(id, showAdvancedFeaturesModel, boxEnabled) {
@Override
protected void onAdvancedFeaturesUpdate(AjaxRequestTarget target) {
target.add(getTabPanel());
target.add(getButtonPanel());
// we DO NOT call parentPage.refresh here because in edit mode this would erase any model changes
// (well, because - for some strange reasons - even this code erases name and description input fields
// occassionally, we hide 'advanced features' checkbox in editing mode)
}
};
advancedFeaturesPanel.add(new VisibleEnableBehaviour() {
@Override
public boolean isVisible() {
// we don't distinguish between basic/advanced features for other task types yet
return parentPage.getTaskDto().isWorkflow();
}
});
return advancedFeaturesPanel;
}
});
mainForm.add(tabPanel);
}
use of org.apache.wicket.extensions.markup.html.tabs.ITab in project midpoint by Evolveum.
the class AbstractRoleMainPanel method createTabs.
@Override
protected List<ITab> createTabs(final PageAdminObjectDetails<R> parentPage) {
List<ITab> tabs = super.createTabs(parentPage);
FocusTabVisibleBehavior authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_INDUCEMENTS_URL);
tabs.add(new CountablePanelTab(parentPage.createStringResource("FocusType.inducement"), authorization) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new AssignmentTablePanel<R>(panelId, parentPage.createStringResource("FocusType.inducement"), inducementsModel) {
private static final long serialVersionUID = 1L;
@Override
public List<AssignmentType> getAssignmentTypeList() {
return getObject().asObjectable().getInducement();
}
@Override
public String getExcludeOid() {
return getObject().getOid();
}
@Override
protected boolean ignoreMandatoryAttributes() {
return true;
}
};
}
@Override
public String getCount() {
return Integer.toString(inducementsModel.getObject() == null ? 0 : inducementsModel.getObject().size());
}
});
authorization = new FocusTabVisibleBehavior(unwrapModel(), ComponentConstants.UI_FOCUS_TAB_MEMBERS_URL);
tabs.add(new PanelTab(parentPage.createStringResource("pageRole.members"), authorization) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return createMemberPanel(panelId);
}
@Override
public boolean isVisible() {
return super.isVisible() && getObjectWrapper().getStatus() != ContainerStatus.ADDING && isAllowedToReadRoleMembership(getObjectWrapper().getOid(), parentPage);
}
});
return tabs;
}
use of org.apache.wicket.extensions.markup.html.tabs.ITab in project midpoint by Evolveum.
the class PageResource method createTabsPanel.
private AjaxTabbedPanel<ITab> createTabsPanel() {
List<ITab> tabs = new ArrayList<ITab>();
tabs.add(new PanelTab(createStringResource("PageResource.tab.details")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceDetailsTabPanel(panelId, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.content.tasks")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceTasksPanel(panelId, true, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.content.account")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceContentTabPanel(panelId, ShadowKindType.ACCOUNT, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.content.entitlement")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceContentTabPanel(panelId, ShadowKindType.ENTITLEMENT, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.content.generic")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceContentTabPanel(panelId, ShadowKindType.GENERIC, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.content.others")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceContentTabPanel(panelId, null, resourceModel, PageResource.this);
}
});
tabs.add(new PanelTab(createStringResource("PageResource.tab.connector")) {
private static final long serialVersionUID = 1L;
@Override
public WebMarkupContainer createPanel(String panelId) {
return new ResourceConnectorPanel(panelId, null, resourceModel, PageResource.this);
}
});
AjaxTabbedPanel<ITab> resourceTabs = new AjaxTabbedPanel<ITab>(ID_TAB_PANEL, tabs) {
private static final long serialVersionUID = 1L;
@Override
protected void onTabChange(int index) {
updateBreadcrumbParameters(PARAMETER_SELECTED_TAB, index);
}
};
resourceTabs.setOutputMarkupId(true);
return resourceTabs;
}
use of org.apache.wicket.extensions.markup.html.tabs.ITab in project midpoint by Evolveum.
the class PageCertDefinition method initTabs.
private void initTabs(Form mainForm) {
List<ITab> tabs = new ArrayList<>();
tabs.add(new AbstractTab(createStringResource("PageCertDefinition.basic")) {
@Override
public WebMarkupContainer getPanel(String panelId) {
return new DefinitionBasicPanel(panelId, definitionModel);
}
});
tabs.add(new AbstractTab(createStringResource("PageCertDefinition.scopeDefinition")) {
@Override
public WebMarkupContainer getPanel(String panelId) {
return new DefinitionScopePanel(panelId, new PropertyModel<>(definitionModel, CertDefinitionDto.F_SCOPE_DEFINITION));
}
});
tabs.add(new CountablePanelTab(createStringResource("PageCertDefinition.stagesDefinition")) {
@Override
public WebMarkupContainer createPanel(String panelId) {
return new DefinitionStagesPanel(panelId, new PropertyModel<>(definitionModel, CertDefinitionDto.F_STAGE_DEFINITION), PageCertDefinition.this);
}
@Override
public String getCount() {
return String.valueOf(definitionModel.getObject().getNumberOfStages());
}
});
tabs.add(new AbstractTab(createStringResource("PageCertDefinition.xmlDefinition")) {
@Override
public WebMarkupContainer getPanel(String panelId) {
return new DefinitionXmlPanel(panelId, definitionModel);
}
});
TabbedPanel tabPanel = WebComponentUtil.createTabPanel(ID_TAB_PANEL, this, tabs, null);
mainForm.add(tabPanel);
}
Aggregations