Example usage for org.apache.wicket.ajax.form OnChangeAjaxBehavior OnChangeAjaxBehavior

List of usage examples for org.apache.wicket.ajax.form OnChangeAjaxBehavior OnChangeAjaxBehavior

Introduction

In this page you can find the example usage for org.apache.wicket.ajax.form OnChangeAjaxBehavior OnChangeAjaxBehavior.

Prototype

public OnChangeAjaxBehavior() 

Source Link

Document

Constructor.

Usage

From source file:org.projectforge.plugins.teamcal.dialog.TeamCalFilterDialog.java

License:Open Source License

@SuppressWarnings("serial")
private void addDefaultCalenderSelection() {
    final FieldsetPanel fs = gridBuilder.newFieldset(getString("plugins.teamcal.defaultCalendar"));
    fs.addHelpIcon(getString("plugins.teamcal.defaultCalendar.tooltip"));
    final IOptionRenderer<Integer> renderer = new IOptionRenderer<Integer>() {

        @Override/*from   w  ww  .  j  av  a  2  s . c  o  m*/
        public String getDisplayValue(final Integer object) {
            if (TIMESHEET_CALENDAR_ID.equals(object)) {
                return timesheetsCalendar.getTitle();
            }
            return teamCalDao.getById(object).getTitle();
        }

        @Override
        public IModel<Integer> getModel(final Integer value) {
            return Model.of(value);
        }
    };

    // TEAMCAL SELECT
    defaultCalendarSelect = new Select<Integer>(fs.getSelectId(),
            new PropertyModel<Integer>(filter, "activeTemplateEntry.defaultCalendarId")) {

        /**
         * @see org.apache.wicket.Component#onBeforeRender()
         */
        @Override
        protected void onBeforeRender() {
            super.onBeforeRender();
            final TemplateEntry activeTemplateEntry = filter.getActiveTemplateEntry();
            final List<TeamCalDO> result = new ArrayList<TeamCalDO>();
            if (activeTemplateEntry != null) {
                for (final TeamCalDO cal : activeTemplateEntry.getCalendars()) {
                    if (teamEventRight.hasUpdateAccess(PFUserContext.getUser(), cal) == true) {
                        // User is allowed to insert events to this calendar:
                        result.add(cal);
                    }
                }
            }
            final List<Integer> filteredList = new ArrayList<Integer>();
            filteredList.add(TIMESHEET_CALENDAR_ID);
            if (result != null) {
                final Iterator<TeamCalDO> it = result.iterator();
                while (it.hasNext()) {
                    final TeamCalDO teamCal = it.next();
                    filteredList.add(teamCal.getId());
                }
            }
            final SelectOptions<Integer> options = new SelectOptions<Integer>(SelectPanel.OPTIONS_WICKET_ID,
                    filteredList, renderer);
            this.addOrReplace(options);
        }
    };
    defaultCalendarSelect.setOutputMarkupId(true);
    defaultCalendarSelect.add(new OnChangeAjaxBehavior() {

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {
            final Integer value = defaultCalendarSelect.getModelObject();
            filter.getActiveTemplateEntry().setDefaultCalendarId(value);
        }
    });
    fs.add(defaultCalendarSelect);
}

From source file:org.projectforge.web.calendar.CalendarPageSupport.java

License:Open Source License

@SuppressWarnings("serial")
private void addCheckBox(final DivPanel checkBoxDivPanel, final ICalendarFilter filter, final String property,
        final String labelKey, final String tooltipKey, final boolean autoSubmit) {
    final CheckBoxPanel checkBoxPanel = new CheckBoxPanel(checkBoxDivPanel.newChildId(),
            new PropertyModel<Boolean>(filter, property), checkBoxDivPanel.getString(labelKey), autoSubmit);
    if (autoSubmit == false) {
        checkBoxPanel.getCheckBox().add(new OnChangeAjaxBehavior() {
            @Override//from w  ww. j a  va  2 s.  c o  m
            protected void onUpdate(final AjaxRequestTarget target) {
                // Do nothing (the model object is updated).
            }
        });
    }
    if (tooltipKey != null) {
        checkBoxPanel.setTooltip(checkBoxDivPanel.getString(tooltipKey));
    }
    checkBoxDivPanel.add(checkBoxPanel);
}

From source file:org.projectforge.web.teamcal.dialog.TeamCalFilterDialog.java

License:Open Source License

