Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change previews for hovering over the monomer in the library and on the canvas #4880

Closed
ljubica-milovic opened this issue Jun 24, 2024 · 1 comment · Fixed by #5160
Closed
Assignees
Labels
feature request Monomer Library Test Cases Written Test cases has been written for that issue

Comments

@ljubica-milovic
Copy link
Collaborator

ljubica-milovic commented Jun 24, 2024

Background

  • Currently, the user can see the same preview when hovering over the monomer in the library and on the canvas, but that preview doesn't contain the atoms within leaving groups/attachment points.
    .
    .
  • There should be a preview when hovering over a monomer in the library. That preview should contain the name, the structure, the atoms contained within the attachment points and the ITD alias if the monomer has one.
  • There should be a preview when hovering over a monomer on the canvas. That preview should contain all of the same information, with occupied attachment point marked in gray (without atoms for leaving group), and IDT aliases for the current position of the monomer.

Requirements

1.1. Preview for hovering over a monomer (not a preset) in the library should appear with a delay of 0,5 seconds.
1.2. The preview should contain:
the name of the monomer,
the structure of the monomer,
the atoms contained within the attachment points,
and if the monomer has an IDT alias, the text "IDT:" followed by:
..........1.2.1. All IDT aliases with position indicators in brackets if the monomer is not defined at all three positions and/or the part of the IDT alias excluding the position indicator ("base") is not the same for for all positions.
...............1.2.1.1. If the "base" is the same for two positions, they should be represented as ([pos1],[pos2])base.
examples for better understanding:
(actual example) Phosphate is defined at positions 5 and 3 -> (5,3)Phos
(actual example) Unsplit nucleotide is defined at all positions (5AmdA, i6diPr, 3AmdA) -> (5,3)AmdA, (i)6diPr
Some monomer is defined at only one position -> (5)base
Some monomer is defined at all positions -> (5)base1, (i)base2, (3)base3
image
..........1.2.2. The base of IDT alias is the monomer is defined at all three positions and the part of the IDT alias excluding the position indicator ("base") is the same for for all positions.
image
.
.
2.1. Preview for hovering over a monomer (not a nucleotide/nuzleozide in sequence mode and not phosphate) on the canvas should appear with a delay of 0,5 seconds.
2.2. The preview should contain:
the name of the monomer,
the structure of the monomer,
and the atoms contained within the attachment points.
.
.
.....2.2.1. If the monomer has an occupied Rn:
attachment point Rn should be gray on structure and bellow,
and should contain no atoms bellow.
.
.
.
.....2.2.2. If the monomer has an occupied R1 and a non occupied R2 (monomer is in the end of the chain):
..........2.2.2.1. If the monomer has an IDT alias for 3' position, show the text "IDT:" followed by the alias for that position (with the position indicator - 3).
..........2.2.2.2. If the monomer doesn't have an IDT alias for 3' position, but does have an IDT alias for internal position, show the text "IDT:" followed the alias for that position (with the position indicator - i).
..........2.2.2.3. If the monomer doesn't have IDT aliases for 3' and i position, don't show any IDT alias on preview.
.
.
.....2.2.3. If the monomer has an occupied R2 and a non occupied R1 (monomer is in the beginning of the chain):
..........2.2.3.1. If the monomer has an IDT alias for 5' position, show the text "IDT:" followed by the alias for that position (with the position indicator - 5).
..........2.2.3.2. If the monomer doesn't have an IDT alias for 5' position, but does have an IDT alias for internal position, show the text "IDT:" followed the alias for that position (with the position indicator - i).
..........2.2.3.3. If the monomer doesn't have IDT aliases for 5' and i position, don't show any IDT alias on preview.
.
.
.....2.2.4. If the monomer has occupied both R1 and R2 (monomer is in the middle of the chain):
..........2.2.4.1. If the monomer has an IDT alias for internal position, show the text "IDT:" followed by the alias for that position (with the position indicator - i).
..........2.2.4.2. If the monomer doesn't have an IDT alias for internal position, but does have an IDT alias for 5' position, show the text "IDT:" followed the alias for that position (with the position indicator - 5).
..........2.2.4.3. If the monomer only has an IDT alias for 3' position, show the text "IDT:" followed the alias for that position (with the position indicator - 3).
.
.
.....2.2.5. If the monomer doesn't have occupied R1 and R2 (monomer is the only one in the chain):
..........2.2.5.1. If the monomer has and IDT alias for 5' position, show the text "IDT:" followed by the alias for that position (with the position indicator - 5).
..........2.2.5.2. If the monomer doesn't have an IDT alias for 5' position, but does have an IDT alias for internal position, show the text "IDT:" followed by the alias for that position (with the position indicator - i).
..........2.2.5.3. If the monomer doesn't have aliases for 5' and i positions, but does have an IDT alias for 3' position, show the text "IDT:" followed the alias for that position (with the position indicator - 3).
.
.
(Image for better understanding)
image
.
.
image
image
.
.
3.1. Preview for hovering over a preset in the library or on the canvas in sequence mode should appear with the delay of 0,5 seconds.
3.2. IDT aliases show on previews for all current presets (Ketcher version 2.23.0)
.....3.2.1. For A in the library and on the canvas in sequence mode: rA,
.....3.2.2. For C in the library and on the canvas in sequence mode: rC,
.....3.2.3. For G in the library and on the canvas in sequence mode: rG,
.....3.2.4. For T in the library and on the canvas in sequence mode: rT,
.....3.2.5. For U in the library and on the canvas in sequence mode: rU,
.....3.2.6. For MOE(A)P in the library: 52MOErA and i2MOErA,
in sequence mode, first symbol: 52MOErA,
in sequence mode, middle symbol: i2MOErA,
in sequence mode, last symbol: 32MOErA.
.....3.2.7. For MOE(5meC)P in the library: 52MOErC and i2MOErC,
in sequence mode, first symbol: 52MOErC,
in sequence mode, middle symbol: i2MOErC,
in sequence mode, last symbol: 32MOErC.
.....3.2.8. For MOE(G)P in the library: 52MOErG and i2MOErG,
in sequence mode, first symbol: 52MOErG,
in sequence mode, middle symbol: i2MOErG,
in sequence mode, last symbol: 32MOErG.
.....3.2.9. For MOE(T)P in the library: 52MOErT and i2MOErT,
in sequence mode, first symbol: 52MOErT,
in sequence mode, middle symbol: i2MOErT,
in sequence mode, last symbol: 32MOErT.
.....3.2.10. For dR(U)P in the library and on the canvas in sequence mode: U.
.
.
4.1. Hovering over a phosphate in the canvas (including sequence mode) should appear with a delay of 0,5 seconds.
4.2. The preview for phosphate differs form other non-preset previews on canvas only in IDT alias:
.....4.2.1. If the phosphate is the only monomer in the chain, the alias should be: 5Phos,
.....4.2.2. If the phosphate is the first monomer in the chain the alias should be: 5Phos,
.....4.2.3. If the phosphate is the last monomer in the chain, but the second to last is not a sugar/nucleozide, the alias should be: 3Phos.
.....4.2.4. All other cases (phosphate in the middle of the chain and sugar/nucleozide then phosphate as the last monomer in the chain), no IDT alias on preview for phosphate.
(Image for better understanding)
image
.
.
5.1 Preview of rna preset should contain the name of preset instead of name of rna base(current implementation)

