Example usage for org.apache.wicket.markup.html.list ListView ListView

List of usage examples for org.apache.wicket.markup.html.list ListView ListView

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.list ListView ListView.

Prototype

public ListView(final String id, final List<T> list) 

Source Link

Usage

From source file:eu.esdihumboldt.hale.server.webtransform.war.pages.StatusPage.java

License:Open Source License

@Override
protected void addControls(boolean loggedIn) {
    super.addControls(loggedIn);

    final String workspaceId = getPageParameters().get(PARAMETER_WORKSPACE).toOptionalString();
    if (workspaceId == null || workspaceId.isEmpty()) {
        throw new AbortWithHttpErrorCodeException(HttpServletResponse.SC_NOT_FOUND,
                "Workspace ID not specified.");
    }//from   w w w. j  a  v a 2 s . c o  m

    try {
        workspaces.getWorkspaceFolder(workspaceId);
    } catch (FileNotFoundException e) {
        throw new AbortWithHttpErrorCodeException(HttpServletResponse.SC_NOT_FOUND,
                "Workspace does not exist.");
    }

    final IModel<TransformationWorkspace> workspace = new LoadableDetachableModel<TransformationWorkspace>() {

        private static final long serialVersionUID = 2600444242247550094L;

        @Override
        protected TransformationWorkspace load() {
            return new TransformationWorkspace(workspaceId);
        }
    };

    // job panel
    final Serializable family = AbstractTransformationJob.createFamily(workspaceId);
    final JobPanel jobs = new JobPanel("jobs", family, true);
    add(jobs);

    // status
    final Label status = new Label("status", new LoadableDetachableModel<String>() {

        private static final long serialVersionUID = -4351763182104835300L;

        @Override
        protected String load() {
            if (workspace.getObject().isTransformationFinished()) {
                if (workspace.getObject().isTransformationSuccessful()) {
                    return "Transformation completed.";
                } else {
                    return "Transformation failed.";
                }
            } else {
                if (Job.getJobManager().find(family).length > 0) {
                    return "Transformation is running:";
                } else {
                    return "No transformation running.";
                }
            }
        }
    });
    status.setOutputMarkupId(true);
    add(status);

    // result
    final WebMarkupContainer result = new WebMarkupContainer("result");
    result.setOutputMarkupId(true);
    add(result);

    final WebMarkupContainer update = new WebMarkupContainer("update") {

        private static final long serialVersionUID = -2591480922683644827L;

        @Override
        public boolean isVisible() {
            return workspace.getObject().isTransformationFinished();
        }

    };
    result.add(update);

    // result : report
    File reportFile = workspace.getObject().getReportFile();
    DownloadLink report = new DownloadLink("log", reportFile, reportFile.getName());
    update.add(report);

    // result : file list
    IModel<? extends List<File>> resultFilesModel = new LoadableDetachableModel<List<File>>() {

        private static final long serialVersionUID = -7971872898614031331L;

        @Override
        protected List<File> load() {
            return Arrays.asList(workspace.getObject().getTargetFolder().listFiles());
        }

    };
    final ListView<File> fileList = new ListView<File>("file", resultFilesModel) {

        private static final long serialVersionUID = -8045643864251639540L;

        @Override
        protected void populateItem(ListItem<File> item) {
            // download link
            DownloadLink download = new DownloadLink("download", item.getModelObject(),
                    item.getModelObject().getName());
            item.add(download);

            // file name
            download.add(new Label("name", item.getModelObject().getName()));
        }

    };
    update.add(fileList);

    // leaseEnd
    String leaseEnd;
    try {
        leaseEnd = workspaces.getLeaseEnd(workspaceId).toString(DateTimeFormat.mediumDateTime());
    } catch (IOException e) {
        leaseEnd = "unknown";
    }
    add(new Label("leaseEnd", leaseEnd));

    boolean transformationFinished = workspace.getObject().isTransformationFinished();
    if (transformationFinished) {
        // disable job timer
        jobs.getTimer().stopOnNextUpdate();
    } else {
        // timer
        add(new AbstractAjaxTimerBehavior(Duration.milliseconds(1500)) {

            private static final long serialVersionUID = -3726349470723024150L;

            @Override
            protected void onTimer(AjaxRequestTarget target) {
                if (workspace.getObject().isTransformationFinished()) {
                    // update status and result
                    target.add(status);
                    target.add(result);

                    // stop timers
                    stop(target);
                    jobs.getTimer().stopOnNextUpdate();
                }
            }
        });
    }
}

