Example usage for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel

List of usage examples for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel

Introduction

In this page you can find the example usage for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel.

Prototype

AbstractReadOnlyModel

Source Link

Usage

From source file:net.dontdrinkandroot.wicket.bootstrap.component.pagination.PageLinkItem.java

License:Apache License

@Override
protected IModel<String> createLabel() {

    return new AbstractReadOnlyModel<String>() {

        @Override/*  w  ww  . j  a v a  2s . c o  m*/
        public String getObject() {

            return Long.toString(PageLinkItem.this.page + 1);
        }
    };
}

From source file:net.dontdrinkandroot.wicket.bootstrap.component.progress.ProgressBar.java

License:Apache License

@Override
protected void onInitialize() {

    super.onInitialize();

    this.add(new CssClassAppender(BootstrapCssClass.PROGRESS));

    /* Active *///from  ww  w. ja v  a2s  .  c o  m
    this.add(new CssClassAppender(new AbstractReadOnlyModel<BootstrapCssClass>() {

        @Override
        public BootstrapCssClass getObject() {

            if (ProgressBar.this.isActive()) {
                return BootstrapCssClass.ACTIVE;
            }

            return null;
        }
    }));

    /* Striped */
    this.add(new CssClassAppender(new AbstractReadOnlyModel<BootstrapCssClass>() {

        @Override
        public BootstrapCssClass getObject() {

            if (ProgressBar.this.isStriped()) {
                return BootstrapCssClass.PROGRESS_STRIPED;
            }

            return null;
        }
    }));

    this.bar = new WebMarkupContainer("bar");

    this.bar.add(new AttributeModifier("aria-valuenow", this.getModel()));

    this.bar.add(new AttributeModifier("style", new AbstractReadOnlyModel<String>() {

        @Override
        public String getObject() {

            return String.format("width: %d%%;", ProgressBar.this.getModelObject());
        }
    }));

    /* Style */
    this.bar.add(new CssClassAppender(new AbstractReadOnlyModel<ProgressBarClass>() {

        @Override
        public ProgressBarClass getObject() {

            return ProgressBar.this.barStyle;
        }
    }));

    this.bar.setOutputMarkupId(true);
    this.add(this.bar);
}

From source file:net.ftlines.wicket.fullcalendar.callback.DateRangeSelectedCallback.java

License:Apache License

@Override
public IModel<String> getHandlerScript() {
    return new AbstractReadOnlyModel<String>() {
        private static final long serialVersionUID = 4021933370930781184L;

        /**/*ww w  .ja  v a2 s. c o  m*/
         * @see org.apache.wicket.model.AbstractReadOnlyModel#getObject()
         */
        @Override
        public String getObject() {
            return "function(startDate, endDate, allDay) { " + getCallbackScript() + "}";
        }
    };
}

From source file:net.ftlines.wicket.fullcalendar.callback.EventClickedCallback.java

License:Apache License

@SuppressWarnings("serial")
@Override//from  w  w w .  j  av  a2s . co m
public IModel<String> getHandlerScript() {
    return new AbstractReadOnlyModel<String>() {
        /**
         * @see org.apache.wicket.model.AbstractReadOnlyModel#getObject()
         */
        @Override
        public String getObject() {
            return "function(event) { " + getCallbackScript() + "}";
        }
    };
}

From source file:net.ftlines.wicket.fullcalendar.callback.EventDroppedCallback.java

License:Apache License

@SuppressWarnings("serial")
@Override//from w  w w . ja  va2  s.c o  m
public IModel<String> getHandlerScript() {
    return new AbstractReadOnlyModel<String>() {
        /**
         * @see org.apache.wicket.model.AbstractReadOnlyModel#getObject()
         */
        @Override
        public String getObject() {
            return "function(event, dayDelta, minuteDelta, allDay, revertFunc, originalEvent) { "
                    + getCallbackScript() + "}";
        }
    };
}

From source file:net.ftlines.wicket.fullcalendar.callback.EventResizedCallback.java

License:Apache License

