Should Avogadro adjust hydrogens if new bond is drawn between existing atoms?

Should Avogadro adjust hydrogens if new bond is drawn between existing atoms?


Regards,
Konstantin

Should Avogadro adjust hydrogens if new bond is drawn between existing atoms?

Of course.

If you want to add some sort of modifier (e.g., “shift-key drag = no adjust hydrogens”) that’s fine. But the current behavior is desired by most of the users I’ve tested. It’s why the “adjust hydrogens” is an option and easy to change.

-Geoff

05.11.2010, 17:38, “Geoffrey Hutchison” geoff.hutchison@gmail.com:

Should Avogadro adjust hydrogens if new bond is drawn between existing atoms?

Of course.

If you want to add some sort of modifier (e.g., “shift-key drag = no adjust hydrogens”) that’s fine. But the current behavior is desired by most of the users I’ve tested. It’s why the “adjust hydrogens” is an option and easy to change.

No, I just want to fix
https://sourceforge.net/tracker/?func=detail&aid=3091185&group_id=165310&atid=835077

I’ve already found solutions for similar cases when adjustment was done for H atoms, but
this case is different. When bond is drawn, all bonds are re-created, and after undo pointer to
bond which was actually drawn becomes invalid


Regards,
Konstantin

On Nov 5, 2010, at 10:51 AM, Konstantin Tokarev wrote:

I’ve already found solutions for similar cases when adjustment was done for H atoms, but
this case is different. When bond is drawn, all bonds are re-created, and after undo pointer to
bond which was actually drawn becomes invalid

That’s weird. There’s supposed to be a special case in the draw tool to detect a bond drawn to a hydrogen atom – for this use case.

I’d make sure the drawtool.cpp code is working right. It should realize that one or both atoms are hydrogen and not adjust the valence.

Thanks,
-Geoff

06.11.2010, 05:18, “Geoffrey Hutchison” :

On Nov 5, 2010, at 10:51 AM, Konstantin Tokarev wrote:

I’ve already found solutions for similar cases when adjustment was done for H atoms, but
this case is different. When bond is drawn, all bonds are re-created, and after undo pointer to
bond which was actually drawn becomes invalid

That’s weird. There’s supposed to be a special case in the draw tool to detect a bond drawn to a hydrogen atom – for this use case.

Right, there is a special case for drawing from H atom. However, it also crashes if bond is drawn from H to O :slight_smile:


Regards,
Konstantin

On Nov 8, 2010, at 9:17 AM, Konstantin Tokarev wrote:

Right, there is a special case for drawing from H atom. However, it also crashes if bond is drawn from H to O :slight_smile:

So that should be an easy patch, right? :slight_smile:

Cheers,
-Geoff

09.11.2010, 04:26, “Geoffrey Hutchison” geoff.hutchison@gmail.com:

On Nov 8, 2010, at 9:17 AM, Konstantin Tokarev wrote:

Right, there is a special case for drawing from H atom. However, it also crashes if bond is drawn from H to O :slight_smile:

So that should be an easy patch, right? :slight_smile:

I don’t think so. I see nothing of “special cases” in drawtool.cpp is actually
working, and only direct intervention like I did in patch submitted to Gerrit
(sorry, I cannot give a link or number because Gerrit is down currently; it’s
submitted to 1.0 branch).

I’m interested in your opinion about that patch. Doing the same way, I can block
adjustment of hydrogens on both bond atoms when one of them is H, but it
will modify program logic more seriously


Regards,
Konstantin

09.11.2010, 10:35, “Konstantin Tokarev” annulen@yandex.ru:

09.11.2010, 04:26, “Geoffrey Hutchison” geoff.hutchison@gmail.com;:

On Nov 8, 2010, at 9:17 AM, Konstantin Tokarev wrote:

Right, there is a special case for drawing from H atom. However, it also crashes if bond is drawn from H to O :slight_smile:
So that should be an easy patch, right? :slight_smile:

I don’t think so. I see nothing of “special cases” in drawtool.cpp is actually
working, and only direct intervention like I did in patch submitted to Gerrit
(sorry, I cannot give a link or number because Gerrit is down currently; it’s
submitted to 1.0 branch).

Gerrit is back, so here is a link:
http://review.avogadro.openmolecules.net:8080/#change,248


Regards,
Konstantin