From source file:eu.esdihumboldt.hale.server.webtransform.war.pages.UploadAndTransForm.java

License:Open Source License

/**
 * Create a form for uploading and transforming data.
 * /*from   w  w  w.  j  a  va2  s.  c  o m*/
 * @param id the component ID
 * @param projectId the project ID
 */
public UploadAndTransForm(String id, String projectId) {
    super(id);
    this.projectId = projectId;

    // multi-part always needed for uploads
    setMultiPart(true);

    add(new FeedbackPanel("feedback"));

    // Add file input field
    add(file = new FileUploadField("upload"));
    file.add(new IValidator<List<FileUpload>>() {

        private static final long serialVersionUID = -5668788086384105101L;

        @Override
        public void validate(IValidatable<List<FileUpload>> validatable) {
            if (validatable.getValue().isEmpty()) {
                validatable.error(new ValidationError("No source files specified."));
            }
        }

    });

    // target selection
    Select<IOConfiguration> selectTarget = new Select<IOConfiguration>("target",
            new PropertyModel<IOConfiguration>(this, "target"));
    add(selectTarget);

    TransformationEnvironment env = environmentService.getEnvironment(projectId);

    // determine presets
    Collection<NamedIOConfiguration> presetList = new ArrayList<>();
    for (Entry<String, ? extends IOConfiguration> entry : env.getExportPresets().entrySet()) {
        presetList.add(new NamedIOConfiguration(entry.getKey(), entry.getValue()));
    }
    SelectOptions<NamedIOConfiguration> presets = new SelectOptions<NamedIOConfiguration>("presets", presetList,
            RENDERER);
    selectTarget.add(presets);

    // determine valid exporters
    Collection<NamedIOConfiguration> templateList = new ArrayList<>();
    for (Entry<String, ? extends IOConfiguration> entry : env.getExportTemplates().entrySet()) {
        presetList.add(new NamedIOConfiguration(entry.getKey(), entry.getValue()));
    }
    SelectOptions<NamedIOConfiguration> exporters = new SelectOptions<NamedIOConfiguration>("exporters",
            templateList, RENDERER);
    selectTarget.add(exporters);

    // initial selection
    if (!presetList.isEmpty()) {
        setTarget(presetList.iterator().next().getConfig());
    } else if (!templateList.isEmpty()) {
        setTarget(templateList.iterator().next().getConfig());
    }

    // panel for I/O configuration
    final WebMarkupContainer config = new WebMarkupContainer("config");
    config.setOutputMarkupId(true);
    add(config);

    IModel<List<String>> parameterModel = new LoadableDetachableModel<List<String>>() {

        private static final long serialVersionUID = 1018038661733512580L;

        @Override
        protected List<String> load() {
            Set<String> properties = new LinkedHashSet<String>();

            if (target != null && target.getProviderId() != null) {
                // must have
                properties.add(IOProvider.PARAM_CONTENT_TYPE);

                // what is supported

                IOProvider p = HeadlessIO.loadProvider(target);
                properties.addAll(p.getSupportedParameters());

                // not allowed
                properties.remove(ExportProvider.PARAM_TARGET);
            }

            return new ArrayList<String>(properties);
        }
    };

    ListView<String> parameterView = new ListView<String>("param", parameterModel) {

        private static final long serialVersionUID = -7838477347365823022L;

        @Override
        protected void populateItem(ListItem<String> item) {
            boolean isContentType = IOProvider.PARAM_CONTENT_TYPE.equals(item.getModelObject());

            // name
            item.add(new Label("name", item.getModelObject()));

            // text field
            TextField<String> textField = new TextField<String>("field",
                    new FieldFieldModel(item.getModelObject()));
            textField.setVisible(!isContentType);
            item.add(textField);

            // contentType select field
            DropDownChoice<String> contentType;
            if (isContentType) {
                IOProviderDescriptor pf = HaleIO.findIOProviderFactory(InstanceWriter.class, null,
                        getTarget().getProviderId());
                List<String> types = new ArrayList<String>();
                for (IContentType type : pf.getSupportedTypes()) {
                    types.add(type.getId());
                }
                contentType = new DropDownChoice<String>("contentType",
                        new FieldFieldModel(item.getModelObject()), types, new ContentTypeChoiceRenderer());
            } else {
                contentType = new DropDownChoice<String>("contentType", new ArrayList<String>());
                contentType.setVisible(false);
            }
            item.add(contentType);
        }

    };
    config.add(parameterView);

    // update parameter panel on target selection change
    selectTarget.add(new AjaxFormComponentUpdatingBehavior("onchange") {

        private static final long serialVersionUID = 8004015871380712045L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            // update config panel

            target.add(config);
        }

    });
}