@SuppressWarnings("serial")
@Override// ww  w  .j  a va  2  s  .c o  m
public IModel<String> getHandlerScript() {
    return new AbstractReadOnlyModel<String>() {
        /**
         * @see org.apache.wicket.model.AbstractReadOnlyModel#getObject()
         */
        @Override
        public String getObject() {
            return "function(event, dayDelta, minuteDelta,  revertFunc) { " + getCallbackScript() + "}";
        }
    };
}

From source file:net.ftlines.wicket.fullcalendar.callback.ViewDisplayCallback.java

License:Apache License

@SuppressWarnings("serial")
@Override//from w w w .  ja  va2 s .com
public IModel<String> getHandlerScript() {
    return new AbstractReadOnlyModel<String>() {
        /**
         * @see org.apache.wicket.model.AbstractReadOnlyModel#getObject()
         */
        @Override
        public String getObject() {
            return String.format("function(v) {%s;}", getCallbackScript());
        }
    };
}

From source file:net.ftlines.wicket.fullcalendar.FullCalendar.java

License:Apache License

@SuppressWarnings("serial")
private void setupCallbacks() {

    if (getEvents != null)
        return;//from   www .  j  av  a 2s.  c o  m

    getEvents = new GetEventsCallback();
    add(getEvents);
    for (final EventSource source : config.getEventSources()) {
        source.setEventsModel(new AbstractReadOnlyModel<String>() {
            @Override
            public String getObject() {
                return EVENTS.asString(new MicroMap<String, String>("url", getEvents.getUrl(source)));
            }
        });
    }

    if (Strings.isEmpty(config.getEventClick()) == true) {
        add(eventClicked = new EventClickedCallback() {
            @Override
            protected void onClicked(final ClickedEvent event, final CalendarResponse response) {
                onEventClicked(event, response);
            }
        });
        config.setEventClickModel(eventClicked.getHandlerScript());
    }

    if (Strings.isEmpty(config.getSelect()) == true) {
        add(dateRangeSelected = new DateRangeSelectedCallback(config.isIgnoreTimezone()) {
            @Override
            protected void onSelect(final SelectedRange range, final CalendarResponse response) {
                FullCalendar.this.onDateRangeSelected(range, response);
            }
        });
        config.setSelectModel(dateRangeSelected.getHandlerScript());
    }

    if (Strings.isEmpty(config.getEventDrop()) == true) {
        add(eventDropped = new EventDroppedCallback(config) {

            @Override
            protected boolean onEventDropped(final DroppedEvent event, final CalendarResponse response) {
                return FullCalendar.this.onEventDropped(event, response);
            }
        });
        config.setEventDropModel(eventDropped.getHandlerScript());
    }

    if (Strings.isEmpty(config.getEventResize()) == true) {
        add(eventResized = new EventResizedCallback() {

            @Override
            protected boolean onEventResized(final ResizedEvent event, final CalendarResponse response) {
                return FullCalendar.this.onEventResized(event, response);
            }

        });

        config.setEventResizeModel(eventResized.getHandlerScript());
    }

    if (Strings.isEmpty(config.getViewDisplay()) == true) {
        add(viewDisplay = new ViewDisplayCallback() {
            @Override
            protected void onViewDisplayed(final View view, final CalendarResponse response) {
                FullCalendar.this.onViewDisplayed(view, response);
            }
        });
        config.setViewDisplayModel(viewDisplay.getHandlerScript());
    }

    getPage().dirty();
}

From source file:net.java.ao.blog.pages.Index.java

License:Apache License

