Example usage for org.apache.wicket.ajax AjaxRequestTarget focusComponent

List of usage examples for org.apache.wicket.ajax AjaxRequestTarget focusComponent

Introduction

In this page you can find the example usage for org.apache.wicket.ajax AjaxRequestTarget focusComponent.

Prototype

void focusComponent(Component component);

Source Link

Document

Sets the focus in the browser to the given component.

Usage

From source file:org.onehippo.forge.settings.management.config.urlrewriter.UrlRewriterConfigPanel.java

License:Apache License

private WebMarkupContainer createSkippedPrefixes(Model copyOfSkippedPrefixesModel) {

    final WebMarkupContainer listContainer = new WebMarkupContainer("skippedPrefixesContainer");
    //generate a markup-id so the contents can be updated through an AJAX call
    listContainer.setOutputMarkupId(true);
    ListView<String> skippedPrefixes = new ListView<String>("urlrewriter-skipped-prefixes",
            copyOfSkippedPrefixesModel) {
        private static final long serialVersionUID = 1L;

        @Override//from   w  w  w . ja  v  a 2 s .com
        protected void populateItem(final ListItem<String> item) {
            RequiredTextField prefixField = new RequiredTextField("prefix", item.getModel());
            prefixField.setOutputMarkupId(true);
            prefixField.add(new OnChangeAjaxBehavior() {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                }
            });
            item.add(prefixField);

            AjaxSubmitLink remove = new AjaxSubmitLink("remove") {
                private static final long serialVersionUID = 1L;

                @Override
                protected void onSubmit(AjaxRequestTarget target, Form form) {
                    int index = item.getIndex();
                    getModelObject().remove(index);
                    target.add(listContainer);
                }
            };
            remove.setDefaultFormProcessing(false);
            item.add(remove);
        }
    };

    AjaxLink addPrefix = new AjaxLink("add") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            skippedPrefixes.getModelObject().add("");
            target.add(listContainer);
            target.focusComponent(this);
        }
    };

    skippedPrefixes.setOutputMarkupId(true);
    listContainer.add(skippedPrefixes);
    listContainer.add(addPrefix);
    return listContainer;
}

From source file:org.opensingular.lib.wicket.util.modal.BSModalBorder.java

License:Apache License

public void focusFirstComponent(AjaxRequestTarget target) {
    getBodyContainer().visitChildren(FormComponent.class,
            (IVisitor<FormComponent<?>, Void>) (object, visit) -> {
                if (object.isEnabledInHierarchy()) {
                    target.focusComponent(object);
                    visit.stop();//ww  w  .ja v  a2  s. co  m
                }
            });
}

From source file:org.projectforge.plugins.skillmatrix.SkillSelectPanel.java

License:Open Source License

/**
 * //from   ww  w  .jav  a  2  s  . co m
 */
private void initAutoCompletePanels() {
    userselectContainer = new WebMarkupContainer("userselectContainer") {
        private static final long serialVersionUID = -4871020567729661148L;

        /**
         * @see org.apache.wicket.Component#isVisible()
         */
        @Override
        public boolean isVisible() {
            // only show if we are in ajax select skill mode
            return ajaxSkillSelectMode == true;
        }
    };
    add(userselectContainer);
    userselectContainer.setOutputMarkupId(true);
    userselectContainer.setOutputMarkupPlaceholderTag(true);
    final SkillSelectAutoCompleteFormComponent searchSkillInput = new SkillSelectAutoCompleteFormComponent(
            "searchSkillInput") {
        private static final long serialVersionUID = -7741009167252308262L;

        /**
         * @see org.projectforge.web.skill.SkillSelectAutoCompleteFormComponent#onModelChanged(org.apache.wicket.ajax.AjaxRequestTarget)
         */
        @Override
        protected void onModelSelected(final AjaxRequestTarget target, final SkillDO skillDo) {
            ajaxSkillSelectMode = false;
            target.appendJavaScript("hideAllTooltips();");
            SkillSelectPanel.this.setModelObject(skillDo);
            SkillSelectPanel.this.onModelSelected(target, skillDo);
        }

    };
    userselectContainer.add(searchSkillInput);
    // opener link
    final WebMarkupContainer searchSkillInputOpen = new WebMarkupContainer("searchSkillInputOpen");
    WicketUtils.addTooltip(searchSkillInputOpen, getString("quickselect"));
    searchSkillInputOpen.add(new AjaxEventBehavior("click") {
        private static final long serialVersionUID = -938527474172868488L;

        @Override
        protected void onEvent(final AjaxRequestTarget target) {
            ajaxSkillSelectMode = true;
            target.appendJavaScript("hideAllTooltips();");
            target.add(divContainer);
            target.add(userselectContainer);
            target.focusComponent(searchSkillInput);
        }
    });
    // close link
    final WebMarkupContainer searchSkillInputClose = new WebMarkupContainer("searchSkillInputClose");
    divContainer.add(searchSkillInputClose);
    searchSkillInputClose.add(new AjaxEventBehavior("click") {
        private static final long serialVersionUID = -4334830387094758960L;

        @Override
        protected void onEvent(final AjaxRequestTarget target) {
            ajaxSkillSelectMode = false;
            target.appendJavaScript("hideAllTooltips();");
            target.add(divContainer);
            target.add(userselectContainer);
        }
    });
    userselectContainer.add(searchSkillInputClose);
    divContainer.add(searchSkillInputOpen);
}