From source file:eu.uqasar.web.components.navigation.notification.thresholdReached.ThresholdReachedNotificationLink.java

License:Apache License

public ThresholdReachedNotificationLink(String id, PageParameters parameters,
        final IModel<ThresholdReachedNotification> model) {

    super(id, ProjectViewPage.class, BaseTreePage.forProject(model.getObject().getProject()), model);

    add(new Label("projectName", model.getObject().getProject().getAbbreviatedName()));

    add(new ListView<TreeNode>("treeNodeNames", model.getObject().getTreeNodes()) {
        @Override/*from  w w w.j  a  v a 2s. c  o m*/
        protected void populateItem(ListItem<TreeNode> item) {
            TreeNode node = item.getModelObject();
            item.add(new BookmarkablePageLink<QualityObjectiveViewPage>("QOlink",
                    QualityObjectiveViewPage.class, new PageParameters().set("id", node.getId()))
                            .add(new Label("name", node.getName())));
        }
    });

    //set containers 
    setIcon(new IconType("exclamation-sign"));
    get("notification.container").add(new AttributeModifier("style", "width:95%;"));
    get("notification.container").add(new AttributeModifier("class", "notification project red"));

    //trash
    final WebMarkupContainer deleteContainer = new WebMarkupContainer("delete");
    final String deleteMessage = new StringResourceModel("delete.message", this, null).getString();
    deleteContainer.add(new AjaxEventBehavior("onclick") {
        private static final long serialVersionUID = -4295786924073241665L;

        @Override
        protected void onEvent(AjaxRequestTarget target) {
            UQasarUtil.getNotifications().remove(model.getObject());
            setResponsePage(AboutPage.class, BasePage.appendSuccessMessage(getPageParameters(), deleteMessage));
        }
    });
    deleteContainer.setOutputMarkupId(true);
    add(deleteContainer);

    // tooltip
    TooltipConfig confConfig = new TooltipConfig().withPlacement(TooltipConfig.Placement.right);
    deleteContainer.add(new TooltipBehavior(new StringResourceModel("delete.title", this, null), confConfig));
}

From source file:eu.uqasar.web.dashboard.widget.reportingwidget.ReportingSettingsPanel.java

License:Apache License