public Index() throws SQLException {
    EntityManager manager = ((BlogApplication) getApplication()).getEntityManager();
    blog = manager.find(Blog.class)[0];
    add(new Label("pageTitle", new PropertyModel(blog, "name")));
    add(new Label("pageHeader", new PropertyModel(blog, "name")));

    add(new Link("addPostLink") {

        @Override/*w  w w . j a  v  a  2s. com*/
        public void onClick() {
            setResponsePage(new EditPost(Index.this, blog));
        }
    });

    RefreshingView posts = new RefreshingView("posts") {

        @Override
        protected Iterator getItemModels() {

            Query query = Query.select().where("blogID = ?", blog).order("published DESC");
            EntityIterator<Post> it = EntityIterator.forQuery(BlogApplication.get().getEntityManager(),
                    Post.class, query);
            return new DefaultModelIteratorAdaptor(it);
        }

        @Override
        protected void populateItem(Item item) {
            final Post post = (Post) item.getModelObject();

            BookmarkablePageLink permalink = new BookmarkablePageLink("permalink", ViewPost.class,
                    new PageParameters("item=" + post.getID()));
            item.add(permalink);

            Label postTitle = new Label("postTitle", new PropertyModel(post, "title"));
            permalink.add(postTitle);

            item.add(new Link("editPostLink") {
                @Override
                public void onClick() {
                    setResponsePage(new EditPost(Index.this, blog, post));
                }
            });
            item.add(new Link("deletePostLink") {
                @Override
                public void onClick() {
                    setResponsePage(Index.class);

                    EntityManager manager = ((BlogApplication) getApplication()).getEntityManager();
                    try {
                        for (Comment comment : post.getComments()) {
                            manager.delete(comment);
                        }
                        manager.delete(post);
                    } catch (SQLException e) {
                        error(e.getMessage());
                    }
                }
            });

            item.add(new Label("postDate", new AbstractReadOnlyModel() {
                @Override
                public Object getObject() {
                    DateFormat format = DateFormat.getDateTimeInstance();
                    Calendar published = post.getPublished();
                    return (published != null) ? format.format(published.getTime()) : null;
                }
            }));

            item.add(new MultiLineLabel("postText", new PropertyModel(post, "text")));
        }
    };
    add(posts);
    add(new FeedbackPanel("feedback"));
}

From source file:net.lunikon.rethul.web.components.StringEditPanel.java

License:Open Source License

private void build() {
    stringModel = createStringModel();/*from   ww w .jav  a2  s  .c  o m*/

    // form
    form = new Form<LocalizedString>("form", new CompoundPropertyModel<LocalizedString>(stringModel)) {
        @Override
        protected void beforeUpdateFormComponentModels() {
            if (getModelObject() == null)
                setModelObject(new LocalizedString());
        }

        @Override
        protected void onSubmit() {
            LocalizedString string = getModelObject();
            updateLocalizedString(string);
        }
    };
    add(form);

    // master information
    WebMarkupContainer master = new WebMarkupContainer("master");
    master.setDefaultModel(new CompoundPropertyModel<LocalizedString>(getModel()));
    form.add(master);

    IModel<String> statusModel = new AbstractReadOnlyModel<String>() {
        @Override
        public String getObject() {
            LocalizedString ls = stringModel.getObject();
            if (ls == null)
                return "missing";
            return ls.isPending() ? "pending" : "done";
        }
    };
    master.add(new Label("key") //
            .add(new AttributeAppender("class", true, statusModel, " ")));
    master.add(new MultiLineLabel("translation"));

    // text area
    TextArea<String> translation = new TextArea<String>("translation");
    translation.setType(String.class);
    translation.setRequired(true);
    form.add(translation);

    // actions
    form.add(new Button("save") {
        @Override
        public void onSubmit() {
            // in all cases, remove pending-mark
            form.getModelObject().setPending(false);

            onSave();
        }
    });
    form.add(new Button("savePending") {
        @Override
        public void onSubmit() {
            // mark string as pending
            form.getModelObject().setPending(true);

            onSaveAsPending();
        }
    });

    // when using the master text, regular form processing has to be
    // by-passed
    form.add(new Button("useMaster") {
        @Override
        public void onSubmit() {
            LocalizedString master = StringEditPanel.this.getModelObject();
            if (master == null)
                return;

            // create new object if doesn't exist
            LocalizedString string = form.getModelObject();
            if (string == null) {
                string = new LocalizedString();
                form.setModelObject(string);
            }

            // use text from master to update localized string
            String translation = master.getTranslation();
            string.setTranslation(translation);
            string.setPending(false);

            // clear form
            clear();

            onUseMaster();

            // update string
            updateLocalizedString(string);
        }
    }.setDefaultFormProcessing(false));
}