@SuppressWarnings("serial")
private void addDefaultCalenderSelection() {
    final FieldsetPanel fs = gridBuilder.newFieldset(getString("plugins.teamcal.defaultCalendar"));
    fs.addHelpIcon(getString("plugins.teamcal.defaultCalendar.tooltip"));
    final IOptionRenderer<Integer> renderer = new IOptionRenderer<Integer>() {

        @Override/*from   ww  w.  jav  a  2s. c  o m*/
        public String getDisplayValue(final Integer object) {
            if (Const.TIMESHEET_CALENDAR_ID.equals(object)) {
                return timesheetsCalendar.getTitle();
            }
            return teamCalDao.getById(object).getTitle();
        }

        @Override
        public IModel<Integer> getModel(final Integer value) {
            return Model.of(value);
        }
    };

    // TEAMCAL SELECT
    defaultCalendarSelect = new Select<Integer>(fs.getSelectId(),
            new PropertyModel<Integer>(filter, "activeTemplateEntry.defaultCalendarId")) {

        /**
         * @see org.apache.wicket.Component#onBeforeRender()
         */
        @Override
        protected void onBeforeRender() {
            super.onBeforeRender();
            final TemplateEntry activeTemplateEntry = filter.getActiveTemplateEntry();
            final List<TeamCalDO> result = new ArrayList<TeamCalDO>();
            if (activeTemplateEntry != null) {
                for (final TeamCalDO cal : activeTemplateEntry.getCalendars()) {
                    if (teamEventRight.hasUpdateAccess(ThreadLocalUserContext.getUser(), cal) == true) {
                        // User is allowed to insert events to this calendar:
                        result.add(cal);
                    }
                }
            }
            final List<Integer> filteredList = new ArrayList<Integer>();
            filteredList.add(Const.TIMESHEET_CALENDAR_ID);
            if (result != null) {
                final Iterator<TeamCalDO> it = result.iterator();
                while (it.hasNext()) {
                    final TeamCalDO teamCal = it.next();
                    filteredList.add(teamCal.getId());
                }
            }
            final SelectOptions<Integer> options = new SelectOptions<Integer>(SelectPanel.OPTIONS_WICKET_ID,
                    filteredList, renderer);
            this.addOrReplace(options);
        }
    };
    defaultCalendarSelect.setOutputMarkupId(true);
    defaultCalendarSelect.add(new OnChangeAjaxBehavior() {

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {
            final Integer value = defaultCalendarSelect.getModelObject();
            filter.getActiveTemplateEntry().setDefaultCalendarId(value);
        }
    });
    fs.add(defaultCalendarSelect);
}

From source file:org.projectforge.web.teamcal.dialog.TeamCalICSExportDialog.java

License:Open Source License

/**
 * @see org.projectforge.web.calendar.AbstractICSExportDialog#addFormFields()
 */// ww  w.  j  ava 2s  .c  o  m
@SuppressWarnings("serial")
@Override
protected void addFormFields() {
    if (addReminders(ThreadLocalUserContext.getUser())) {
        exportReminders = true;
        final FieldsetPanel fs = gridBuilder.newFieldset(getString("label.options")).suppressLabelForWarning();
        final DivPanel checkBoxesPanel = new DivPanel(fs.newChildId(), DivType.BTN_GROUP);
        fs.add(checkBoxesPanel);
        final CheckBox checkBox = new CheckBox(CheckBoxPanel.WICKET_ID,
                new PropertyModel<Boolean>(this, "exportReminders"));
        checkBox.add(new OnChangeAjaxBehavior() {
            @Override
            protected void onUpdate(AjaxRequestTarget target) {
                target.add(checkBox);
                target.add(urlTextArea);
            }
        });
        checkBoxesPanel.add(new CheckBoxButton(checkBoxesPanel.newChildId(), checkBox,
                getString("plugins.teamcal.export.reminder.checkbox"))
                        .setTooltip(getString("plugins.teamcal.export.reminder.checkbox.tooltip")));
    }
}

From source file:org.wicket_sapporo.workshop01.page.ajax.event.EventSamplePage.java

License:Apache License

/**
 * Construct./* w w w  .  j  a  v  a2  s  . co  m*/
 */