public ReportingSettingsPanel(String id, IModel<ReportingWidget> model) {
    super(id, model);

    setOutputMarkupPlaceholderTag(true);

    final ReportingWidget qualityWidget = model.getObject();

    Form<Widget> form = new Form<>("form");

    cube = getModelObject().getSettings().get("cube");
    if (cube == null) {
        cube = "jira";
    }//from  www.ja  v a2 s  .c o m
    selectedAdditionalRule = getModelObject().getSettings().get("selectedAdditionalRule");
    selectedRule = getModelObject().getSettings().get("selectedRule");

    chartType = getModelObject().getSettings().get("chartType");
    if (chartType == null) {
        chartType = ReportingWidget.COLUMN_TYPE;
    }

    try {
        InitialContext ic = new InitialContext();
        dataService = (SonarDataService) ic.lookup("java:module/SonarDataService");
        projects = dataService.getSonarProjects();
    } catch (NamingException e) {
        e.printStackTrace();
    }

    // Add Rules and Additional Rules as DropDownList
    rulesMap = qualityWidget.getRulesMap(projects);

    // //Add selection of cubes for report generation.
    List<String> cubes = Arrays.asList("jira", "sonarcube");
    final DropDownChoice<String> selectedCubes = new DropDownChoice<>("cube",
            new PropertyModel<String>(this, "cube"), cubes);
    selectedCubes.setRequired(true);
    form.add(selectedCubes);

    // Field for the chart type
    chartType = getModelObject().getSettings().get("chartType");
    DropDownChoice<String> choice = new DropDownChoice<>("chartType",
            new PropertyModel<String>(this, "chartType"), ReportingWidget.TYPES);
    form.add(choice);

    // Create a void form for ListView and WebMarkupContainer
    Form<Void> formVoid = new Form<>("formVoid");
    ruleWebMrkUpContainer = new WebMarkupContainer("ruleContainer", new Model<Rule>());
    ruleWebMrkUpContainer.setOutputMarkupId(true);
    formVoid.add(ruleWebMrkUpContainer);

    ruleWebMrkUpContainer.add(rulesView = new ListView<Rule>("rulesListView", Model.ofList(proposedRules)) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onConfigure() {
            super.onConfigure();
            // update model
            rulesView.setModelObject(proposedRules);
        }

        @Override
        protected void populateItem(ListItem<Rule> item) {

            final Rule proposedRule = item.getModelObject();

            // //get dropdown list method will give two different lists..
            IModel<List<? extends String>> ruleChoices = new AbstractReadOnlyModel<List<? extends String>>() {
                /**
                 * 
                 */
                private static final long serialVersionUID = 1L;

                @Override
                public List<String> getObject() {
                    return new ArrayList<>(rulesMap.keySet());
                }

            };

            IModel<List<? extends String>> additionalRuleChoices = new AbstractReadOnlyModel<List<? extends String>>() {
                /**
                 * 
                 */
                private static final long serialVersionUID = 1L;

                @Override
                public List<String> getObject() {
                    List<String> models = rulesMap.get(proposedRule.getSelectedRule()); // very important
                    // System.out.println("selectedRule : " + proposedUser.getSelectedRule());
                    if (models == null) {
                        models = Collections.emptyList();
                    }
                    return models;
                }

            };

            item.add(rules = new DropDownChoice<>("rules",
                    new PropertyModel<String>(proposedRule, "selectedRule"), ruleChoices));
            rules.setOutputMarkupId(true);
            rules.setNullValid(true);
            rules.setRequired(true);
            rules.setMarkupId("rules" + item.getIndex()); // very important

            item.add(additionalRules = new DropDownChoice<>("additionalRules",
                    new PropertyModel<String>(proposedRule, "selectedAdditionalRule"), additionalRuleChoices));
            additionalRules.setOutputMarkupId(true);
            additionalRules.setMarkupId("additionalRules" + item.getIndex()); // very important
            additionalRules.setNullValid(true);
            additionalRules.setRequired(true);
            rules.add(new AjaxFormComponentUpdatingBehavior("onchange") { // very important
                /**
                * 
                */
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.add(additionalRules);
                    target.add(rules);
                }
            });

            additionalRules.add(new AjaxFormComponentUpdatingBehavior("onchange") { // very important
                private static final long serialVersionUID = 1L;

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.add(additionalRules);
                    target.add(rules);
                }
            });
        }
    });

    AjaxSubmitLink addRuleButton = new AjaxSubmitLink("add.rule", formVoid) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> formVoid) {
            // target.add(feedbackPanel);
            target.add(formVoid);
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> formVoid) {

            addNewRuleToList(target, formVoid);
        }
    };
    addRuleButton.add(new Label("button.add.save",
            new StringResourceModel("button.add.save", this, Model.of(proposedRules))));
    formVoid.add(addRuleButton);

    rulesView.setOutputMarkupId(true);
    form.add(formVoid);

    form.add(new AjaxSubmitLink("submit") {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Dashboard dashboard = findParent(DashboardPanel.class).getDashboard();
            if (dashboard != null && dashboardContext != null) {

                // Here, create a url query based on selected Rule and Additional Rule from dynamic dropdown lists..
                urlToLoad = createRule();
                System.out.println(urlToLoad);
                getModelObject().getSettings().put("urlToLoad", urlToLoad);

                getModelObject().getSettings().put("cube", cube);
                getModelObject().getSettings().put("selectedAdditionalRule", selectedAdditionalRule);
                getModelObject().getSettings().put("selectedRule", selectedRule);
                getModelObject().getSettings().put("chartType", chartType);

                System.out.print("dashboard : " + dashboard);
                dashboardContext.getDashboardPersiter().save(dashboard);
                hideSettingPanel(target);

                WidgetPanel widgetPanel = findParent(WidgetPanel.class);
                ReportingWidget tasksWidget = (ReportingWidget) widgetPanel.getModelObject();
                tasksWidget.setTitle("Reporting Widget For " + cube + " cube");
                ReportingWidgetView widgetView = (ReportingWidgetView) widgetPanel.getWidgetView();
                target.add(widgetView);

                PageParameters params = new PageParameters();
                DbDashboard dbdb = (DbDashboard) dashboard;
                params.add("id", dbdb.getId());
                setResponsePage(DashboardViewPage.class, params);
            }
        }

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

    });

    form.add(new AjaxLink<Void>("cancel") {

        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            hideSettingPanel(target);
        }
    });

    add(form);

}

