List of usage examples for org.apache.wicket.markup.html.form EnumChoiceRenderer EnumChoiceRenderer
public EnumChoiceRenderer(Component resourceSource)
From source file:org.sakaiproject.attendance.tool.panels.GradingRulesPanel.java
License:Educational Community License
public GradingRulesPanel(String id) { super(id);//from w w w. j a va 2s.c o m enable(new FeedbackPanel("rules-feedback") { @Override protected Component newMessageDisplayComponent(final String id, final FeedbackMessage message) { final Component newMessageDisplayComponent = super.newMessageDisplayComponent(id, message); if (message.getLevel() == FeedbackMessage.ERROR || message.getLevel() == FeedbackMessage.DEBUG || message.getLevel() == FeedbackMessage.FATAL || message.getLevel() == FeedbackMessage.WARNING) { add(AttributeModifier.replace("class", "alertMessage")); } else if (message.getLevel() == FeedbackMessage.INFO) { add(AttributeModifier.replace("class", "messageSuccess")); } return newMessageDisplayComponent; } }); this.pageFeedbackPanel.setOutputMarkupId(true); add(this.pageFeedbackPanel); // Backing object final GradingRule gradingRule = new GradingRule(attendanceLogic.getCurrentAttendanceSite()); // Form model final Model<GradingRule> formModel = new Model<>(gradingRule); // Form final Form<GradingRule> form = new Form<>("grading-rule-add-form", formModel); final AjaxButton addRuleButton = new AjaxButton("add-rule-submit", form) { private static final long serialVersionUID = 1L; @Override protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) { final GradingRule gradingRule = (GradingRule) form.getModelObject(); if (gradingRule.getStartRange() < 0) { pageFeedbackPanel.error(getString("attendance.grading.start.range.error")); } else if (gradingRule.getEndRange() != null && gradingRule.getEndRange() < 0) { pageFeedbackPanel.error(getString("attendance.grading.end.range.error")); } else if (gradingRule.getEndRange() != null && gradingRule.getEndRange() < gradingRule.getStartRange()) { pageFeedbackPanel.error(getString("attendance.grading.end.start.error")); } else { attendanceLogic.addGradingRule(gradingRule); pageFeedbackPanel.info(getString("attendance.grading.add.rule.success")); target.add(form); gradingRulesListPanel.setNeedRegrade(true); target.add(gradingRulesListPanel); } target.add(pageFeedbackPanel); } @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(pageFeedbackPanel); } }; form.add(addRuleButton); List<AttendanceStatus> activeAttendanceStatuses = attendanceLogic.getActiveStatusesForCurrentSite(); activeAttendanceStatuses.sort(Comparator.comparingInt(AttendanceStatus::getSortOrder)); List<Status> activeStatuses = new ArrayList<>(); for (AttendanceStatus attendanceStatus : activeAttendanceStatuses) { if (attendanceStatus.getStatus() != Status.UNKNOWN) { activeStatuses.add(attendanceStatus.getStatus()); } } final DropDownChoice<Status> status = new DropDownChoice<>("status", new PropertyModel<>(formModel, "status"), activeStatuses, new EnumChoiceRenderer<>(this)); status.setRequired(true); form.add(status); final TextField<Integer> startRange = new TextField<>("start-range", new PropertyModel<Integer>(formModel, "startRange")); startRange.setRequired(true); form.add(startRange); final TextField<Integer> endRange = new TextField<>("end-range", new PropertyModel<Integer>(formModel, "endRange")); form.add(endRange); final TextField<Double> points = new TextField<>("points", new PropertyModel<Double>(formModel, "points")); points.setRequired(true); form.add(points); add(form); gradingRulesListPanel = new GradingRulesListPanel("rules-list", pageFeedbackPanel, false); gradingRulesListPanel.setOutputMarkupId(true); add(gradingRulesListPanel); }
From source file:se.inera.axel.rivssek.webconsole.RivSsekServiceMappingEditPage.java
License:Open Source License
@SuppressWarnings({ "unchecked", "rawtypes" }) public RivSsekServiceMappingEditPage(PageParameters params) { super(params); add(new FeedbackPanel("feedback")); RivSsekServiceMapping mapping = null; String id = params.get("id").toString(); if (id != null) { mapping = mappingRepository.findOne(id); }// w w w. j av a 2s. c o m if (mapping == null) { mapping = new RivSsekServiceMapping.Builder().ssekReceiverType(IdType.CN).build(); } IModel<RivSsekServiceMapping> mappingModel = new CompoundPropertyModel<>(mapping); Form<RivSsekServiceMapping> form = new Form<RivSsekServiceMapping>("form", mappingModel) { @Override protected void onSubmit() { super.onSubmit(); RivSsekServiceMapping rivShsMapping = getModelObject(); mappingRepository.save(rivShsMapping); setResponsePage(RivSsekServiceMappingPage.class); } private static final long serialVersionUID = 1L; }; form.add(new ControlGroupContainer(new TextField<String>("rivServiceNamespace").setRequired(true))); form.add(new ControlGroupContainer(new TextField<String>("rivLogicalAddress").setRequired(true))); form.add(new ControlGroupContainer(new TextField<String>("address").setRequired(true))); DropDownChoice<IdType> ssekReceiverType = new DropDownChoice<>("ssekReceiverType", Arrays.asList(IdType.values()), new EnumChoiceRenderer<IdType>(form)); form.add(new ControlGroupContainer(ssekReceiverType.setRequired(true))); form.add(new ControlGroupContainer(new TextField<String>("ssekReceiver").setRequired(true))); form.add(new SubmitLink("submit")); add(form); }
From source file:sk.lazyman.gizmo.web.app.PageCustomer.java
License:Apache License
private void initLayout() { Form form = new Form(ID_FORM); add(form);/*w ww .ja v a 2 s.co m*/ initButtons(form); FormGroup name = new FormGroup(ID_NAME, new PropertyModel<String>(model, Customer.F_NAME), createStringResource("Customer.name"), true); form.add(name); AreaFormGroup description = new AreaFormGroup(ID_DESCRIPTION, new PropertyModel<String>(model, Customer.F_DESCRIPTION), createStringResource("Customer.description"), false); description.setRows(3); form.add(description); DropDownFormGroup type = new DropDownFormGroup(ID_TYPE, new PropertyModel<CustomerType>(model, Customer.F_TYPE), createStringResource("Customer.type"), true); type.setChoices(GizmoUtils.createReadonlyModelFromEnum(CustomerType.class)); type.setRenderer(new EnumChoiceRenderer(this)); DropDownChoice choice = (DropDownChoice) type.getFormComponent(); form.add(type); final DropDownFormGroup partner = new DropDownFormGroup(ID_PARTNER, new PropertyModel<Customer>(model, Customer.F_PARTNER), createStringResource("Customer.partner"), false); partner.setOutputMarkupId(true); partner.setChoices(new LoadableModel<List<Customer>>(false) { @Override protected List<Customer> load() { CustomerRepository repository = getCustomerRepository(); List<Customer> list = repository.listPartners(); if (list == null) { list = new ArrayList<>(); } return list; } }); partner.setRenderer(GizmoUtils.createCustomerChoiceRenderer()); partner.setNullValid(true); partner.setDefaultChoice(null); partner.getFormInput().add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { Customer customer = model.getObject(); return !CustomerType.PARTNER.equals(customer.getType()); } }); form.add(partner); choice.add(new AjaxFormComponentUpdatingBehavior("onchange") { @Override protected void onUpdate(AjaxRequestTarget target) { Customer customer = model.getObject(); if (CustomerType.PARTNER.equals(customer.getType())) { customer.setPartner(null); } target.add(partner); } }); List<ITab> tabList = new ArrayList<>(); tabList.add(new AbstractTab(createStringResource("PageCustomer.projects")) { @Override public WebMarkupContainer getPanel(String panelId) { return new ProjectsTab(panelId); } }); // tabList.add(new AbstractTab(createStringResource("PageCustomer.logs")) { // // @Override // public WebMarkupContainer getPanel(String panelId) { // return new CustomerLogsTab(panelId); // } // }); // // tabList.add(new AbstractTab(createStringResource("PageCustomer.notifications")) { // // @Override // public WebMarkupContainer getPanel(String panelId) { // return new CustomerNotificationsTab(panelId); // } // }); AjaxBootstrapTabbedPanel tabs = new AjaxBootstrapTabbedPanel(ID_TABS, tabList); add(tabs); }