/** * Adds different selection elements to the given form. Like radio buttons and checkboxes. * * @param formItemsFactory * @param form */ private void addSelections(final FormItemContainer form) { // drop-down list uifactory.addDropdownSingleselect("guidemo.form.pulldown", form, keys, options, null); // vertical radio buttons verticalRadioButtons = uifactory.addRadiosVertical("guidemo.form.radio1", form, keys, options); // As an example on how to use the formInnerEvent method we'll catch events // on these radio buttons and therefore need to add the current controller // to their listeners. verticalRadioButtons.addActionListener(this, FormEvent.ONCLICK); // checkboxes final MultipleSelectionElement checkboxes = uifactory.addCheckboxesVertical( "checkboxes", "advanced_form.checkboxes", form, keys, options, null, 1); // Translate the keys to the yes and no option values final String[] yesOrNoOptions = new String[yesOrNoKeys.length]; for (int i = 0; i < yesOrNoKeys.length; i++) { yesOrNoOptions[i] = translate(yesOrNoKeys[i]); } // Horizontal radio buttons. Choice between Yes or No. horizontalRadioButtons = uifactory.addRadiosHorizontal("guidemo.form.radio2", form, yesOrNoKeys, yesOrNoOptions); // A default value is needed for show/hide rules horizontalRadioButtons.select(yesOrNoKeys[0], true); horizontalRadioButtons.addActionListener( this, FormEvent.ONCLICK); // Radios/Checkboxes need onclick because of IE bug OLAT-5753 }
private void initFilterList(final FormItemContainer formLayout) { final List<EPFilterSettings> existingFilters = ePFMgr.getSavedFilterSettings(getIdentity()); for (final Iterator<EPFilterSettings> existingFilterIt = existingFilters.iterator(); existingFilterIt.hasNext(); ) { if (existingFilterIt.next().isFilterEmpty()) { existingFilterIt.remove(); } } final int amount = existingFilters.size() + 1; nonEmptyFilters = new ArrayList<EPFilterSettings>(amount); final String[] theKeys = new String[amount]; final String[] theValues = new String[amount]; String presetFilterIndex = theKeys[0] = "0"; theValues[0] = translate("filter.all"); int i = 1; final String presetFilterID = filterSettings.getFilterId(); for (final EPFilterSettings epFilterSettings : existingFilters) { theKeys[i] = epFilterSettings.getFilterId(); theValues[i] = epFilterSettings.getFilterName(); if (presetFilterID != null && presetFilterID.equals(epFilterSettings.getFilterId())) { presetFilterIndex = epFilterSettings.getFilterId(); } nonEmptyFilters.add(epFilterSettings); i++; } // don't show anything if no filter exists if (!nonEmptyFilters.isEmpty()) { if (formLayout.getFormComponent("filter.select") == null) { filterSel = uifactory.addDropdownSingleselect( "filter.select", formLayout, theKeys, theValues, null); filterSel.addActionListener(this, FormEvent.ONCHANGE); } else { filterSel.setKeysAndValues(theKeys, theValues, null); filterSel.setVisible(true); } if (presetFilterIndex != null) { filterSel.select(presetFilterIndex, true); } } else if (formLayout.getFormComponent("filter.select") != null) { formLayout.getFormComponent("filter.select").setVisible(false); } }