From source file:eu.uqasar.web.dashboard.widget.reportingwidget.ReportingWidgetView.java

License:Apache License

public ReportingWidgetView(String id, IModel<Widget> model) {
    super(id, model);

    final ReportingWidget qualityWidget = (ReportingWidget) model.getObject();

    // Create a quarry for Report Generation.
    cube = qualityWidget.getSettings().get("cube");
    chartType = qualityWidget.getSettings().get("chartType");

    urlToLoad = qualityWidget.getSettings().get("urlToLoad");
    Form<Void> formVoid = new Form<>("formVoid");

    LoadableDetachableModel<List<ReportMeasurement>> mdl = new LoadableDetachableModel<List<ReportMeasurement>>() {
        private static final long serialVersionUID = 1L;

        protected List<ReportMeasurement> load() {
            measurements = qualityWidget.getMeasurements(cube, urlToLoad);
            return measurements;
        }//from   ww w . j a v a  2  s .c  om
    };

    Chart chart;
    chart = new Chart("chart", qualityWidget.getChartOptions(mdl.getObject(), chartType));
    add(chart);

    add(formVoid);

    reportWMC = new WebMarkupContainer("reportWMC", new Model<ReportMeasurement>());
    reportWMC.setOutputMarkupId(true);
    formVoid.add(reportWMC);

    if (measurements.size() != 0) {
        reportWMC.add(new Label("type", measurements.get(0).getReportType()));
    } else {
        reportWMC.add(new Label("type", "Rule"));
    }

    reportWMC.add(reportView = new ListView<ReportMeasurement>("reportListView", Model.ofList(measurements)) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void onConfigure() {
            super.onConfigure();
            // update model
            reportView.setModelObject(measurements);
        }

        @Override
        protected void populateItem(ListItem<ReportMeasurement> item) {

            final ReportMeasurement proposedReport = item.getModelObject();

            item.add(new Label("value", proposedReport.getReportValue()));
            item.add(new Label("count", proposedReport.getCount()));
        }
    });

}

From source file:eu.uqasar.web.pages.admin.teams.TeamListPage.java

License:Apache License

private WebMarkupContainer newMembersPanel(final Team team) {
    final WebMarkupContainer tagsContainer = new WebMarkupContainer("membersList");
    tagsContainer.setOutputMarkupPlaceholderTag(true);
    tagsContainer/*  w ww .j av a2s  .  co m*/
            .add(new ListView<TeamMembership>("member", new ListModel<>(new ArrayList<>(team.getMembers()))) {
                @Override
                protected void populateItem(ListItem<TeamMembership> item) {
                    final String userName = item.getModelObject().getUser().getFullName();
                    final String role = item.getModelObject().getRole().toString();
                    Link editButton = new BookmarkablePageLink("link.edit.member", UserEditPage.class,
                            new PageParameters().add("id", item.getModelObject().getUser().getId()));
                    item.add(editButton.add(new Label("user", userName)));
                    item.add(new Label("role", role));
                }
            });
    return tagsContainer;
}

From source file:eu.uqasar.web.pages.analytic.drilldown.AnalysisDrilldown.java

License:Apache License

