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

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

Introduction

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

Prototype

public PropertyModel(final Object modelObject, final String expression) 

Source Link

Document

Construct with a wrapped (IModel) or unwrapped (non-IModel) object and a property expression that works on the given model.

Usage

From source file:almira.sample.web.AbstractBasePage.java

License:Apache License

/**
 * Constructor.//from   w ww .  j a  v  a 2 s . co  m
 */
AbstractBasePage() {
    super();

    // http://apache-wicket.1842946.n4.nabble.com/wicket-message-in-the-title-td1843627.html
    add(new Label("pageTitle", new ResourceModel("catapult.title")));
    add(new BookmarkablePageLink<Void>("homeLink", IndexPage.class));
    add(new BookmarkablePageLink<Void>("adminLink", AdminPage.class));

    add(new LocaleDropDownPanel("localeSelectPanel", Arrays.asList(new Locale("es"), new Locale("de"),
            new Locale("en"), new Locale("fr"), new Locale("it"))));

    add(new Label("version", ((MainApplication) getApplication()).getVersion()));

    add(new Label("session", new PropertyModel<String>(this, "session.id")));
    add(new SearchPanel("searchPanel"));
    add(new Label("footertext", footerTextService.getText()));

    // Page 87, Wicket in Action
    add(new Label("clock", new Model<String>() {
        @Override
        public String getObject() {
            final SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy | HH:mm:ss.mmm",
                    getSession().getLocale());

            return dateFormat.format(new Date());
        }
    }));
}

From source file:almira.sample.web.SearchForm.java

License:Apache License

/**
 * Instantiates a new search form.// ww  w .  j av  a 2s. co  m
 *
 * @param id the id
 */
public SearchForm(String id) {
    super(id);

    add(new TextField<String>("searchString", new PropertyModel<String>(this, "searchString")));
}

From source file:ar.com.nybble.futbol.view.TemplatePage.java

License:Apache License

/**
 * Constructor/*w  ww.j a  v  a  2  s  .c om*/
 */
public TemplatePage() {
    add(new Label("title", new PropertyModel<String>(this, "pageTitle")));
    tree = new LinkTree("tree", createTreeModel()) {
        @Override
        protected void onNodeLinkClicked(Object node, BaseTree tree, AjaxRequestTarget target) {
            super.onNodeLinkClicked(node, tree, target);
            ModelBean clase = (ModelBean) ((DefaultMutableTreeNode) node).getUserObject();
            if (clase.isLinkiable()) {
                setResponsePage(((Class) clase.getContent()));
            } else
                tree.getTreeState().expandNode(node);
        }
    };

    add(tree);
    tree.getTreeState().collapseAll();

    add(new AjaxLink("expandAll") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getTree().getTreeState().expandAll();
            getTree().updateTree(target);
        }
    });

    add(new AjaxLink("collapseAll") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            getTree().getTreeState().collapseAll();
            getTree().updateTree(target);
        }
    });

}

From source file:at.ac.tuwien.ifs.tita.ui.administration.project.IssueTrackerProjectForm.java

License:Apache License

/**
 * displays the Table of issueTrackerProjects.
 *///from  ww w. j  a v  a 2s .c  om
private void addComponents() {
    addOrReplace(new TextField<String>("tfProjectName",
            new PropertyModel<String>(issueTrackerProject, "projectName")));
    addOrReplace(new DropDownChoice<IssueTracker>("dropDownIssueTracker",
            new PropertyModel<IssueTracker>(issueTrackerProject, "issueTracker"), issueTracker));
    // addOrReplace(new CheckBox("checkBoxDeletedIssueTrackerProject", new
    // PropertyModel<Boolean>(issueTrackerProject,
    // "deleted")));
}

From source file:at.ac.tuwien.ifs.tita.ui.administration.project.ProjectForm.java

License:Apache License

/**
 * add all controls./*www.j a  va2  s .co  m*/
 */
private void addComponents() {

    log.info("Adding Controls to the Form");

    addOrReplace(new TextField<String>("tfDescription", new PropertyModel<String>(project, "description")));
    addOrReplace(new TextField<String>("tfName", new PropertyModel<String>(project, "name")));
    addOrReplace(new CheckBox("checkBoxDeleted", new PropertyModel<Boolean>(project, "deleted")));
    addOrReplace(new DropDownChoice<ProjectStatus>("dropDownProjectStatus",
            new PropertyModel<ProjectStatus>(project, "projectStatus"), projectStati));

    issueTrackerProjectTM = new TableModelIssueTrackerProject(this.issueTrackerProjects);
    issueTrackerProjectTable = new Table("issueTrackerProjectTable", issueTrackerProjectTM);

    DeleteRenderer deleteRenderer = new DeleteRenderer();
    issueTrackerProjectTable.setDefaultRenderer(ButtonDelete.class, deleteRenderer);
    issueTrackerProjectTable.setDefaultEditor(ButtonDelete.class, deleteRenderer);

    addOrReplace(issueTrackerProjectTable);

    // other components will not be displayed, they are not part of the
    // ProjectAdministration
}

