From 2d1c00a6eea725a1f8e73461338f7ed5d0f1e14d Mon Sep 17 00:00:00 2001 From: David Hoksza <david.hoksza@uni.lu> Date: Wed, 7 Feb 2018 14:12:36 +0100 Subject: [PATCH] Annotators params tooltip help. Decription attribute renamed to description --- .../annotation/services/ModelAnnotator.java | 3 --- .../annotators/AnnotatorParamDefinition.java | 10 +++++----- .../services/annotators/KeggAnnotator.java | 5 +++-- .../annotators/AnnotatorExceptionTest.java | 2 +- .../annotators/KeggAnnotatorTest.java | 2 +- frontend-js/src/main/css/global.css | 18 ++++++++++++++++++ .../js/gui/admin/ChooseAnnotatorsDialog.js | 19 +++++++++++++++---- 7 files changed, 43 insertions(+), 16 deletions(-) diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/ModelAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/ModelAnnotator.java index 8328716508..8516fd4f6b 100644 --- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/ModelAnnotator.java +++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/ModelAnnotator.java @@ -348,9 +348,6 @@ public class ModelAnnotator { double counter = 0; double amount = model.getElements().size() + model.getReactions().size(); - logger.debug("annotatorsParams"); - logger.debug(annotatorsParams); - // annotate all elements for (Element element : model.getElements()) { List<ElementAnnotator> list = null; diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorParamDefinition.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorParamDefinition.java index 3d13f4181e..9559952e60 100644 --- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorParamDefinition.java +++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorParamDefinition.java @@ -9,14 +9,14 @@ package lcsb.mapviewer.annotation.services.annotators; public class AnnotatorParamDefinition { private String name; - private String decription; + private String description; private Class<?> type; - public AnnotatorParamDefinition(String name, Class<?> type, String decription) { + public AnnotatorParamDefinition(String name, Class<?> type, String description) { super(); this.name = name; - this.decription = decription; + this.description = description; this.type = type; } @@ -24,8 +24,8 @@ public class AnnotatorParamDefinition { return name; } - public String getDecription() { - return decription; + public String getDescription() { + return description; } public Class<?> getType() { diff --git a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotator.java b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotator.java index cbf8cee52c..4f4238e70c 100644 --- a/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotator.java +++ b/annotation/src/main/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotator.java @@ -222,14 +222,15 @@ public class KeggAnnotator extends ElementAnnotator implements IExternalService if (params != null) { String[] keggOrgnismCodes = params.get(0).getParamValue().trim().split(" +"); for (String code: keggOrgnismCodes) { - if (code.toUpperCase() != "ATH") { - logger.warn("KEGG annotator currently supports only ATH"); + if (!code.equalsIgnoreCase("ATH")) { + logger.warn("KEGG annotator currently supports only ATH (" + code + " passed)" ); } else { m = athOrthologMatcher.matcher(pageContent); if (m.find()) { String[] tairCodes = m.group(1).trim().split(" "); for (String tairCode: tairCodes) { tairCode = tairCode.split("\\(")[0]; //some codes are in the form AT1G08510(FATB) + logger.debug("Adding tair code " + tairCode); result.add(createMiriamData(MiriamType.TAIR_LOCUS, tairCode)); } } diff --git a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorExceptionTest.java b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorExceptionTest.java index 05162124a4..629717e148 100644 --- a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorExceptionTest.java +++ b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/AnnotatorExceptionTest.java @@ -25,7 +25,7 @@ public class AnnotatorExceptionTest { public void testConstructor() { AnnotatorParamDefinition d = new AnnotatorParamDefinition("name", String.class, "description"); assertEquals(d.getName(), "name"); - assertEquals(d.getDecription(), "description"); + assertEquals(d.getDescription(), "description"); assertEquals(d.getType(), String.class); } diff --git a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotatorTest.java b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotatorTest.java index 21e5e64b74..7228b8e6e4 100644 --- a/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotatorTest.java +++ b/annotation/src/test/java/lcsb/mapviewer/annotation/services/annotators/KeggAnnotatorTest.java @@ -148,7 +148,7 @@ public class KeggAnnotatorTest extends AnnotationTestFunctions { protein.setName("bla"); protein.addMiriamData(new MiriamData(MiriamType.UNIPROT, "Q42561")); List<UserAnnotatorsParam> aps = new ArrayList<>(); - aps.add(new UserAnnotatorsParam(String.class, "KEGG organism identifier", "ATH XXX")); + aps.add(new UserAnnotatorsParam(String.class, "KEGG organism identifier", "ATH AAA")); keggAnnotator.annotateElement(protein, aps); int cntTairs = 0; diff --git a/frontend-js/src/main/css/global.css b/frontend-js/src/main/css/global.css index 04c3b36d73..3ad3f016a3 100644 --- a/frontend-js/src/main/css/global.css +++ b/frontend-js/src/main/css/global.css @@ -587,3 +587,21 @@ h1 { font-weight: bold; } +.minerva-annotator-param-name .annotator-tooltip { + visibility: hidden; + width: 50%; + background-color: rgba(0, 0, 0, .5); + color: #fff; + text-align: left; + border-radius: 6px; + padding: 5px; + + /* Position the tooltip */ + position: absolute; + z-index: 1; +} + +.minerva-annotator-param-name:hover .annotator-tooltip { + visibility: visible; +} + diff --git a/frontend-js/src/main/js/gui/admin/ChooseAnnotatorsDialog.js b/frontend-js/src/main/js/gui/admin/ChooseAnnotatorsDialog.js index 30e9ae6405..782de66346 100644 --- a/frontend-js/src/main/js/gui/admin/ChooseAnnotatorsDialog.js +++ b/frontend-js/src/main/js/gui/admin/ChooseAnnotatorsDialog.js @@ -106,6 +106,7 @@ ChooseAnnotatorsDialog.prototype.setElementType = function (elementType) { var paramsDefs = annotator.getParametersDefinitions(); if (paramsDefs.length > 0) { + console.log('annotator', annotator); annotatorsParams.appendChild(Functions.createElement({ type: "div", @@ -132,11 +133,21 @@ ChooseAnnotatorsDialog.prototype.setElementType = function (elementType) { className: "minerva-annotator-param" }); - paramElement.appendChild(Functions.createElement({ + var paramName = Functions.createElement({ type: "div", className: "minerva-annotator-param-name", content: param.name - })); + }); + + console.log('param', param); + var toolTip = Functions.createElement({ + type: "span", + className: "annotator-tooltip", + content: param.description + }); + + paramName.appendChild(toolTip) + paramElement.appendChild(paramName); var paramValue; @@ -169,8 +180,8 @@ ChooseAnnotatorsDialog.prototype.setElementType = function (elementType) { paramValue.checked = (existingParamValue && existingParamValue === 'true'); } else { throw new InvalidAlgorithmError("Unknown annotator parameter type"); - } - + } + paramElement.appendChild(paramValue); annotatorParams.appendChild(paramElement); } -- GitLab