Example usage for org.apache.wicket.extensions.ajax.markup.html.autocomplete AutoCompleteSettings setShowListOnFocusGain

List of usage examples for org.apache.wicket.extensions.ajax.markup.html.autocomplete AutoCompleteSettings setShowListOnFocusGain

Introduction

In this page you can find the example usage for org.apache.wicket.extensions.ajax.markup.html.autocomplete AutoCompleteSettings setShowListOnFocusGain.

Prototype

public AutoCompleteSettings setShowListOnFocusGain(final boolean showListOnFocusGain) 

Source Link

Document

Sets whether the list should be shown when the input field receives focus.

Usage

From source file:com.evolveum.midpoint.gui.api.component.autocomplete.AbstractAutoCompletePanel.java

License:Apache License

protected AutoCompleteSettings createAutoCompleteSettings() {
    AutoCompleteSettings autoCompleteSettings = new AutoCompleteSettings();
    autoCompleteSettings.setShowListOnEmptyInput(true);
    autoCompleteSettings.setShowListOnFocusGain(true);
    autoCompleteSettings.setMaxHeightInPx(200);
    autoCompleteSettings.setShowCompleteListOnFocusGain(true);
    return autoCompleteSettings;
}

From source file:jp.xet.uncommons.wicket.gp.TimeField.java

License:Apache License

private static AutoCompleteSettings newDefaultAutoCompleteSettings() {
    AutoCompleteSettings settings = new AutoCompleteSettings();
    settings.setShowCompleteListOnFocusGain(true);
    settings.setShowListOnEmptyInput(true);
    settings.setShowListOnFocusGain(true);
    settings.setMaxHeightInPx(160); // CHECKSTYLE IGNORE THIS LINE
    settings.setThrottleDelay(0);// w ww  . jav  a 2 s .  c o  m

    return settings;
}

From source file:org.geoserver.wps.web.ProcessSelectionPage.java

License:Open Source License

public ProcessSelectionPage(final WPSAccessRulePage wpsAccessRulePage, final ProcessGroupInfo pfi) {
    this.pfi = pfi;

    // prepare the process factory title
    Class<? extends ProcessFactory> factoryClass = pfi.getFactoryClass();
    ProcessFactory pf = GeoServerProcessors.getProcessFactory(factoryClass, false);
    if (pf == null) {
        throw new IllegalArgumentException("Failed to locate the process factory " + factoryClass);
    }//from  ww w.  ja v  a  2  s .  c  o  m
    this.title = pf.getTitle().toString(getLocale());

    Form form = new Form("form");
    add(form);

    GeoServerRoleService roleService = getSecurityManager().getActiveRoleService();
    try {
        for (GeoServerRole r : roleService.getRoles()) {
            availableRoles.add(r.getAuthority());
        }
    } catch (IOException e1) {
        LOGGER.log(Level.FINER, e1.getMessage(), e1);
    }

    final FilteredProcessesProvider provider = new FilteredProcessesProvider(pfi, getLocale());
    final AutoCompleteSettings settings = new AutoCompleteSettings();
    settings.setShowCompleteListOnFocusGain(false);
    settings.setShowListOnEmptyInput(true);
    settings.setShowListOnFocusGain(true);
    settings.setMaxHeightInPx(100);
    processSelector = new GeoServerTablePanel<FilteredProcess>("selectionTable", provider) {

        @Override
        protected Component getComponentForProperty(String id, final IModel itemModel,
                Property<FilteredProcess> property) {
            if (property.getName().equals("enabled")) {
                Fragment fragment = new Fragment(id, "enabledFragment", ProcessSelectionPage.this);
                CheckBox enabled = new CheckBox("enabled", property.getModel(itemModel));
                enabled.setOutputMarkupId(true);
                fragment.add(enabled);
                return fragment;
            } else if (property.getName().equals("title")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("description")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("roles")) {
                Fragment fragment = new Fragment(id, "rolesFragment", ProcessSelectionPage.this);
                TextArea<String> roles = new TextArea<String>("roles", property.getModel(itemModel)) {
                    public org.apache.wicket.util.convert.IConverter getConverter(java.lang.Class<?> type) {
                        return new RolesConverter(availableRoles);
                    };
                };
                StringBuilder selectedRoles = new StringBuilder();
                IAutoCompleteRenderer<String> roleRenderer = new RolesRenderer(selectedRoles);
                AutoCompleteBehavior<String> b = new RolesAutoCompleteBehavior(roleRenderer, settings,
                        selectedRoles, availableRoles);
                roles.setOutputMarkupId(true);
                roles.add(b);
                fragment.add(roles);
                return fragment;
            } else if (property.getName().equals("validated")) {
                final IModel<Boolean> hasValidatorsModel = property.getModel(itemModel);
                IModel<String> availableModel = new AbstractReadOnlyModel<String>() {

                    @Override
                    public String getObject() {
                        Boolean value = hasValidatorsModel.getObject();
                        if (Boolean.TRUE.equals(value)) {
                            return "*";
                        } else {
                            return "";
                        }
                    }

                };
                return new Label(id, availableModel);
            } else if (property.getName().equals("edit")) {
                Fragment fragment = new Fragment(id, "linkFragment", ProcessSelectionPage.this);
                // we use a submit link to avoid losing the other edits in the form
                Link link = new Link("link") {
                    @Override
                    public void onClick() {
                        FilteredProcess fp = (FilteredProcess) itemModel.getObject();
                        setResponsePage(new ProcessLimitsPage(ProcessSelectionPage.this, fp));
                    }
                };
                fragment.add(link);

                return fragment;
            }
            return null;
        }
    };
    processSelector.setFilterable(false);
    processSelector.setPageable(false);
    processSelector.setOutputMarkupId(true);
    form.add(processSelector);
    SubmitLink apply = new SubmitLink("apply") {
        @Override
        public void onSubmit() {
            // super.onSubmit();
            pfi.getFilteredProcesses().clear();
            for (FilteredProcess process : provider.getItems()) {
                if (!process.getRoles().isEmpty() || !process.getEnabled()
                        || !process.getValidators().isEmpty()) {
                    ProcessInfo pai = process.toProcessInfo();
                    pfi.getFilteredProcesses().add(pai);
                }
            }
            setResponsePage(wpsAccessRulePage);
        }
    };
    form.add(apply);
    Link cancel = new Link("cancel") {
        @Override
        public void onClick() {
            setResponsePage(wpsAccessRulePage);
        }
    };
    form.add(cancel);
}