From source file:org.projectforge.web.task.TaskSelectPanel.java

License:Open Source License

/**
 * /*from   www.  ja  va  2  s. co  m*/
 */
private void initAutoCompletePanels() {
    userselectContainer = new WebMarkupContainer("userselectContainer") {
        private static final long serialVersionUID = -4871020567729661148L;

        /**
         * @see org.apache.wicket.Component#isVisible()
         */
        @Override
        public boolean isVisible() {
            // only show if we are in ajax select task mode
            return ajaxTaskSelectMode == true;
        }
    };
    add(userselectContainer);
    userselectContainer.setOutputMarkupId(true);
    userselectContainer.setOutputMarkupPlaceholderTag(true);
    final TaskSelectAutoCompleteFormComponent searchTaskInput = new TaskSelectAutoCompleteFormComponent(
            "searchTaskInput") {
        private static final long serialVersionUID = -7741009167252308262L;

        /**
         * @see org.projectforge.web.task.TaskSelectAutoCompleteFormComponent#onModelChanged(org.apache.wicket.ajax.AjaxRequestTarget)
         */
        @Override
        protected void onModelSelected(final AjaxRequestTarget target, final TaskDO taskDo) {
            ajaxTaskSelectMode = false;
            TaskSelectPanel.this.setModelObject(taskDo);
            TaskSelectPanel.this.onModelSelected(target, taskDo);
        }

    };
    userselectContainer.add(searchTaskInput);
    // opener link
    final WebMarkupContainer searchTaskInputOpen = new WebMarkupContainer("searchTaskInputOpen");
    if (WebConfiguration.isDevelopmentMode() == true) {
        WicketUtils.addTooltip(searchTaskInputOpen, getString("quickselect"));
        searchTaskInputOpen.add(new AjaxEventBehavior("click") {
            private static final long serialVersionUID = -938527474172868488L;

            @Override
            protected void onEvent(final AjaxRequestTarget target) {
                ajaxTaskSelectMode = true;
                target.add(divContainer);
                target.add(userselectContainer);
                target.focusComponent(searchTaskInput);
            }
        });
        // close link
        final WebMarkupContainer searchTaskInputClose = new WebMarkupContainer("searchTaskInputClose");
        divContainer.add(searchTaskInputClose);
        searchTaskInputClose.add(new AjaxEventBehavior("click") {
            private static final long serialVersionUID = -4334830387094758960L;

            @Override
            protected void onEvent(final AjaxRequestTarget target) {
                ajaxTaskSelectMode = false;
                target.add(divContainer);
                target.add(userselectContainer);
            }
        });
        userselectContainer.add(searchTaskInputClose);
    } else {
        searchTaskInputOpen.setVisible(false);
    }
    divContainer.add(searchTaskInputOpen);
}

From source file:org.qi4j.sample.dcicargo.sample_a.infrastructure.wicket.form.AbstractForm.java

License:Apache License