public AnalysisDrilldown(PageParameters parameters) {
    super(parameters);

    //TODO: add support for new Analysis
    StringValue id = parameters.get("analysis-id");
    analysis = analyticService.getById(id.toOptionalLong());

    // Prepares the String for the REST Query
    prepareQuery();/*w  ww  . j  a v a  2s.  c  o  m*/

    // The query is single sent to Cubes Server and JSON is stored into String to be parsed
    cubesJSON = getJSON(query);

    // Add the title of the headers
    headerLabel = getHeaders();

    // Add the data to be shown in the table
    dataResults = getDataFromDimension(cubesJSON);

    // Analysis name
    add(new Label("name", new PropertyModel<String>(analysis, "name")));

    // Analysis description
    add(new Label("description", new PropertyModel<String>(analysis, "description")));

    // Add a link to JSON in order to test the Query
    add(linkToJSON());

    // Add the form to add/remove drilldown elements
    form = new Form<>("form");

    // Add the dimension selector 
    form.add(new Select2MultiChoice<>("dimensionSelector",
            new PropertyModel<Collection<Dimensions>>(analysis, "dimensions"), new DimensionProvider()));

    // Add the button to Submit the form with the Dimension changes
    Button saveButton = new Button("save", new StringResourceModel("button.save", this, null));

    saveButton.add(new AjaxFormSubmitBehavior(form, "onclick") {
        private static final long serialVersionUID = 4973315405621990914L;

        @Override
        protected void onEvent(AjaxRequestTarget target) {
            super.onEvent(target);
            setResponsePage(AnalysisDrilldown.class, BaseTreePage.forAnalysis(analysis));
        }

    });
    form.add(saveButton);

    add(form);

    // // TableOfResults, add header for the table
    RepeatingView headers = new RepeatingView("headers");
    for (String label : headerLabel) {
        headers.add(new Label(headers.newChildId(), label));
    }
    add(headers);

    // TableOfResults, add the part of the table that show data
    add(new ListView<String>("contentlist", dataResults) {
        private static final long serialVersionUID = -9149319929661254397L;

        @Override
        protected void populateItem(ListItem<String> colData) {
            final String string = colData.getModelObject();
            RepeatingView repeatingView = new RepeatingView("data");

            for (String label : headerLabel) {
                try {
                    JSONObject json = new JSONObject(string);
                    repeatingView.add(new Label(repeatingView.newChildId(), json.getString(label)));
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
            colData.add(repeatingView);
        }
    });

}

From source file:eu.uqasar.web.pages.tree.snapshot.panel.SnapshotViewPanel.java

License:Apache License

/**
 * Constructor building the page//from  w  ww. j a  v a  2  s .c om
 * @param snap
  */
public SnapshotViewPanel(final String markupId, IModel<Snapshot> snap) {
    super(markupId);

    snapshot = snap.getObject();

    final TreeNode qmTreeNode = snapshot.getProject();

    // Adds to the list every Project persisted on platform
    add(drawTreeElement("qmodel", qmTreeNode));

    // Adds a tree list of the Quality Objectives of the Project
    add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
        private static final long serialVersionUID = 6089299549826556193L;

        @Override
        protected void populateItem(ListItem<TreeNode> qo) {
            final TreeNode qmTreeNode = qo.getModelObject();

            // Adds every Quality Objective
            qo.add(drawTreeElement("qobjective", qmTreeNode));

            // Adds a tree list of the Quality Indicators of a Objective
            qo.add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
                private static final long serialVersionUID = 9129630322229875593L;

                @Override
                protected void populateItem(ListItem<TreeNode> qi) {
                    final TreeNode qmTreeNode = qi.getModelObject();

                    // Adds every Quality Indicator
                    qi.add(drawTreeElement("qindicator", qmTreeNode));

                    // Adds a tree list of the Metrics of an Indicator
                    qi.add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
                        private static final long serialVersionUID = 9129630322229875593L;

                        @Override
                        protected void populateItem(ListItem<TreeNode> me) {
                            final TreeNode qmTreeNode = me.getModelObject();
                            // Adds every Metric from the Indicator
                            me.add(drawTreeElement("qmetric", qmTreeNode));
                        }
                    });
                }
            });
        }
    });
}

From source file:eu.uqasar.web.pages.tree.subset.panel.SubsetProposalPanel.java

License:Apache License

/**
 * @param markupId//from   ww  w .  ja  v  a 2  s.com
  */
public SubsetProposalPanel(final String markupId, final Project project) {
    super(markupId);

    projectTags = projectTags(project);

    final Form<QMTreeNode> saveForm = new Form<>("saveForm");
    add(saveForm);

    // add checkgroup for selecting multiple measurements
    saveForm.add(dataGroup = newDataCheckGroup());

    // add the container holding list of existing measurements
    dataGroup.add(dataContainer.setOutputMarkupId(true));

    dataContainer.add(new CheckGroupSelector("dataGroupSelector", dataGroup));
    List<QModel> qModelList = new LinkedList<>();
    qModelList.add(project.getQmodel());
    dataContainer.add(new ListView<QMTreeNode>("qmlist", qModelList) {
        private static final long serialVersionUID = -8627579715676163392L;

        @Override
        protected void populateItem(ListItem<QMTreeNode> item) {
            final QMTreeNode qmTreeNode = project.getQmodel(); //item.getModelObject();

            // Adds every Quality Model persisted on platform
            item.add(drawTreeElement("qmodel", item));

            // Adds a tree list of the Quality Objectives of the Model
            item.add(new ListView<QMTreeNode>("qmlist", qmTreeNode.getChildren()) {
                private static final long serialVersionUID = 6089299549826556193L;

                @Override
                protected void populateItem(ListItem<QMTreeNode> qo) {
                    final QMTreeNode qmTreeNode = qo.getModelObject();

                    // Adds every Quality Objective
                    qo.add(drawTreeElement("qobjective", qo));

                    // Adds a tree list of the Quality Indicators of a Objective
                    qo.add(new ListView<QMTreeNode>("qmlist", qmTreeNode.getChildren()) {
                        private static final long serialVersionUID = 9129630322229875593L;

                        @Override
                        protected void populateItem(ListItem<QMTreeNode> qi) {
                            final QMTreeNode qmTreeNode = qi.getModelObject();

                            // Adds every Quality Indicator
                            qi.add(drawTreeElement("qindicator", qi));

                            // Adds a tree list of the Metrics of an Indicator
                            qi.add(new ListView<QMTreeNode>("qmlist", qmTreeNode.getChildren()) {
                                private static final long serialVersionUID = 9129630322229875593L;

                                @Override
                                protected void populateItem(ListItem<QMTreeNode> me) {
                                    // Adds every Metric from the Indicator
                                    me.add(drawTreeElement("qmetric", me));
                                }
                            });
                        }
                    });
                }
            });
        }
    });

}

From source file:eu.uqasar.web.pages.tree.visual.panel.VisualProjectPanel.java

License:Apache License

/**
 * Constructor building the page/*  w  w  w  . j av a 2s. c o m*/
 *
  */
public VisualProjectPanel(final String markupId) {
    super(markupId);

    add(new ListView<TreeNode>("qmlist", treeNodeService.getAllProjects()) {
        private static final long serialVersionUID = -8627579715676163392L;

        @Override
        protected void populateItem(ListItem<TreeNode> item) {
            final TreeNode qmTreeNode = item.getModelObject();

            // Adds to the list every Project persisted on platform
            item.add(drawTreeElement("qmodel", item));

            // Adds a tree list of the Quality Objectives of the Project
            item.add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
                private static final long serialVersionUID = 6089299549826556193L;

                @Override
                protected void populateItem(ListItem<TreeNode> qo) {
                    final TreeNode qmTreeNode = qo.getModelObject();

                    // Adds every Quality Objective
                    qo.add(drawTreeElement("qobjective", qo));

                    // Adds a tree list of the Quality Indicators of a Objective
                    qo.add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
                        private static final long serialVersionUID = 9129630322229875593L;

                        @Override
                        protected void populateItem(ListItem<TreeNode> qi) {
                            final TreeNode qmTreeNode = qi.getModelObject();

                            // Adds every Quality Indicator
                            qi.add(drawTreeElement("qindicator", qi));

                            // Adds a tree list of the Metrics of an Indicator
                            qi.add(new ListView<TreeNode>("qmlist", qmTreeNode.getChildren()) {
                                private static final long serialVersionUID = 9129630322229875593L;

                                @Override
                                protected void populateItem(ListItem<TreeNode> me) {
                                    // Adds every Metric from the Indicator
                                    me.add(drawTreeElement("qmetric", me));
                                }
                            });
                        }
                    });
                }
            });
        }
    });

}