From source file:org.geoserver.wps.web.WPSAccessRulePage.java

License:Open Source License

public WPSAccessRulePage() {
    wpsInfo = getGeoServer().getService(WPSInfo.class);
    Form form = new Form("form", new CompoundPropertyModel(wpsInfo));

    processFactories = cloneFactoryInfos(wpsInfo.getProcessGroups());
    ProcessFactoryInfoProvider provider = new ProcessFactoryInfoProvider(processFactories, getLocale());
    GeoServerRoleService roleService = getSecurityManager().getActiveRoleService();
    try {/*from  www.ja va2  s.  co  m*/
        for (GeoServerRole r : roleService.getRoles()) {
            availableRoles.add(r.getAuthority());
        }
    } catch (IOException e1) {
        LOGGER.log(Level.FINER, e1.getMessage(), e1);
    }

    TextField<Integer> maxComplexInputSize = new TextField<Integer>("maxComplexInputSize", Integer.class);
    maxComplexInputSize.add(new MinimumValidator<Integer>(0));
    form.add(maxComplexInputSize);

    final AutoCompleteSettings settings = new AutoCompleteSettings();
    settings.setShowCompleteListOnFocusGain(false);
    settings.setShowListOnEmptyInput(true);
    settings.setShowListOnFocusGain(true);
    settings.setMaxHeightInPx(100);

    GeoServerTablePanel<ProcessGroupInfo> processFilterEditor = new GeoServerTablePanel<ProcessGroupInfo>(
            "processFilterTable", provider) {

        @Override
        protected Component getComponentForProperty(String id, final IModel itemModel,
                Property<ProcessGroupInfo> property) {

            if (property.getName().equals("enabled")) {
                Fragment fragment = new Fragment(id, "enabledFragment", WPSAccessRulePage.this);
                CheckBox enabled = new CheckBox("enabled", property.getModel(itemModel));
                enabled.setOutputMarkupId(true);
                fragment.add(enabled);
                return fragment;
            } else if (property.getName().equals("prefix")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("title")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("summary")) {
                return new Label(id, property.getModel(itemModel));
            } else if (property.getName().equals("roles")) {
                Fragment fragment = new Fragment(id, "rolesFragment", WPSAccessRulePage.this);
                TextArea<String> roles = new TextArea<String>("roles", property.getModel(itemModel)) {
                    public org.apache.wicket.util.convert.IConverter getConverter(java.lang.Class<?> type) {
                        return new RolesConverter(availableRoles);
                    };
                };
                StringBuilder selectedRoles = new StringBuilder();
                IAutoCompleteRenderer<String> roleRenderer = new RolesRenderer(selectedRoles);
                AutoCompleteBehavior<String> b = new RolesAutoCompleteBehavior(roleRenderer, settings,
                        selectedRoles, availableRoles);
                roles.setOutputMarkupId(true);
                roles.add(b);
                fragment.add(roles);
                return fragment;
            } else if (property.getName().equals("edit")) {
                Fragment fragment = new Fragment(id, "linkFragment", WPSAccessRulePage.this);
                // we use a submit link to avoid losing the other edits in the form
                Link link = new Link("link") {
                    @Override
                    public void onClick() {
                        ProcessGroupInfo pfi = (ProcessGroupInfo) itemModel.getObject();
                        setResponsePage(new ProcessSelectionPage(WPSAccessRulePage.this, pfi));
                    }
                };
                fragment.add(link);

                return fragment;
            }

            return null;
        }
    };
    processFilterEditor.setFilterable(false);
    processFilterEditor.setPageable(false);
    processFilterEditor.setOutputMarkupId(true);
    form.add(processFilterEditor);

    form.add(new AjaxLink("processAccessModeHelp") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            dialog.showInfo(target, new StringResourceModel("processAccessModeHelp.title", getPage(), null),
                    new StringResourceModel("processAccessModeHelp.message", getPage(), null));
        }
    });
    catalogModeChoice = new RadioChoice("processAccessMode",
            new PropertyModel<CatalogMode>(wpsInfo, "catalogMode"), CATALOG_MODES, new CatalogModeRenderer());
    catalogModeChoice.setSuffix(" ");
    form.add(catalogModeChoice);

    SubmitLink submit = new SubmitLink("submit", new StringResourceModel("save", (Component) null, null)) {
        @Override
        public void onSubmit() {
            try {
                // overwrite the process factories that we did clone to achieve isolation
                List<ProcessGroupInfo> factories = wpsInfo.getProcessGroups();
                factories.clear();
                factories.addAll(processFactories);
                getGeoServer().save(wpsInfo);
                doReturn();
            } catch (Exception e) {
                error(e);
            }
        }
    };
    form.add(submit);

    Button cancel = new Button("cancel", new StringResourceModel("cancel", (Component) null, null)) {
        public void onSubmit() {
            doReturn();
        }
    };
    form.add(cancel);

    add(form);

}