Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-2320

Add tooltips to NCBI Primer Design options panel

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Story Points:
      2
    • Sprint:
      Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr, Spring 8 : 24 Apr to 8 May, Spring 8 : 11 May to 25 May

      Description

      Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

      Let us add tooltips to each component in the Primer App Options panel.

      For this task:

      You can find "starter text" for the tooltips in the NCBI Primer Design Web page: https://www.ncbi.nlm.nih.gov/tools/primer-blast/

      While we are working on the wording of the text, meanwhile design a mechanism that will allow a developer to modify a simple JSON, XML, or plain text document that will capture the text of the tooltips. Our idea is that the App itself will read this file and display tooltips found in the file. However, note that this might not be feasible due to our dependence on the GUI builder. That is, the wording of things like tooltips and button labels may have to be hard-coded into the Java code due to the form-based nature of the GUI Builder. So as part of this ticket, investigate whether GUI Builder allows UI components to be configured via a file external to the Java code itself.

      In addition to the above task, also investigate conventions for internationalization. Many users of IGB live in places where English is not normally spoken, and many software applications are written in such a way that allows the developers to easily display button text and other text-based UI components using the preferred language of the computer user. As you are investigating how to implement the tooltips, also investigate tooling for internationalizing applications like IGB to enable different languages to be shown on the UI.

        Attachments

          Issue Links

            Activity

            ann.loraine Ann Loraine created issue -
            ann.loraine Ann Loraine made changes -
            Field Original Value New Value
            Epic Link IGBF-2241 [ 18388 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            ann.loraine Ann Loraine made changes -
            Description Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each component in the Primer Options panel. Add a link to it here.
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each component in the Primer Options panel:
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            ann.loraine Ann Loraine made changes -
            Description Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each component in the Primer Options panel:
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel:
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            ann.loraine Ann Loraine made changes -
            Description Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel:
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel: https://docs.google.com/spreadsheets/d/1JeMZFTyN0a99hTBKVYbOE1XNGXyw9dnRxt8NG3kD0aI/edit?usp=sharing
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            ann.loraine Ann Loraine made changes -
            Description Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel: https://docs.google.com/spreadsheets/d/1JeMZFTyN0a99hTBKVYbOE1XNGXyw9dnRxt8NG3kD0aI/edit?usp=sharing
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)
             
            Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel: https://docs.google.com/spreadsheets/d/1JeMZFTyN0a99hTBKVYbOE1XNGXyw9dnRxt8NG3kD0aI/edit?usp=sharing
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)

            You can find "starter text" for the tooltips in the NCBI Primer Design Web page: https://www.ncbi.nlm.nih.gov/tools/primer-blast/
             
            prutha Prutha Kulkarni (Inactive) made changes -
            Assignee Prutha Kulkarni [ prutha ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            Hide
            prutha Prutha Kulkarni (Inactive) added a comment -

            I have added the tooltip text for the fields I found on the NCBI Primer webpage.
            Prof. [~aloraine], could you please have a look at it?
            Also, could you please let me know what text should be added for the tooltips which I did not find on the webpage?
            Updated google sheet can be found on the same location which is mentioned in the description box.

            Show
            prutha Prutha Kulkarni (Inactive) added a comment - I have added the tooltip text for the fields I found on the NCBI Primer webpage. Prof. [~aloraine] , could you please have a look at it? Also, could you please let me know what text should be added for the tooltips which I did not find on the webpage? Updated google sheet can be found on the same location which is mentioned in the description box.
            prutha Prutha Kulkarni (Inactive) made changes -
            Assignee Prutha Kulkarni [ prutha ] Ann Loraine [ aloraine ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Status In Progress [ 3 ] To-Do [ 10305 ]
            ann.loraine Ann Loraine made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            ann.loraine Ann Loraine made changes -
            Sprint Spring 6 : 30 Mar to Apr 10 [ 91 ] Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr [ 91, 92 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            ann.loraine Ann Loraine made changes -
            Status In Progress [ 3 ] To-Do [ 10305 ]
            ann.loraine Ann Loraine made changes -
            Sprint Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr [ 91, 92 ] Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr, Spring 8 : 24 Apr to 8 May [ 91, 92, 93 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            ann.loraine Ann Loraine made changes -
            Story Points 1.5 2
            ann.loraine Ann Loraine made changes -
            Description Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel: https://docs.google.com/spreadsheets/d/1JeMZFTyN0a99hTBKVYbOE1XNGXyw9dnRxt8NG3kD0aI/edit?usp=sharing
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)

            You can find "starter text" for the tooltips in the NCBI Primer Design Web page: https://www.ncbi.nlm.nih.gov/tools/primer-blast/
             
            Most IGB components are configured with tooltips so that if a user has any question about what something does, they can hover the mouse over it and read some short text about it.

            Let us add tooltips to each component in the Primer App Options panel.

            For this task:

            * First, make a google spreadsheet listing each user input component in the Primer Options panel: https://docs.google.com/spreadsheets/d/1JeMZFTyN0a99hTBKVYbOE1XNGXyw9dnRxt8NG3kD0aI/edit?usp=sharing
            * Then, one by one, compose some text for the tooltip that will appear when the user hovers the mouse over the component. We will iterate this a few times.
            * Copy the text into the code. (Usability testing will be in a separate ticket)

            You can find "starter text" for the tooltips in the NCBI Primer Design Web page: https://www.ncbi.nlm.nih.gov/tools/primer-blast/

            While we are working on the wording of the text, meanwhile design a mechanism that will allow a developer to modify a simple JSON, XML, or plain text document that will capture the text of the tooltips. Our idea is that the App itself will read this file and display tooltips found in the file. However, note that this might not be feasible due to our dependence on the GUI builder. That is, the wording of things like tooltips and button labels may have to be hard-coded into the Java code due to the form-based nature of the GUI Builder. So as part of this ticket, investigate whether GUI Builder allows UI components to be configured via a file external to the Java code itself.

            In addition to the above task, also investigate conventions for internationalization. Many users of IGB live in places where English is not normally spoken, and many software applications are written in such a way that allows the developers to easily display button text and other text-based UI components using the preferred language of the computer user. As you are investigating how to implement the tooltips, also investigate tooling for internationalizing applications like IGB to enable different languages to be shown on the UI.
             
            ann.loraine Ann Loraine made changes -
            Assignee Ann Loraine [ aloraine ]
            noor91zahara Noor Zahara (Inactive) made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            noor91zahara Noor Zahara (Inactive) made changes -
            Assignee Noor Zahara [ noor91zahara ]
            Hide
            noor91zahara Noor Zahara (Inactive) added a comment -

            Suggestion

            One way to add tool-tip text via external file instead of hard-coding is using Resource bundle.
            I created a .properties file and tried it out and it worked.

            Let me know if this works.

            Show
            noor91zahara Noor Zahara (Inactive) added a comment - Suggestion One way to add tool-tip text via external file instead of hard-coding is using Resource bundle. I created a .properties file and tried it out and it worked. Let me know if this works.
            Hide
            noor91zahara Noor Zahara (Inactive) added a comment -

            I think it is better to continue working with branch IGBF-2348.
            [~aloraine] - Is this fine?

            Show
            noor91zahara Noor Zahara (Inactive) added a comment - I think it is better to continue working with branch IGBF-2348 . [~aloraine] - Is this fine?
            Hide
            ann.loraine Ann Loraine added a comment -

            Sure, that is fine.

            Show
            ann.loraine Ann Loraine added a comment - Sure, that is fine.
            Hide
            noor91zahara Noor Zahara (Inactive) added a comment -

            I found a way to internalize a gui form - https://www.youtube.com/watch?v=gdpc4qe9H48

            Show
            noor91zahara Noor Zahara (Inactive) added a comment - I found a way to internalize a gui form - https://www.youtube.com/watch?v=gdpc4qe9H48
            ann.loraine Ann Loraine made changes -
            Sprint Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr, Spring 8 : 24 Apr to 8 May [ 91, 92, 93 ] Spring 6 : 30 Mar to Apr 10, Spring 7 : 13 Apr to 24 Apr, Spring 8 : 24 Apr to 8 May, Spring 8 : 11 May to 25 May [ 91, 92, 93, 94 ]
            ann.loraine Ann Loraine made changes -
            Rank Ranked higher
            Show
            noor91zahara Noor Zahara (Inactive) added a comment - Code Diff for tooltips - https://bitbucket.org/noorzahara/ncbi-primer-local/branch/IGBF-2320#diff
            Hide
            noor91zahara Noor Zahara (Inactive) added a comment -

            Investigation about internationalization of projects on netbeans -

            Below links explain the above-

            https://netbeans.org/kb/docs/java/gui-automatic-i18n.html#newlocale
            https://www.youtube.com/watch?v=gdpc4qe9H48

            Show
            noor91zahara Noor Zahara (Inactive) added a comment - Investigation about internationalization of projects on netbeans - Below links explain the above- https://netbeans.org/kb/docs/java/gui-automatic-i18n.html#newlocale https://www.youtube.com/watch?v=gdpc4qe9H48
            Hide
            noor91zahara Noor Zahara (Inactive) added a comment - - edited

            Packaged jsoup jar file within NCBI primer app.

            Show
            noor91zahara Noor Zahara (Inactive) added a comment - - edited Packaged jsoup jar file within NCBI primer app.
            noor91zahara Noor Zahara (Inactive) made changes -
            Link This issue is blocked by IGBF-2348 [ IGBF-2348 ]
            pooja.nikhare Pooja Nikhare (Inactive) made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            pooja.nikhare Pooja Nikhare (Inactive) made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            pooja.nikhare Pooja Nikhare (Inactive) made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            Show
            noor91zahara Noor Zahara (Inactive) added a comment - PR submitted .- https://bitbucket.org/lorainelab/ncbi-primer/pull-requests/1/igbf-2320/diff
            noor91zahara Noor Zahara (Inactive) made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            noor91zahara Noor Zahara (Inactive) made changes -
            Assignee Noor Zahara [ noor91zahara ]
            ann.loraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            ann.loraine Ann Loraine made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            Hide
            ann.loraine Ann Loraine added a comment -

            Merged and moved to Ready for testing.

            cc: Noor Zahara and Pooja Nikhare

            Show
            ann.loraine Ann Loraine added a comment - Merged and moved to Ready for testing. cc: Noor Zahara and Pooja Nikhare
            prutha Prutha Kulkarni (Inactive) made changes -
            Assignee Prutha Kulkarni [ prutha ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            Hide
            prutha Prutha Kulkarni (Inactive) added a comment -

            Used latest repository.xml which was generated in the app repos download section to test the tooltips in IGB.
            Inputs in the primer options tab now have an info icon hovering on which shows the tooltip related to that particular input option.
            Moving the ticket to DONE.

            Show
            prutha Prutha Kulkarni (Inactive) added a comment - Used latest repository.xml which was generated in the app repos download section to test the tooltips in IGB. Inputs in the primer options tab now have an info icon hovering on which shows the tooltip related to that particular input option. Moving the ticket to DONE.
            prutha Prutha Kulkarni (Inactive) made changes -
            Assignee Prutha Kulkarni [ prutha ] Noor Zahara [ noor91zahara ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Resolution Done [ 10000 ]
            Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]

              People

              • Assignee:
                noor91zahara Noor Zahara (Inactive)
                Reporter:
                ann.loraine Ann Loraine
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: