Example usage for org.apache.wicket Component setEnabled

List of usage examples for org.apache.wicket Component setEnabled

Introduction

In this page you can find the example usage for org.apache.wicket Component setEnabled.

Prototype

public final Component setEnabled(final boolean enabled) 

Source Link

Document

Sets whether this component is enabled.

Usage

From source file:org.wicketstuff.progressbar.examples.SimpleProgressExamplePage.java

License:Apache License

public SimpleProgressExamplePage() {
    final Form<Void> form = new Form<Void>("form");
    final ProgressBar bar;
    form.add(bar = new ProgressBar("bar", new ProgressionModel() {
        private static final long serialVersionUID = 1L;

        // Get current progress from page field
        @Override//from   w  ww. j  a v a  2s . com
        protected Progression getProgression() {
            return new Progression(progress, "Item " + item);
        }
    }) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onFinished(AjaxRequestTarget target) {
            // Hide progress bar after finish
            setVisible(false);
            // Add some JavaScript after finish
            target.appendJavaScript("alert('Task done!')");

            // re-enable button
            Component button = form.get("submit");
            button.setEnabled(true);
            target.add(button);
        }
    });
    // Hide progress bar initially
    bar.setVisible(false);

    form.add(new IndicatingAjaxButton("submit", form) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            // Start the progress bar, will set visibility to true
            bar.start(target);
            // Thread holds reference to page :(
            new Thread() {
                @Override
                public void run() {
                    for (int i = 0; i <= 50; i++) {
                        try {
                            Thread.sleep(400);
                        } catch (InterruptedException e) {
                        }
                        item = i;
                        progress = i * 2;
                    }
                    // The bar is stopped automatically, if progress is done
                }
            }.start();

            // disable button
            setEnabled(false);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {

            target.prependJavaScript("alert('Failed to update progress');");
        }

    });
    form.setOutputMarkupId(true);
    add(form);
}

From source file:org.wicketstuff.progressbar.examples.TaskServiceProgressExamplePage.java

License:Apache License

public TaskServiceProgressExamplePage() {
    final Form<Void> form = new Form<Void>("form");
    final ProgressBar bar;
    final TaskProgressionModel progressionModel = new TaskProgressionModel() {
        private static final long serialVersionUID = 1L;

        @Override/*from w  w  w  . ja  v  a2s.  c o  m*/
        protected ITaskService getTaskService() {
            return getExampleApplication().getTaskService();
        }
    };
    form.add(bar = new ProgressBar("bar", progressionModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onFinished(AjaxRequestTarget target) {
            ITaskService taskService = getExampleApplication().getTaskService();
            // finish the task!
            taskService.finish(progressionModel.getTaskId());
            // Hide progress bar after finish
            setVisible(false);
            // Add some JavaScript after finish
            target.appendJavaScript("alert('Task done and finished!')");

            // re-enable button
            Component button = form.get("submit");
            button.setEnabled(true);
            target.add(button);
        }
    });
    // Hide progress bar initially
    bar.setVisible(false);

    form.add(new IndicatingAjaxButton("submit", form) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            ITaskService taskService = getExampleApplication().getTaskService();
            // Schedule and start a new task
            Long taskId = taskService.scheduleAndStart(new DummyTask(60));
            // Set taskId for model
            progressionModel.setTaskId(taskId);
            // Start the progress bar, will set visibility to true
            bar.start(target);

            // disable button
            setEnabled(false);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {

            target.prependJavaScript("alert('Failed to schedule task.');");

        }

    });
    form.setOutputMarkupId(true);
    add(form);
}

From source file:org.wicketstuff.security.components.markup.html.form.SecureForm.java

License:Apache License

/**
 * /* ww w. j av  a 2 s. c o  m*/
 * @see org.apache.wicket.Component#onBeforeRender()
 */
@Override
protected void onBeforeRender() {
    super.onBeforeRender();
    // prevent client from submitting this form
    if (!isEnableAllowed()) {
        // auto disable all children
        visitChildren(new IVisitor<Component, Void>() {
            public void component(Component object, IVisit<Void> visit) {
                object.setEnabled(false);
            }
        });
        // TODO test if this works with listviews etc
    }

}

From source file:ro.nextreports.server.web.report.DynamicParameterRuntimePanel.java

License:Apache License

private void enableItem(ListItem<QueryParameter> item, IModel dynamicModel, AjaxRequestTarget target) {
    Iterator it = item.iterator();
    while (it.hasNext()) {
        Component component = (Component) it.next();
        if (component.isVisible()) {
            if (!component.getId().startsWith("dynamic")) {
                component.setEnabled(!(Boolean) dynamicModel.getObject());
                if (target != null) {
                    target.add(component);
                }/* ww w .  j  a v a  2 s . c  o  m*/
            }
        }
    }
}