From source file:at.ac.tuwien.ifs.tita.ui.administration.user.IssueTrackerLoginForm.java

License:Apache License

/**
 * Method for Adding the Fields to the Form.
 *///from  ww  w  . j  a  v a  2  s .co m
private void addComponents() {
    addOrReplace(new TextField<String>("tfIssueTrackerUserName",
            new PropertyModel<String>(issueTrackerLogin, "userName")));
    addOrReplace(new PasswordTextField("ptfIssueTrackerPassword",
            new PropertyModel<String>(issueTrackerLogin, "password")));

    addOrReplace(new DropDownChoice<IssueTracker>("dropDownIssueTracker",
            new PropertyModel<IssueTracker>(issueTrackerLogin, "issueTracker"), availableIssueTracker));
}

From source file:at.ac.tuwien.ifs.tita.ui.administration.user.UserForm.java

License:Apache License

/**
 * Method for Adding the Fields to the Form.
 *//* w w w .  j a  v  a2s.  c  om*/
private void addComponents() {

    addOrReplace(new TextField<String>("tfUserName", new PropertyModel<String>(user, "userName")));
    addOrReplace(new TextField<String>("tfFirstName", new PropertyModel<String>(user, "firstName")));
    addOrReplace(new TextField<String>("tfLastName", new PropertyModel<String>(user, "lastName")));
    addOrReplace(new TextField<String>("tfEmail", new PropertyModel<String>(user, "email")));

    ptfPassword = new PasswordTextField("ptfPassword", new PropertyModel<String>(user, "password"));
    ptfPassword.setRequired(false);
    addOrReplace(ptfPassword);

    ptfPasswordRepetition = new PasswordTextField("ptfPasswordRepetition",
            new PropertyModel<String>(this, "passwordRepetition"));
    ptfPasswordRepetition.setRequired(false);
    addOrReplace(ptfPasswordRepetition);

    addOrReplace(new CheckBox("checkBoxDeleted", new PropertyModel<Boolean>(user, "deleted")));

    dropDownrole = new DropDownChoice<Role>("dropDownRole", new PropertyModel<Role>(user, "role"), roles);
    if (user.getRole() != null) {
        dropDownrole.setConvertedInput(user.getRole());
    }
    dropDownrole.setRequired(false);
    addOrReplace(dropDownrole);

    userProjectTM = new TableModelUserProject(titaProjects);
    userProjectTM.reload();
    userProjectTable = new Table(C_USER_PROJECT_TABLE_NAME, userProjectTM);

    issueTrackerLoginTM = new TableModelIssueTrackerLoginWithoutButtons(titaIssueTracker);
    issueTrackerLoginTM.reload();
    issueTrackerLoginTable = new Table(C_ISSUE_TRACKER_TABLE_NAME, issueTrackerLoginTM);

    addOrReplace(issueTrackerLoginTable);
    addOrReplace(userProjectTable);
}

From source file:at.ac.tuwien.ifs.tita.ui.administration.user.UserProjectPanel.java

License:Apache License

/**
 * inits the tables for showing and adds a clickhandler.
 *//*  ww w .j  av a2s  .c  om*/
private void addButtons() {
    Form<String> form = new Form<String>("dummyForm");

    form.addOrReplace(new TextField<Double>("tfTargetHours", new PropertyModel<Double>(this, "targetHours")));
    form.addOrReplace(new Label("lbTargetHours", "Target Hours: "));

    form.addOrReplace(new AjaxButton("buttonDelete") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form1) {
            int selection = -1;
            try {
                selection = actualProjectsTable.getSelectedRows()[0];
            } catch (IndexOutOfBoundsException e) {
                log.debug("nothing selected");
            }
            log.debug("deleting Project from user " + user.getUserName() + ", Selected Row was: " + selection);
            if (selection > -1) {
                actualProjectsTM.removeUserProjectAtIndex(selection);
                actualProjectsTM.reload();

                target.addComponent(container);
            }
        }
    });

    form.addOrReplace(new AjaxButton("buttonAdd") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form1) {
            int selection = -1;
            try {
                selection = table.getSelectedRows()[0];
            } catch (IndexOutOfBoundsException e) {
                log.debug("nothing selected");
            }
            log.debug("adding Project to Table ");
            log.debug("Selected Row was: " + selection);
            if (selection > -1) {
                TiTAProject project = tm.getProjectAt(selection);
                if (!actualProjectsTM.containsProject(project)) {
                    TiTAUserProject up = new TiTAUserProject();
                    up.setProject(project);
                    // commented just out for finding
                    // if this bugfix causes unexpected behavior
                    // bug: hibernate saves User 2times because of cascading in userprojects
                    // up.setUser(user);
                    up.setTargetHours(targetHours);
                    actualProjectsTM.addEntity(up);
                    actualProjectsTM.reload();

                    target.addComponent(container);
                }
            }
        }
    });

    form.addOrReplace(new Button("buttonOk") {
        @Override
        public void onSubmit() {
            TiTAUser u = getUser();
            u.setTitaUserProjects(new HashSet<TiTAUserProject>(actualProjectsTM.getUserProjects()));
            parent.displayDetailsPage(u);
        }
    });

    container.addOrReplace(form);
}