public void focusFirstError(final AjaxRequestTarget target) {
    visitFormComponents(new IVisitor<FormComponent<?>, Void>() {
        public void component(FormComponent<?> fc, IVisit<Void> visit) {
            if (isOtherComponent(fc) || fc.isValid()) {
                return;
            }//ww w .  ja  v a  2  s. c om

            target.focusComponent(fc);
            visit.stop();
        }
    });
}

From source file:org.wicketstuff.minis.behavior.KeepAliveBehavior.java

License:Apache License

@Override
protected void onTimer(final AjaxRequestTarget target) {
    // prevent wicket changing focus
    target.focusComponent(null);
}

From source file:org.wicketstuff.misc.behaviors.KeepAliveBehavior.java

License:Apache License

@Override
protected void onTimer(AjaxRequestTarget target) {
    // prevent wicket changing focus
    target.focusComponent(null);
}

From source file:org.wicketstuff.push.examples.pages.WicketAbstractChatPage.java

License:Apache License

public WicketAbstractChatPage(final PageParameters parameters, final String pushImplementationTitle,
        final IPushServiceRef<?> pushServiceRef) {
    super(parameters);

    add(new Label("push-implementation-title", pushImplementationTitle));

    final String chatRoomName = "#wicket-push";
    final ChatRoom chatRoom = getChatService().getChatRoom(chatRoomName);

    /*/*  w w w  .  j a v a2s . co  m*/
     * add form and fields
     */
    final Form<Object> formChat = new Form<Object>("chatForm", new CompoundPropertyModel<Object>(this));
    add(formChat);

    // chat history field
    final Label chatHistoryField = new Label("chatHistory", "");
    chatHistoryField.setEscapeModelStrings(false);
    chatHistoryField.setOutputMarkupId(true);
    formChat.add(chatHistoryField);

    // chat room name
    formChat.add(new Label("chatroomName", chatRoomName));

    // user field
    formChat.add(new TextField<String>("user"));

    // message field
    final TextField<String> messageField = new TextField<String>("message");
    messageField.setOutputMarkupId(true);
    formChat.add(messageField);

    // send button
    formChat.add(sendMessage = new AjaxButton("send", formChat) {
        private static final long serialVersionUID = 1L;

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

        @Override
        protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) {
            // send a message in the chat room
            getChatService().getChatRoom(chatRoomName).sendAsync(user, message);

            // clear message area add focus it
            target.appendJavaScript("document.getElementById('" + messageField.getMarkupId() + "').value =''");
            target.focusComponent(messageField);
        }
    });

    /*
     * install push node
     */
    final IPushNode<Message> pushNode = pushServiceRef.get().installNode(this,
            new AbstractPushEventHandler<Message>() {
                private static final long serialVersionUID = 1L;

                @Override
                public void onEvent(final AjaxRequestTarget target, final Message message,
                        final IPushNode<Message> node, final IPushEventContext<Message> ctx) {
                    appendHTML(target, chatHistoryField, _renderMessage(message));
                }
            });

    // disconnect button
    formChat.add(new AjaxButton("disconnect", formChat) {
        private static final long serialVersionUID = 1L;

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

        @Override
        protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) {
            pushServiceRef.get().uninstallNode(WicketAbstractChatPage.this, pushNode);
            target.add(setEnabled(false));
            target.add(sendMessage.setEnabled(false));
        }
    });

    /*
     * connect to chat room
     */
    chatRoom.addListener(new IChatListener() {
        @Override
        public void onMessage(final Message msg) {
            if (pushServiceRef.get().isConnected(pushNode))
                pushServiceRef.get().publish(pushNode, msg);
            else
                chatRoom.removeListener(this);
        }
    });

    /*
     * render chat history
     */
    final StringBuilder sb = new StringBuilder();
    for (final Message msg : chatRoom.getChatHistory())
        sb.append(_renderMessage(msg));
    chatHistoryField.setDefaultModelObject(sb);

    /*
     * install disconnect listener
     */
    pushServiceRef.get().addNodeDisconnectedListener(new IPushNodeDisconnectedListener() {
        @Override
        public void onDisconnect(final IPushNode<?> node) {
            if (node.equals(pushNode)) {
                chatRoom.sendAsync("<System>", "A USER JUST LEFT THE ROOM.");
                pushServiceRef.get().removeNodeDisconnectedListener(this);
            }
        }
    });

    add(new Behavior() {
        private static final long serialVersionUID = 1L;

        @Override
        public void renderHead(final Component component, final IHeaderResponse response) {
            super.renderHead(component, response);

            response.render(OnLoadHeaderItem
                    .forScript("var chatHistory = document.getElementById('" + chatHistoryField.getMarkupId()
                            + "'); chatHistory.scrollTop = chatHistory.scrollHeight;"));
        }
    });
}