From source file:ro.nextreports.server.web.report.jasper.JasperRuntimePanel.java

License:Apache License

@SuppressWarnings("unchecked")
private void createItem(ListItem<QueryParameter> item) {

    WebMarkupContainer paletteContainer = new WebMarkupContainer("paletteContainer");

    final QueryParameter parameter = item.getModelObject();

    IModel generalModel = new PropertyModel(runtimeModel.getParameters(), parameter.getName() + ".rawValue");
    IModel listModel = new PropertyModel(runtimeModel.getParameters(), parameter.getName() + ".valueList");

    AjaxFormComponentUpdatingBehavior ajaxUpdate = createAjax(parameter);

    final TextField textField = new TextField("txtValue", generalModel);
    textField.setVisible(false);//from w  ww .  j ava2s .  c o  m
    try {
        textField.setType(Class.forName(parameter.getValueClassName()));
    } catch (ClassNotFoundException e) {
        e.printStackTrace();
        error(e.getMessage());
    }

    final DateTextField txtDate = new DateTextField("txtDate", generalModel) {

        @Override
        public IModel<String> getLabel() {
            return new Model<String>(getParameterName(parameter));
        }

    };
    txtDate.add(new DatePicker() {

        @Override
        protected boolean enableMonthYearSelection() {
            return true;
        }

    });
    txtDate.setVisible(false);

    final CheckBox chkBox = new CheckBox("chkBox", generalModel);
    chkBox.setVisible(false);

    DropDownChoice downChoice = new DropDownChoice("cmbValue", generalModel, new ArrayList<String>());
    downChoice.setVisible(false);

    Component currentComponent;
    if (parameter.getSelection().equalsIgnoreCase(QueryParameter.SINGLE_SELECTION)) {
        if (parameter.getSource() != null && parameter.getSource().trim().length() > 0) {
            // combo
            downChoice = new DropDownChoice("cmbValue", generalModel, new LoadableDetachableModel() {
                @Override
                protected Object load() {
                    return runtimeModel.getParameters().get(parameter.getName()).getValues();
                }
            });
            if (parameter.isMandatory()) {
                downChoice.setRequired(true);
            }
            downChoice.setLabel(new Model<String>(getParameterName(parameter)));
            downChoice.setVisible(true);
            currentComponent = downChoice;
        } else {
            // not combo
            if (parameter.getValueClassName().contains("Date")) {
                if (parameter.isMandatory()) {
                    txtDate.setRequired(true);
                }
                txtDate.setVisible(true);
                currentComponent = txtDate;
            } else if (parameter.getValueClassName().contains("Boolean")) {
                if (parameter.isMandatory()) {
                    chkBox.setRequired(true);
                }
                chkBox.setLabel(new Model<String>(getParameterName(parameter)));
                chkBox.setVisible(true);
                currentComponent = chkBox;
            } else {
                if (parameter.isMandatory()) {
                    textField.setRequired(true);
                }
                textField.setLabel(new Model<String>(getParameterName(parameter)));
                textField.setVisible(true);
                currentComponent = textField;
            }
        }

        paletteContainer.add(new EmptyPanel("palette"));
    } else {
        if (parameter.getSource() != null && parameter.getSource().trim().length() > 0) {
            Palette palette = createPalette(parameter, listModel, ajaxUpdate);
            paletteContainer.add(palette.setOutputMarkupId(true));
            currentComponent = palette;
        } else {
            ManualListPanel list = new ManualListPanel(parameter, listModel, 10, ajaxUpdate);
            paletteContainer.add(list.setOutputMarkupId(true));
            currentComponent = list;
        }
    }

    if (USER_PARAM.equals(parameter.getName())) {
        currentComponent.setEnabled(false);
    }

    paramComponentsMap.put(parameter, currentComponent);

    // if this parameter has dependent parameters
    // we must update values for those using an ajax update
    // for Palette this is done in its class
    if (getChildDependentParameters(parameter).size() > 0) {
        if (!(currentComponent instanceof Palette)) {
            currentComponent.add(ajaxUpdate);
        }
    }

    String name = getDisplayableParameterName(parameter);
    Label lbl = new Label("name", name);
    lbl.setEscapeModelStrings(false);
    item.add(lbl);
    item.add(txtDate.setOutputMarkupId(true));
    item.add(downChoice.setOutputMarkupId(true));
    item.add(paletteContainer.setOutputMarkupId(true));
    item.add(textField.setOutputMarkupId(true));
    item.add(chkBox.setOutputMarkupId(true));

}