private ListView<AnnotationListItem> createAnnotationList() { return new ListView<AnnotationListItem>("annotations", LoadableDetachableModel.of(this::listAnnotations)) { private static final long serialVersionUID = -6833373063896777785L; @Override protected void populateItem(ListItem<AnnotationListItem> aItem) { aItem.setModel(CompoundPropertyModel.of(aItem.getModel())); aItem.add(new Label("type", aItem.getModelObject().layer.getUiName())); LambdaAjaxLink link = new LambdaAjaxLink("annotationLink", _target -> actionSelect(_target, aItem.getModelObject())); link.add(new Label("label")); aItem.add(link); } }; }
private ListView<AnnotationListItem> createAnnotationList() { return new ListView<AnnotationListItem>("annotations", LoadableDetachableModel.of(this::listAnnotations)) { private static final long serialVersionUID = -6833373063896777785L; @Override protected void populateItem(ListItem<AnnotationListItem> aItem) { aItem.setModel(CompoundPropertyModel.of(aItem.getModel())); aItem.add(new Label("type", aItem.getModelObject().layer.getUiName())); LambdaAjaxLink link = new LambdaAjaxLink("annotationLink", _target -> actionSelect(_target, aItem.getModelObject())); link.add(new Label("label")); aItem.add(link); } }; }
public SystemStatusDashlet(String aId) { super(aId); add(new Label("activeUsers", LoadableDetachableModel.of(() -> sessionRegistry.getAllPrincipals().size()))); }
public SystemStatusDashlet(String aId) { super(aId); add(new Label("activeUsers", LoadableDetachableModel.of(() -> sessionRegistry.getAllPrincipals().size()))); }
private LambdaAjaxLink createJumpToSuggestionLink() { LambdaAjaxLink link = new LambdaAjaxLink(CID_RECOMMENDATION_COVERED_TEXT_LINK, this::actionJumpToSuggestion); link.add(new Label("leftContext", LoadableDetachableModel.of(() -> alStateModel.getObject().getLeftContext()))); link.add(new Label("text", LoadableDetachableModel.of(() -> alStateModel.getObject() .getSuggestion().map(AnnotationSuggestion::getCoveredText).orElse("")))); link.add(new Label("rightContext", LoadableDetachableModel.of(() -> alStateModel.getObject().getRightContext()))); return link; }
private LambdaAjaxLink createJumpToSuggestionLink() { LambdaAjaxLink link = new LambdaAjaxLink(CID_RECOMMENDATION_COVERED_TEXT_LINK, this::actionJumpToSuggestion); link.add(new Label("leftContext", LoadableDetachableModel.of(() -> alStateModel.getObject().getLeftContext()))); link.add(new Label("text", LoadableDetachableModel.of(() -> alStateModel.getObject() .getSuggestion().map(AnnotationSuggestion::getCoveredText).orElse("")))); link.add(new Label("rightContext", LoadableDetachableModel.of(() -> alStateModel.getObject().getRightContext()))); return link; }
public DocumentMetadataSidebar(String aId, IModel<AnnotatorState> aModel, AnnotationActionHandler aActionHandler, JCasProvider aJCasProvider, AnnotationPage aAnnotationPage) { super(aId, aModel, aActionHandler, aJCasProvider, aAnnotationPage); IModel<Project> project = LoadableDetachableModel.of(() -> aModel.getObject().getProject()); IModel<SourceDocument> sourceDocument = LoadableDetachableModel .of(() -> aModel.getObject().getDocument()); IModel<String> username = LoadableDetachableModel .of(() -> aModel.getObject().getUser().getUsername()); DocumentMetadataAnnotationDetailPanel details = new DocumentMetadataAnnotationDetailPanel( "details", Model.of(VID.NONE_ID), sourceDocument, username, aJCasProvider, project, aAnnotationPage); add(details); add(new DocumentMetadataAnnotationSelectionPanel("annotations", project, sourceDocument, username, aJCasProvider, details, aAnnotationPage)); } }
public DocumentMetadataSidebar(String aId, IModel<AnnotatorState> aModel, AnnotationActionHandler aActionHandler, JCasProvider aJCasProvider, AnnotationPage aAnnotationPage) { super(aId, aModel, aActionHandler, aJCasProvider, aAnnotationPage); IModel<Project> project = LoadableDetachableModel.of(() -> aModel.getObject().getProject()); IModel<SourceDocument> sourceDocument = LoadableDetachableModel .of(() -> aModel.getObject().getDocument()); IModel<String> username = LoadableDetachableModel .of(() -> aModel.getObject().getUser().getUsername()); DocumentMetadataAnnotationDetailPanel details = new DocumentMetadataAnnotationDetailPanel( "details", Model.of(VID.NONE_ID), sourceDocument, username, aJCasProvider, project, aAnnotationPage); add(details); add(new DocumentMetadataAnnotationSelectionPanel("annotations", project, sourceDocument, username, aJCasProvider, details, aAnnotationPage)); } }
public IRIValuePresenter(String id, IModel<KBStatement> aModel, IModel<KnowledgeBase> aKBModel) { super(id, aModel); kbModel = aKBModel; kbObject = CompoundPropertyModel.of(LoadableDetachableModel.of(this::getKBObject)); add(new IriInfoBadge("iriInfoBadge", LoadableDetachableModel .of(() -> ((IRI) getModelObject().getValue()).stringValue()))); LambdaAjaxLink link = new LambdaAjaxLink("link", t -> actionIRILinkClicked(t, kbObject.getObject())); link.add(new Label("label", LoadableDetachableModel.of(() -> getLabel(kbObject.getObject())))); add(link); }
public IRIValuePresenter(String id, IModel<KBStatement> aModel, IModel<KnowledgeBase> aKBModel) { super(id, aModel); kbModel = aKBModel; kbObject = CompoundPropertyModel.of(LoadableDetachableModel.of(this::getKBObject)); add(new IriInfoBadge("iriInfoBadge", LoadableDetachableModel .of(() -> ((IRI) getModelObject().getValue()).stringValue()))); LambdaAjaxLink link = new LambdaAjaxLink("link", t -> actionIRILinkClicked(t, kbObject.getObject())); link.add(new Label("label", LoadableDetachableModel.of(() -> getLabel(kbObject.getObject())))); add(link); }
public ImageSidebar(String aId, IModel<AnnotatorState> aModel, AnnotationActionHandler aActionHandler, JCasProvider aJCasProvider, AnnotationPage aAnnotationPage) { super(aId, aModel, aActionHandler, aJCasProvider, aAnnotationPage); mainContainer = new WebMarkupContainer("mainContainer"); mainContainer.setOutputMarkupId(true); add(mainContainer); ListView<String> images = new ListView<String>("images") { private static final long serialVersionUID = -1203277069357712752L; @Override protected void populateItem(ListItem<String> item) { item.add(new ExternalImage("image", item.getModelObject())); item.add(new ExternalLink("open", item.getModelObject())); } }; images.setModel(LoadableDetachableModel.of(this::listImageUrls)); mainContainer.add(images); }
private Form<Void> createRecommendationOperationForm() { recommendationForm = new Form<Void>(CID_RECOMMENDATION_FORM); recommendationForm.add(LambdaBehavior.visibleWhen(() -> { ActiveLearningUserState alState = alStateModel.getObject(); return alState.isSessionActive() && alState.getSuggestion().isPresent(); })); recommendationForm.setOutputMarkupPlaceholderTag(true); recommendationForm.add(createJumpToSuggestionLink()); recommendationForm.add(new Label(CID_RECOMMENDED_PREDITION, LoadableDetachableModel.of(() -> alStateModel.getObject() .getSuggestion().map(this::formatLabel).orElse(null)))); recommendationForm.add(new Label(CID_RECOMMENDED_CONFIDENCE, () -> alStateModel.getObject().getSuggestion() .map(AnnotationSuggestion::getConfidence).orElse(null))); recommendationForm.add(new Label(CID_RECOMMENDED_DIFFERENCE, () -> alStateModel.getObject().getCurrentDifference() .map(Delta::getDelta).orElse(null))); recommendationForm.add((alStateModel.getObject().getLayer() != null && alStateModel.getObject().getSuggestion().isPresent()) ? initializeFeatureEditor() : new Label(CID_EDITOR).setVisible(false)); recommendationForm.add(new LambdaAjaxButton<>(CID_ANNOTATE_BUTTON, this::actionAnnotate)); recommendationForm.add(new LambdaAjaxLink(CID_SKIP_BUTTON, this::actionSkip)); recommendationForm.add(new LambdaAjaxLink(CID_REJECT_BUTTON, this::actionReject)); return recommendationForm; }
private Label createSelectedAnnotationTypeLabel() { Label label = new Label("selectedAnnotationType", LoadableDetachableModel.of(() -> { try { return String.valueOf(WebAnnoCasUtil.selectByAddr(editorPanel.getEditorCas(), getModelObject().getSelection().getAnnotation().getId())).trim(); } catch (IOException e) { return ""; } })); label.setOutputMarkupPlaceholderTag(true); // We show the extended info on the selected annotation only when run in development mode label.add(visibleWhen(() -> getModelObject().getSelection().getAnnotation().isSet() && DEVELOPMENT.equals(getApplication().getConfigurationType()))); return label; }
public UimaStringTraitsEditor(String aId, IModel<AnnotationFeature> aFeature) { super(aId); DropDownChoice<TagSet> tagset = new BootstrapSelect<>("tagset"); tagset.setOutputMarkupPlaceholderTag(true); tagset.setOutputMarkupId(true); tagset.setChoiceRenderer(new ChoiceRenderer<>("name")); tagset.setNullValid(true); tagset.setModel(PropertyModel.of(aFeature, "tagset")); tagset.setChoices(LoadableDetachableModel.of(() -> annotationService .listTagSets(aFeature.getObject().getProject()))); add(tagset); } }
public UimaStringTraitsEditor(String aId, IModel<AnnotationFeature> aFeature) { super(aId); DropDownChoice<TagSet> tagset = new BootstrapSelect<>("tagset"); tagset.setOutputMarkupPlaceholderTag(true); tagset.setOutputMarkupId(true); tagset.setChoiceRenderer(new ChoiceRenderer<>("name")); tagset.setNullValid(true); tagset.setModel(PropertyModel.of(aFeature, "tagset")); tagset.setChoices(LoadableDetachableModel.of(() -> annotationService .listTagSets(aFeature.getObject().getProject()))); add(tagset); } }
public ProjectSelectionForm(String id) { super(id, new CompoundPropertyModel<>(new ProjectSelectionModel())); ListChoice<Project> projectList = new OverviewListChoice<>("project"); projectList.setChoiceRenderer(new ChoiceRenderer<>("name")); projectList.setChoices(LoadableDetachableModel.of(this::listAllowedProjects)); projectList.add(new LambdaAjaxFormComponentUpdatingBehavior("change", this::onSelectionChanged)); add(projectList); }
private Form<Void> createSessionControlForm() { Form<Void> form = new Form<>(CID_SESSION_CONTROL_FORM); DropDownChoice<AnnotationLayer> layersDropdown = new BootstrapSelect<>(CID_SELECT_LAYER); layersDropdown.setModel(alStateModel.bind("layer")); layersDropdown.setChoices(LoadableDetachableModel.of(this::listLayersWithRecommenders)); layersDropdown.setChoiceRenderer(new LambdaChoiceRenderer<>(AnnotationLayer::getUiName)); layersDropdown.add(LambdaBehavior.onConfigure(it -> it.setEnabled(!alStateModel .getObject().isSessionActive()))); layersDropdown.setOutputMarkupId(true); layersDropdown.setRequired(true); form.add(layersDropdown); form.add(new LambdaAjaxSubmitLink(CID_START_SESSION_BUTTON, this::actionStartSession) .add(visibleWhen(() -> !alStateModel.getObject().isSessionActive()))); form.add(new LambdaAjaxLink(CID_STOP_SESSION_BUTTON, this::actionStopSession) .add(visibleWhen(() -> alStateModel.getObject().isSessionActive()))); form.add(visibleWhen(() -> alStateModel.getObject().isDoExistRecommenders())); return form; }
private Form<Void> createSessionControlForm() { Form<Void> form = new Form<>(CID_SESSION_CONTROL_FORM); DropDownChoice<AnnotationLayer> layersDropdown = new BootstrapSelect<>(CID_SELECT_LAYER); layersDropdown.setModel(alStateModel.bind("layer")); layersDropdown.setChoices(LoadableDetachableModel.of(this::listLayersWithRecommenders)); layersDropdown.setChoiceRenderer(new LambdaChoiceRenderer<>(AnnotationLayer::getUiName)); layersDropdown.add(LambdaBehavior.onConfigure(it -> it.setEnabled(!alStateModel .getObject().isSessionActive()))); layersDropdown.setOutputMarkupId(true); layersDropdown.setRequired(true); form.add(layersDropdown); form.add(new LambdaAjaxSubmitLink(CID_START_SESSION_BUTTON, this::actionStartSession) .add(visibleWhen(() -> !alStateModel.getObject().isSessionActive()))); form.add(new LambdaAjaxLink(CID_STOP_SESSION_BUTTON, this::actionStopSession) .add(visibleWhen(() -> alStateModel.getObject().isSessionActive()))); form.add(visibleWhen(() -> alStateModel.getObject().isDoExistRecommenders())); return form; }