From source file:sk.lazyman.gizmo.web.app.PageWork.java

License:Apache License

private <T extends FormInput> void initLayout() {
    Form form = new Form(ID_FORM);
    add(form);/*from  ww w .  j  av  a 2 s  .co  m*/

    HDropDownFormGroup<User> realizator = new HDropDownFormGroup<>(ID_REALIZATOR,
            new PropertyModel<User>(model, Work.F_REALIZATOR), createStringResource("AbstractTask.realizator"),
            LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true);
    realizator.setRenderer(GizmoUtils.createUserChoiceRenderer());
    realizator.setChoices(users);
    form.add(realizator);

    HFormGroup part = new HFormGroup<T, Part>(ID_PART, new PropertyModel<Part>(model, Work.F_PART),
            createStringResource("Work.part"), LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true) {

        @Override
        protected FormInput createInput(String componentId, IModel<Part> model, IModel<String> placeholder) {
            AutoCompleteInput formInput = new AutoCompleteInput(componentId, createPartModel(model), projects);
            FormComponent input = formInput.getFormComponent();
            input.add(AttributeAppender.replace("placeholder", placeholder));

            return formInput;
        }
    };
    form.add(part);
    FormComponent partText = part.getFormComponent();
    partText.add(new AjaxFormComponentUpdatingBehavior("blur") {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });

    HFormGroup date = new HDateFormGroup(ID_DATE, new PropertyModel<Date>(model, Work.F_DATE),
            createStringResource("AbstractTask.date"), LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true);
    form.add(date);

    final HFormGroup invoice = new HFormGroup(ID_INVOICE,
            new PropertyModel<Double>(model, Work.F_INVOICE_LENGTH), createStringResource("Work.invoiceLength"),
            LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true);
    invoice.setOutputMarkupId(true);
    invoice.getFormComponent().add(new RangeValidator<>(0.0, 2000.0));
    invoice.getFormComponent().setType(Double.class);
    invoice.getFormComponent().setOutputMarkupId(true);
    form.add(invoice);

    HFormGroup length = new HFormGroup(ID_LENGTH, new PropertyModel<Double>(model, Work.F_WORK_LENGTH),
            createStringResource("AbstractTask.workLength"), LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true);
    length.getFormComponent().add(new RangeValidator<>(0.0, 2000.0));
    length.getFormComponent().setType(Double.class);
    form.add(length);

    FormComponent workLength = length.getFormComponent();
    workLength.add(new AjaxFormComponentUpdatingBehavior("blur") {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            if (isProjectCommercial()) {
                Work work = model.getObject();
                work.setInvoiceLength(work.getWorkLength());

                target.focusComponent(invoice.getFormComponent());
                target.add(invoice);
            }
        }
    });

    HAreaFormGroup description = new HAreaFormGroup(ID_DESCRIPTION,
            new PropertyModel<String>(model, Work.F_DESCRIPTION),
            createStringResource("AbstractTask.description"), LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, true);
    description.setRows(5);
    form.add(description);

    HFormGroup trackId = new HFormGroup(ID_TRACK_ID, new PropertyModel<String>(model, Work.F_TRACK_ID),
            createStringResource("AbstractTask.trackId"), LABEL_SIZE, TEXT_SIZE, FEEDBACK_SIZE, false);
    form.add(trackId);

    initButtons(form);
}

From source file:wicket.in.action.common.AjaxEditableLabel.java

License:Apache License

protected void onEdit(AjaxRequestTarget target) {
    label.setVisible(false);//from w w w .  ja v  a  2 s  .  c  o  m
    editor.setVisible(true);
    target.addComponent(AjaxEditableLabel.this);
    target.appendJavascript("{ var el=wicketGet('" + editor.getMarkupId() + "');"
            + "   if (el.createTextRange) { " + "     var v = el.value; var r = el.createTextRange(); "
            + "     r.moveStart('character', v.length); r.select(); } }");
    target.focusComponent(editor);
}