From source file:at.ac.tuwien.ifs.tita.ui.controls.panel.AdministrationPanelEffort.java

License:Apache License

/**
 * Displays all effort textfields.//from   w ww.j  ava  2s.  c  o m
 */
private void displayTextFields() {

    teDescription = new ValidationTextField<String>("tedescription", new Model<String>(""));
    teDescription.add(StringValidator.maximumLength(IntegerConstants.FIFTY));
    teDescription.setOutputMarkupId(true);
    form.add(teDescription);

    teDate = new ValidationDateTextField("tedate", new PropertyModel<Date>(this, "date"),
            new StyleDateConverter("S-", true));

    teDate.add(new DatePicker());
    teDate.setOutputMarkupId(true);
    form.add(teDate);

    teTimeLength = new ValidationTextField<String>("tetimelength", new Model<String>(""));

    teTimeLength.setType(String.class);
    teTimeLength.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });
    teTimeLength.setOutputMarkupId(true);
    form.add(teTimeLength);

    teStartTime = new ValidationTextField<String>("testarttime", new Model<String>(""));
    teStartTime.setType(String.class);

    teStartTime.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });
    teStartTime.setOutputMarkupId(true);
    form.add(teStartTime);

    teEndTime = new ValidationTextField<String>("teendtime", new Model<String>(""));
    teEndTime.setType(String.class);
    teEndTime.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });
    teEndTime.setOutputMarkupId(true);
    form.add(teEndTime);

    teCostCenter = new ValidationTextField<String>("tecostcenter", new Model<String>(""));
    teCostCenter.setType(String.class);
    teCostCenter.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });
    teCostCenter.setOutputMarkupId(true);
    form.add(teCostCenter);
}

From source file:at.ac.tuwien.ifs.tita.ui.controls.panel.AdministrationPanelEffort.java

License:Apache License

/**
 * Display all FilterFields.//from ww  w .j  a v a 2s.  com
 */
private void displayFilterFields() {
    teFilterDescription = new TextField<String>("filterdescription", new Model<String>("")) {

    };
    teFilterDescription.add(StringValidator.maximumLength(IntegerConstants.FIFTY));
    teFilterDescription.setType(String.class);
    teFilterDescription.add(new OnChangeAjaxBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            filterList(target);
        }
    });
    form.add(teFilterDescription);

    teFilterDateFrom = new DateTextField("filterdatefrom", new PropertyModel<Date>(this, "dateFrom"),
            new StyleDateConverter("S-", true));
    teFilterDateFrom.add(new DatePicker());
    teFilterDateFrom.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            filterList(target);
        }
    });
    form.add(teFilterDateFrom);

    form.add(new AjaxButton("buttonCancelDateFrom", form) {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form1) {
            dateFrom = null;
            target.addComponent(teFilterDateFrom);
            filterList(target);
        }
    });

    form.add(new AjaxButton("buttonCancelDateUntil", form) {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form1) {
            dateUntil = null;
            target.addComponent(teFilterDateUntil);
            filterList(target);
        }
    });

    teFilterDateUntil = new DateTextField("filterdateuntil", new PropertyModel<Date>(this, "dateUntil"),
            new StyleDateConverter("S-", true));
    teFilterDateUntil.add(new DatePicker());
    teFilterDateUntil.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            filterList(target);
        }
    });
    form.add(teFilterDateUntil);

    teFilterCostCenter = new TextField<String>("filtercostcenter", new Model<String>("")) {

    };
    teFilterCostCenter.add(StringValidator.maximumLength(IntegerConstants.FIFTY));
    teFilterCostCenter.setType(String.class);
    teFilterCostCenter.add(new OnChangeAjaxBehavior() {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            filterList(target);
        }
    });
    form.add(teFilterCostCenter);
}