@ljubica-milovic ljubica-milovic added this to the Ketcher 2.24.0-rc.1 milestone Jun 24, 2024
@ljubica-milovic ljubica-milovic changed the title Change and add monomer previews in different circumstances Change previews for hovering over the monomer in the library and on the canvas Jun 25, 2024
@ljubica-milovic ljubica-milovic removed the Micromolecules canvas Bucket: Micromolecules canvas related issues label Jun 26, 2024
@svvald svvald self-assigned this Jul 8, 2024
@AlexeyGirin AlexeyGirin added the Test Cases Written Test cases has been written for that issue label Jul 8, 2024
@svvald svvald added the draft label Jul 15, 2024
svvald added a commit that referenced this issue Jul 16, 2024
svvald added a commit that referenced this issue Jul 24, 2024
svvald added a commit that referenced this issue Jul 30, 2024
svvald added a commit that referenced this issue Jul 30, 2024
svvald added a commit that referenced this issue Jul 31, 2024
svvald added a commit that referenced this issue Jul 31, 2024
svvald added a commit that referenced this issue Jul 31, 2024
svvald added a commit that referenced this issue Jul 31, 2024
svvald added a commit that referenced this issue Jul 31, 2024
@rrodionov91 rrodionov91 added this to the Ketcher 2.25.0-rc.1 milestone Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 pushed a commit that referenced this issue Aug 6, 2024
rrodionov91 added a commit that referenced this issue Aug 6, 2024
…equence mode, increase debounce time (#5160)

- added changes according new requirements for IDT aliases
- added util function to add H to O leaving group
- fixed idt aliases in preview for unresolved monomers
- updated screenshots

---------

Co-authored-by: Roman Rodionov <roman_rodionov@epam.com>
@Zhirnoff
Copy link
Collaborator

Zhirnoff commented Aug 7, 2024

Tested.

2024-08-07_12h52_56
2024-08-07_12h53_04

Desktop:

  • OS: Windows 11
  • Browser Chrome
  • Version 124.0.6367.79 (Official Build) (64-bit)

Ketcher version
[Version 2.24.0-rc.1]
Indigo version
[Version 1.23.0-rc.1]

@github-project-automation github-project-automation bot moved this to Done in Ketcher Aug 27, 2024
Guch1g0v pushed a commit that referenced this issue Oct 17, 2024
…equence mode, increase debounce time (#5160)

- added changes according new requirements for IDT aliases
- added util function to add H to O leaving group
- fixed idt aliases in preview for unresolved monomers
- updated screenshots

---------

Co-authored-by: Roman Rodionov <roman_rodionov@epam.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Monomer Library Test Cases Written Test cases has been written for that issue
Projects
Status: Done
5 participants