public EventSamplePage() {

    Form<Void> form = new Form<Void>("form");
    add(form);

    IModel<String> textAreaModel = Model.of("");

    form.add(new TextArea<String>("textarea", textAreaModel) {
        private static final long serialVersionUID = -8724815930687640141L;

        @Override
        protected void onInitialize() {
            super.onInitialize();

            // ? onChange ????????
            add(new OnChangeAjaxBehavior() {
                private static final long serialVersionUID = -2824058881808964021L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    // Wicket???????? RefreshPayload ?
                    send(getPage(), Broadcast.BREADTH, new RefreshPayload(target));
                }
            });

            // ? onBlur ????????
            add(new AjaxFormComponentUpdatingBehavior("onBlur") {
                private static final long serialVersionUID = -2986152039086854324L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    // Wicket???????? SubmitPayload ?
                    send(getPage(), Broadcast.BREADTH, new SubmitPayload(target));
                }
            });

        }
    });

    add(new Label("count", textAreaModel) {
        private static final long serialVersionUID = -6522874730737908773L;

        @Override
        protected void onInitialize() {
            super.onInitialize();
            setOutputMarkupId(true);
        }

        @Override
        public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
            // ??textAreaModel???????textAreaModel?????
            replaceComponentTagBody(markupStream, openTag,
                    Integer.toString(getDefaultModelObjectAsString().length()));
        }

        @Override
        public void onEvent(IEvent<?> event) {
            super.onEvent(event);
            // Wicket???RefreshPayload??????????????.
            if (event.getPayload() instanceof RefreshPayload) {
                ((RefreshPayload) event.getPayload()).getTarget().add(this);
            }
        }
    });

    IModel<Date> dateModel = new AbstractReadOnlyModel<Date>() {
        private static final long serialVersionUID = 2850479475884196200L;

        @Override
        public Date getObject() {
            return new Date();
        }
    };

    add(new DateLabel("date", dateModel, new PatternDateConverter("yyyy/MM/dd HH:mm:ss", true)) {
        private static final long serialVersionUID = -6269277593299745233L;

        @Override
        protected void onInitialize() {
            super.onInitialize();
            setOutputMarkupId(true);
        }

        @Override
        public void onEvent(IEvent<?> event) {
            super.onEvent(event);
            // Wicket???SubmitPayload??????????????.
            if (event.getPayload() instanceof SubmitPayload) {
                ((SubmitPayload) event.getPayload()).getTarget().add(this);
            }
        }
    });

}

From source file:org.wicket_sapporo.workshop01.page.ajax.event.NoEventSamplePage.java

License:Apache License

/**
 * Construct./* w w  w. j a  va 2  s.  c o m*/
 */
public NoEventSamplePage() {

    Form<Void> form = new Form<Void>("form");
    add(form);

    IModel<String> textAreaModel = Model.of("");

    final Label countLabel = new Label("count", textAreaModel) {
        private static final long serialVersionUID = -6522874730737908773L;

        @Override
        protected void onInitialize() {
            super.onInitialize();
            setOutputMarkupId(true);
        }

        @Override
        public void onComponentTagBody(MarkupStream markupStream, ComponentTag openTag) {
            // ??textAreaModel???????textAreaModel?????
            replaceComponentTagBody(markupStream, openTag,
                    Integer.toString(getDefaultModelObjectAsString().length()));
        }

    };
    add(countLabel);

    IModel<Date> dateModel = new AbstractReadOnlyModel<Date>() {
        private static final long serialVersionUID = 6131028671074353551L;

        @Override
        public Date getObject() {
            return new Date();
        }
    };

    final Label dateLabel = new DateLabel("date", dateModel,
            new PatternDateConverter("yyyy/MM/dd HH:mm:ss", true)) {
        private static final long serialVersionUID = 3105270954232202288L;

        @Override
        protected void onInitialize() {
            super.onInitialize();
            setOutputMarkupId(true);
        }

    };
    add(dateLabel);

    form.add(new TextArea<String>("textarea", textAreaModel) {
        private static final long serialVersionUID = -4029463555425282985L;

        @Override
        protected void onInitialize() {
            super.onInitialize();

            // ? onChange ????????
            add(new OnChangeAjaxBehavior() {
                private static final long serialVersionUID = 7052329505898708783L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    // countLabel ???
                    target.add(countLabel);
                }
            });

            // ? onBlur ????????
            add(new AjaxFormComponentUpdatingBehavior("onBlur") {
                private static final long serialVersionUID = -2982215895565833469L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    // dataLabel ???
                    target.add(dateLabel);
                }
            });
        }

    });

}

From source file:ro.fortsoft.wicket.pivot.web.AggregatorPanel.java

License:Apache License

public AggregatorPanel(String id, IModel<PivotField> model) {
    super(id, model);

    okPressed = false;// www  .j  ava  2  s . c o  m

    aggregator = getModelObject().getAggregator();

    List<Aggregator> aggregators = new ArrayList<Aggregator>();
    aggregators.add(Aggregator.get(Aggregator.SUM));
    aggregators.add(Aggregator.get(Aggregator.AVG));
    aggregators.add(Aggregator.get(Aggregator.MIN));
    aggregators.add(Aggregator.get(Aggregator.MAX));
    aggregators.add(Aggregator.get(Aggregator.COUNT));
    final DropDownChoice<Aggregator> aggregatorDownChoice = new DropDownChoice<Aggregator>("aggregator",
            new PropertyModel<Aggregator>(this, "aggregator"), aggregators,
            new ChoiceRenderer<Aggregator>("function") {

                private static final long serialVersionUID = 1L;

                @Override
                public Object getDisplayValue(Aggregator object) {
                    return ((String) super.getDisplayValue(object)).toUpperCase();
                }

            });
    aggregatorDownChoice.add(new OnChangeAjaxBehavior() {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }

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

    add(new AjaxLink<Void>("ok") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            okPressed = true;
            ModalWindow.closeCurrent(target);

        }

    });
}

From source file:wicketdnd.examples.Example.java

License:Apache License

public Example(String id) {
    super(id);/*from  www.  ja va  2s .c  o  m*/

    content = new WebMarkupContainer("content");
    content.setOutputMarkupId(true);
    add(content);

    operations = new ArrayList<Operation>();
    operations.addAll(EnumSet.allOf(Operation.class));

    dragOperations.addAll(operations);
    dropOperations.addAll(operations);

    add(new Label("title", new AbstractReadOnlyModel<String>() {
        @Override
        public String getObject() {
            String name = Example.this.getClass().getSimpleName();

            return name.substring(0, name.indexOf("Example"));
        }
    }));

    final WebMarkupContainer controls = new WebMarkupContainer("controls",
            new CompoundPropertyModel<Example>(this));
    add(controls);

    controls.add(new CheckBoxMultipleChoice<Operation>("dragOperations", operations).setSuffix("")
            .add(new AjaxFormChoiceComponentUpdatingBehavior() {
                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.add(content);
                }
            }));

    controls.add(new CheckBoxMultipleChoice<Operation>("dropOperations", operations).setSuffix("")
            .add(new AjaxFormChoiceComponentUpdatingBehavior() {
                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.add(content);
                }
            }));

    controls.add(new TextField<String[]>("types", String[].class) {
        @Override
        @SuppressWarnings("unchecked")
        public <C> IConverter<C> getConverter(Class<C> type) {
            return (IConverter<C>) new StringArrayConverter();
        }
    }.setConvertEmptyInputStringToNull(false).add(new OnChangeAjaxBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            target.add(content);
        }
    }));
}

From source file:wicketdnd.examples.ListsExample.java

License:Apache License

private Component newList(String id) {
    final FooList foos = new FooList();

    final WebMarkupContainer list = new WebMarkupContainer(id);
    final ListView<Foo> items = new ListView<Foo>("items", foos) {
        @Override//from w w  w  .  j a  v a  2s.  c  o  m
        protected ListItem<Foo> newItem(int index, IModel<Foo> model) {
            ListItem<Foo> item = super.newItem(index, model);
            item.setOutputMarkupId(true);
            return item;
        }

        @Override
        protected void populateItem(ListItem<Foo> item) {
            item.add(new TextField<String>("name", new PropertyModel<String>(item.getModel(), "name"))
                    .add(new OnChangeAjaxBehavior() {
                        @Override
                        protected void onUpdate(AjaxRequestTarget target) {
                        }
                    }));
        }
    };
    list.add(items);
    list.add(new DragSource() {
        @Override
        public Set<Operation> getOperations() {
            return dragOperations();
        }

        @Override
        public String[] getTypes() {
            return types();
        }

        @Override
        public void onAfterDrop(AjaxRequestTarget target, Transfer transfer) {
            if (transfer.getOperation() == Operation.MOVE) {
                foos.remove(transfer.getData());

                target.add(list);
            }
        }
    }.drag("div.item").initiate("span.initiate"));
    DropTarget dropTarget = new DropTarget() {
        @Override
        public Set<Operation> getOperations() {
            return dropOperations();
        }

        @Override
        public String[] getTypes() {
            return types();
        }

        @Override
        public void onDrop(AjaxRequestTarget target, Transfer transfer, Location location) {
            if (location.getComponent() == list) {
                foos.add(operate(transfer));
            } else {
                Foo foo = location.getModelObject();
                switch (location.getAnchor()) {
                case TOP:
                case LEFT:
                    foos.addBefore(operate(transfer), foo);
                    break;
                case BOTTOM:
                case RIGHT:
                    foos.addAfter(operate(transfer), foo);
                    break;
                default:
                    transfer.reject();
                }

                target.add(list);
            }
        }
    };
    if ("vertical".equals(id)) {
        dropTarget.dropTopAndBottom("div.item");
    } else {
        dropTarget.dropLeftAndRight("div.item");
    }
    list.add(dropTarget);

    return list;
}