Code Monkey home page Code Monkey logo

version3-1's Introduction

Introduction

This project is Version 3.1 of the Chemistry for Word Add-In

This version is now obsolete, please use V3.2

Code of Conduct

This project has adopted the code of conduct defined by the Contributor Covenant to clarify expected behavior in our community.
For more information see the .NET Foundation Code of Conduct.

Getting Started

  1. Installation process see $/docs/Chem4Word-Version3-1-Developer-SetUp.docx
  2. Software dependencies Office 2010/2013/2016/2019/365 (Installed on Desktop)
  3. Latest releases

Build and Test

The Chemistry for Word Add-in (Chem4Word) is contained within a single Visual Studio solution located at src/Chem4Word.V3-1.sln This solution has two main projects (use Set as Start Up then run the project), from time to time there may be other utility or PoC projects.

  1. Chem4Word.V3 is the Add-In
  2. WinForms.TestHarness this allows testing of a the Editing subset of operations without starting MS Word

All unit tests are written with XUnit

List of NuGet packages

Package Version Licence
DocumentFormat.OpenXml 2.11.3 MIT
EntityFramework 6 6.4.4 Apache-2.0
Jacobslusser.ScintillaNET 3.6.3 MIT
Microsoft.Azure.KeyVault.Core 3.0.5 MIT
Microsoft.Azure.Services.AppAuthentication 1.5.0 MIT
Microsoft.IdentityModel.Clients.ActiveDirectory 5.2.8 MIT
Microsoft.IdentityModel.JsonWebTokens 6.7.1 MIT
Microsoft.IdentityModel.Logging 6.7.1 MIT
Microsoft.IdentityModel.Tokens 6.7.1 MIT
Microsoft.Rest.ClientRuntime.Azure 3.3.19 MIT
Microsoft.Rest.ClientRuntime 2.3.21 MIT
Microsoft_VisualStudio_QualityTools_UnitTestFramework.STW 12.0.21005.1 Microsoft ?
Newtonsoft.Json 12.0.3 MIT
Ookii.Dialogs.WindowsForms 1.0.0 Public Domain
System.Buffers 4.5.1 MIT
System.Collections.Immutable 1.7.1 MIT
System.Data.SQLite.Core 1.0.113.1 Public Domain
System.Data.SQLite.EF6 1.0.113.1 Public Domain
System.Data.SQLite.Linq 1.0.113.1 Public Domain
System.Data.SQLite 1.0.113.1 Public Domain
System.IO.FileSystem.Primitives 4.3.0 MS-.NET-Library License
System.IO.Packaging 4.7.0 MIT
System.IdentityModel.Tokens.Jwt 6.7.1 MIT
System.Memory 4.5.3 MIT
System.Net.Http 4.3.4 MS-.NET-Library License
System.Numerics.Vectors 4.5.0 MIT
System.Runtime.CompilerServices.Unsafe 4.7.0 MIT
System.Security.Cryptography.Algorithms 4.3.1 MS-.NET-Library License
System.Security.Cryptography.Encoding 4.3.0 MS-.NET-Library License
System.Security.Cryptography.Primitives 4.3.0 MS-.NET-Library License
System.Security.Cryptography.X509Certificates 4.3.2 MS-.NET-Library License
System.ValueTuple 4.5.0 MIT
System.Windows.Interactivity.WPF 2.0.20525 Inherits from MS Expression Blend 4 ??
Unofficial.Ionic.Zip 1.9.1.8 Unknown ?
WindowsAzure.ServiceBus 6.0.2 MS-.NET-Library License
xunit.abstractions 2.0.3 Apache-2.0
xunit.analyzers 0.10.0 Apache-2.0
xunit.assert 2.4.1 Apache-2.0
xunit.core 2.4.1 Apache-2.0
xunit.extensibility.core 2.4.1 Apache-2.0
xunit.extensibility.execution 2.4.1 Apache-2.0
xunit.runner.console 2.4.1 Apache-2.0
xunit.runner.visualstudio 2.4.2 Apache-2.0
xunit 2.4.1 Apache-2.0

Acknowledgements

  1. CEVOpen - This data represents about 2100 unique chemical names of volatile plant chemicals (essential oils) from the EssoilDB 1.0 database (compiled from the scientific literature over about 10 years in Dr Yadav's laboratory). They are made available for re-use by anyone for any purpose (CC0). We would appreciate acknowledgement of EssoilDB and the following people who extracted and cleaned the data during 2019. (Gitanjali Yadav, Ambarish Kumar, Peter Murray-Rust).

Contribute

Please feel free to contribute to the project. Create your own branch, make your changes then create a Pull Request to initiate a merge into the master branch.

.NET Foundation

This project is supported by the .NET Foundation.

version3-1's People

Contributors

deadlyvices avatar dependabot[bot] avatar jat45 avatar mikewilliams-uk avatar wydna avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

version3-1's Issues

Shortcut key does not work in certain situation

Describe the bug
Shortcut key does not work on certain situation

To Reproduce
Steps to reproduce the behavior:

  1. Open a new document
  2. Draw a new structure, for example
    image
  3. ctrl+z, nothing happened.
  4. select "delete" button, ctrl+z
    image
  5. select "draw" button, draw whatever structure, ctrl+z now works as expected.

Side note: could you add ctrl+d for deselection?

Expected behavior
ctrl+z should work when whatever button is selected.

Desktop (please complete the following information):
Chem4Word 2020 Beta 5 - [3.1.5.7336]
Operating System: Microsoft Windows 10 Pro for Workstations 64bit [10.0.19041.0] en-GB
Word Product: Microsoft Office 365 Professional Plus 64bit [16.0.12430.20184]
.Net Framework Runtime: .NET 4.8 [528372]

Error when inserting chemistry from the navigator

Describe the bug
The user gets an error message when inserting chemistry from the navigator

To Reproduce
Steps to reproduce the behaviour:
Unknown, but telemetry shows that Copy button pressed twice.
As far as I can tell the double click protection of the buttons is working.

Desktop (please complete the following information):

  • OS: Windows 10 Pro for Workstations
  • Word Version O365 Professional Plus 64 bit
Exception in TaskPaneHelper.InsertChemistry()
System.Exception: Error in Insert2DChemistry; See InnerException for details --->
System.Runtime.InteropServices.SEHException: External component has thrown an exception.
   at Microsoft.Office.Core.CustomXMLPartsClass.Add(String XML, Object SchemaCollection)
   at Chem4Word.Helpers.ChemistryHelper.Insert2DChemistry(Document doc, String cml, Boolean isCopy) in C:\Dev\vsts\Chem4Word\Version3-1\src\Chem4Word.V3\Helpers\ChemistryHelper.cs:line 90
   --- End of inner exception stack trace ---
   at Chem4Word.Helpers.ChemistryHelper.Insert2DChemistry(Document doc, String cml, Boolean isCopy) in C:\Dev\vsts\Chem4Word\Version3-1\src\Chem4Word.V3\Helpers\ChemistryHelper.cs:line 109
   at Chem4Word.Helpers.TaskPaneHelper.InsertChemistry(Boolean isCopy, Application app, Display display, Boolean fromLibrary) in C:\Dev\vsts\Chem4Word\Version3-1\src\Chem4Word.V3\Helpers\TaskPaneHelper.cs:line 80

Strange rendering of Functional Groups

I tried to draw this
image
But I get this
image
A video has been made for your reference. https://youtu.be/jNpb6hgyZFI

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
    <cml:atomArray>
      <cml:atom id="a1" elementType="C" x2="482.6795" y2="395" />
      <cml:atom id="a2" elementType="C" x2="482.6795" y2="375" />
      <cml:atom id="a3" elementType="C" x2="500" y2="365" />
      <cml:atom id="a4" elementType="C" x2="517.3205" y2="375" />
      <cml:atom id="a5" elementType="C" x2="517.3205" y2="395" />
      <cml:atom id="a6" elementType="C" x2="500" y2="405" />
      <cml:atom id="a7" elementType="O" x2="500" y2="345" />
      <cml:atom id="a8" elementType="C" x2="527.3205" y2="357.6795" />
      <cml:atom id="a9" elementType="CO2H" x2="537.3205" y2="375" />
      <cml:atom id="a10" elementType="C" x2="577.3205" y2="375" />
      <cml:atom id="a11" elementType="C" x2="617.3205" y2="375" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a1 a2" order="S" />
      <cml:bond id="b2" atomRefs2="a2 a3" order="S" />
      <cml:bond id="b3" atomRefs2="a3 a4" order="S" />
      <cml:bond id="b4" atomRefs2="a4 a5" order="S" />
      <cml:bond id="b5" atomRefs2="a5 a6" order="S" />
      <cml:bond id="b6" atomRefs2="a6 a1" order="S" />
      <cml:bond id="b7" atomRefs2="a3 a7" order="D" />
      <cml:bond id="b8" atomRefs2="a4 a8" order="S" />
      <cml:bond id="b9" atomRefs2="a9 a4" order="S" />
      <cml:bond id="b10" atomRefs2="a9 a10" order="S" />
      <cml:bond id="b11" atomRefs2="a10 a11" order="S" />
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Originally posted by @tomyan112 in #33 (comment)

Error occurs when I change the function group CH₂ to connect with double bond

Describe the bug
A clear and concise description [in English] of what the bug is.

To Reproduce
Steps to reproduce the behavior:
image
image
image
Then error occur

Expected behavior
A clear and concise description [in English] of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. Windows 7/8.1/10 Home/Professional]
  • Word Version [e.g. 2016/O365/2019 Home/Business/Professional]
  • Please also gather system information from "Help" --> "System Info" in Chem4Word Ribbon

Additional context
Add any other context about the problem here.

New label not available for immediate display in document

Describe the bug
When a user adds a new label to a molecule, that label isn't available from the Show As button in the ribbon.

To Reproduce
Add a molecule to a document
Click the Edit Labels button
Add a new label, click OK
Click Show As button

New label isn't available in this list

UPDATE: Added user label doesn't become available even if you save the document and open it again!

Expected behavior
I expected the label to be available in the list

System Info
Chem4Word 2020 Beta 11 - [3.1.11.7495]

Installation Id: 09312673-5ee5-4cce-bfbb-a2e8e87dee30
Operating System: Microsoft Windows 10 Enterprise 64bit [10.0.19041.0] en-GB
Word Product: Microsoft Office 365 Business 32bit [16.0.13029.20308]
Internet Explorer Version: 11.0.19041.388
.Net Framework Runtime: .NET 4.8 [528372]

Wedged bonds do not fuse nicely

Describe the bug
image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <cml:molecule id="m1">
    <cml:atomArray>
      <cml:atom id="a1" elementType="C" x2="320.8494" y2="379.25" />
      <cml:atom id="a2" elementType="C" x2="320.8494" y2="354.25" />
      <cml:atom id="a3" elementType="C" x2="342.5" y2="341.75" />
      <cml:atom id="a4" elementType="C" x2="364.1506" y2="354.25" />
      <cml:atom id="a5" elementType="C" x2="364.1506" y2="379.25" />
      <cml:atom id="a6" elementType="C" x2="342.5" y2="391.75" />
      <cml:atom id="a7" elementType="C" x2="344.9975" y2="360.7205" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a1 a2" order="S" />
      <cml:bond id="b2" atomRefs2="a2 a3" order="S" />
      <cml:bond id="b3" atomRefs2="a3 a4" order="D" />
      <cml:bond id="b4" atomRefs2="a4 a5" order="S" />
      <cml:bond id="b5" atomRefs2="a5 a6" order="S" />
      <cml:bond id="b6" atomRefs2="a6 a1" order="D" />
      <cml:bond id="b7" atomRefs2="a2 a7" order="S">
        <cml:bondStereo atomRefs2="a2 a7">W</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b8" atomRefs2="a5 a7" order="S">
        <cml:bondStereo atomRefs2="a5 a7">W</cml:bondStereo>
      </cml:bond>
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Expected behavior
From page 5 of this paper, doi:10.1002/poc.3121
image

in chemdraw
image

Edited to render cml as code

"Draw" option greyed out

Describe the bug
"Draw" option greyed out

Screenshots
image

Desktop (please complete the following information):

  • OS: Windows 10 Professional
  • Word Version O365 version 1912 build 12325.20288

Version
CHEM4Word 2020 Beta 2

Incorrect valency

image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <c4w:customXmlPartGuid>cf188ff717bf42788c582874a02c4602</c4w:customXmlPartGuid>
  <cml:molecule id="m1">
    <cml:formula id="m1.f0" concise="C 10 H 18 Mg 1 Br 1" />
    <cml:formula id="m1.f1" convention="chem4word:ResolvedFormula" inline="Not requested" concise="C 10 H 18 Mg 1 Br 1" />
    <cml:formula id="m1.f2" convention="chem4word:ResolvedSmiles" inline="Not requested" concise="C 10 H 18 Mg 1 Br 1" />
    <cml:name id="m1.n1" dictRef="chem4word:CalculatedInchi">Unable to calculate</cml:name>
    <cml:name id="m1.n2" dictRef="chem4word:CalculatedAuxInfo">Unable to calculate</cml:name>
    <cml:name id="m1.n3" dictRef="chem4word:CalculatedInchikey">Unable to calculate</cml:name>
    <cml:name id="m1.n4" dictRef="chem4word:ResolvedIupacname">Not requested</cml:name>
    <cml:atomArray>
      <cml:atom id="a1" elementType="Mg" x2="433.3734" y2="368.75" />
      <cml:atom id="a2" elementType="Br" x2="458.3734" y2="368.75" />
      <cml:atom id="a3" elementType="C" x2="480.024" y2="381.25" />
      <cml:atom id="a4" elementType="C" x2="501.6747" y2="368.75" />
      <cml:atom id="a5" elementType="C" x2="523.3253" y2="381.25" />
      <cml:atom id="a6" elementType="C" x2="544.9759" y2="368.75" />
      <cml:atom id="a7" elementType="Ph" x2="566.6266" y2="381.25" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a2 a3" order="S" />
      <cml:bond id="b2" atomRefs2="a3 a4" order="S" />
      <cml:bond id="b3" atomRefs2="a4 a5" order="S" />
      <cml:bond id="b4" atomRefs2="a5 a6" order="S" />
      <cml:bond id="b5" atomRefs2="a6 a7" order="S" />
      <cml:bond id="b6" atomRefs2="a2 a1" order="S" />
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Edit: Added xml markdown to make data clearer

Bundling of the Essential Oil structures with Chem4Word

When we release Chem4Word we bundle a standard library with it, for illustrative purposes. I was wondering if there would be any objections to our using the 2100 structure library we have generated as part of the CEVOpen project. The structures are very nice indeed and show off our custom display component brilliantly.
If it isn't OK then please let me know.
MAW: Editied to add link to CEVOpen

Shift-Click to flip shortcut not working

Describe the bug
shift-click to flip shortcut not working

To Reproduce
Steps to reproduce the behavior:

  1. use selection tool to select the molecule
  2. Shift-Click the molecule
  3. Nothing happened.

Another thing: The shortcut for both mirror-vertical and mirror-horizontal is shift-click?

double bond not touching the ring

image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <c4w:customXmlPartGuid>8dec251e3b0f48538ab44e05fdab6a17</c4w:customXmlPartGuid>
  <cml:molecule id="m1">
    <cml:formula id="m1.f0" concise="C 16 H 23 N 7 O 2" />
    <cml:formula id="m1.f1" convention="chem4word:ResolvedFormula" inline="Not requested" concise="C 16 H 23 N 7 O 2" />
    <cml:formula id="m1.f2" convention="chem4word:ResolvedSmiles" inline="Not requested" concise="C 16 H 23 N 7 O 2" />
    <cml:name id="m1.n1" dictRef="chem4word:CalculatedInchi">Unable to calculate</cml:name>
    <cml:name id="m1.n2" dictRef="chem4word:CalculatedAuxInfo">Unable to calculate</cml:name>
    <cml:name id="m1.n3" dictRef="chem4word:CalculatedInchikey">Unable to calculate</cml:name>
    <cml:name id="m1.n4" dictRef="chem4word:ResolvedIupacname">Not requested</cml:name>
    <cml:atomArray>
      <cml:atom id="a1" elementType="N" x2="586.6011" y2="397.7618" />
      <cml:atom id="a2" elementType="C" x2="598.1011" y2="377.8433" />
      <cml:atom id="a3" elementType="C" x2="563.6011" y2="397.7618" />
      <cml:atom id="a4" elementType="C" x2="586.6011" y2="357.9247" />
      <cml:atom id="a5" elementType="N" x2="552.1011" y2="377.8433" />
      <cml:atom id="a6" elementType="O" x2="551.101" y2="419.4125" />
      <cml:atom id="a7" elementType="C" x2="563.6011" y2="357.9247" />
      <cml:atom id="a8" elementType="C" x2="599.101" y2="336.2741" />
      <cml:atom id="a9" elementType="H" x2="529.1011" y2="377.8433" />
      <cml:atom id="a10" elementType="O" x2="552.1011" y2="338.0061" />
      <cml:atom id="a11" elementType="N" x2="483.1011" y2="377.8433" />
      <cml:atom id="a12" elementType="H" x2="506.1011" y2="338.0061" />
      <cml:atom id="a13" elementType="C" x2="471.6011" y2="397.7618" />
      <cml:atom id="a14" elementType="C" x2="471.6011" y2="357.9247" />
      <cml:atom id="a15" elementType="N" x2="483.1011" y2="338.0061" />
      <cml:atom id="a16" elementType="N" x2="448.6011" y2="397.7618" />
      <cml:atom id="a17" elementType="C" x2="448.6011" y2="357.9247" />
      <cml:atom id="a18" elementType="H" x2="471.6011" y2="318.0875" />
      <cml:atom id="a19" elementType="C" x2="437.1011" y2="377.8433" />
      <cml:atom id="a20" elementType="N" x2="433.2111" y2="340.8324" />
      <cml:atom id="a21" elementType="N" x2="414.6037" y2="373.0613" />
      <cml:atom id="a22" elementType="C" x2="412.1996" y2="350.1873" />
      <cml:atom id="a23" elementType="C" x2="396.926" y2="390.739" />
      <cml:atom id="a24" elementType="C" x2="379.2483" y2="373.0613" c4w:explicit="false" />
      <cml:atom id="a25" elementType="C" x2="414.6037" y2="408.4167" c4w:explicit="false" />
      <cml:atom id="a26" elementType="C" x2="599.101" y2="419.4125" />
      <cml:atom id="a27" elementType="C" x2="577.4504" y2="431.9125" c4w:explicit="false" />
      <cml:atom id="a28" elementType="C" x2="620.7517" y2="406.9125" c4w:explicit="false" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a2 a1" order="S" />
      <cml:bond id="b2" atomRefs2="a1 a3" order="S" />
      <cml:bond id="b3" atomRefs2="a4 a2" order="D" />
      <cml:bond id="b4" atomRefs2="a3 a5" order="S" />
      <cml:bond id="b5" atomRefs2="a3 a6" order="D" />
      <cml:bond id="b6" atomRefs2="a7 a4" order="S" />
      <cml:bond id="b7" atomRefs2="a4 a8" order="S" />
      <cml:bond id="b8" atomRefs2="a9 a5" order="S" />
      <cml:bond id="b9" atomRefs2="a5 a7" order="S" />
      <cml:bond id="b10" atomRefs2="a10 a7" order="D" />
      <cml:bond id="b11" atomRefs2="a11 a9" order="partial01" />
      <cml:bond id="b12" atomRefs2="a12 a10" order="partial01" />
      <cml:bond id="b13" atomRefs2="a11 a13" order="S" />
      <cml:bond id="b14" atomRefs2="a14 a11" order="D" />
      <cml:bond id="b15" atomRefs2="a15 a12" order="S" />
      <cml:bond id="b16" atomRefs2="a13 a16" order="D" />
      <cml:bond id="b17" atomRefs2="a17 a14" order="S" />
      <cml:bond id="b18" atomRefs2="a14 a15" order="S" />
      <cml:bond id="b19" atomRefs2="a15 a18" order="S" />
      <cml:bond id="b20" atomRefs2="a16 a19" order="S" />
      <cml:bond id="b21" atomRefs2="a19 a17" order="D" />
      <cml:bond id="b22" atomRefs2="a20 a17" order="S" />
      <cml:bond id="b23" atomRefs2="a19 a21" order="S" />
      <cml:bond id="b24" atomRefs2="a22 a20" order="D" />
      <cml:bond id="b25" atomRefs2="a21 a22" order="S" />
      <cml:bond id="b26" atomRefs2="a21 a23" order="S" />
      <cml:bond id="b27" atomRefs2="a23 a24" order="S">
        <cml:bondStereo atomRefs2="a23 a24">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b28" atomRefs2="a23 a25" order="S">
        <cml:bondStereo atomRefs2="a23 a25">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b29" atomRefs2="a1 a26" order="S" />
      <cml:bond id="b30" atomRefs2="a26 a27" order="S">
        <cml:bondStereo atomRefs2="a26 a27">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b31" atomRefs2="a26 a28" order="S">
        <cml:bondStereo atomRefs2="a26 a28">S</cml:bondStereo>
      </cml:bond>
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <c4w:customXmlPartGuid>69a35b9cf2e34702a420456f7e9bca10</c4w:customXmlPartGuid>
  <cml:molecule id="m1">
    <cml:formula id="m1.f0" concise="C 14 H 21 N 9 O 2" />
    <cml:formula id="m1.f1" convention="chem4word:ResolvedFormula" inline="Not requested" concise="C 14 H 21 N 9 O 2" />
    <cml:formula id="m1.f2" convention="chem4word:ResolvedSmiles" inline="Not requested" concise="C 14 H 21 N 9 O 2" />
    <cml:name id="m1.n1" dictRef="chem4word:CalculatedInchi">Unable to calculate</cml:name>
    <cml:name id="m1.n2" dictRef="chem4word:CalculatedAuxInfo">Unable to calculate</cml:name>
    <cml:name id="m1.n3" dictRef="chem4word:CalculatedInchikey">Unable to calculate</cml:name>
    <cml:name id="m1.n4" dictRef="chem4word:ResolvedIupacname">Not requested</cml:name>
    <cml:atomArray>
      <cml:atom id="a1" elementType="H" x2="452.5" y2="316.75" />
      <cml:atom id="a2" elementType="N" x2="432.5" y2="316.75" />
      <cml:atom id="a3" elementType="C" x2="422.5" y2="334.0705" />
      <cml:atom id="a4" elementType="C" x2="422.5" y2="299.4295" />
      <cml:atom id="a5" elementType="N" x2="402.5" y2="334.0705" />
      <cml:atom id="a6" elementType="N" x2="432.5" y2="351.391" />
      <cml:atom id="a7" elementType="C" x2="402.5" y2="299.4295" />
      <cml:atom id="a8" elementType="O" x2="432.5" y2="282.109" />
      <cml:atom id="a9" elementType="C" x2="392.5" y2="316.75" />
      <cml:atom id="a10" elementType="H" x2="452.5" y2="351.391" />
      <cml:atom id="a11" elementType="H" x2="422.5" y2="368.7115" />
      <cml:atom id="a12" elementType="N" x2="389.1174" y2="284.5666" />
      <cml:atom id="a13" elementType="C" x2="532.5" y2="351.391" />
      <cml:atom id="a14" elementType="N" x2="372.937" y2="312.5918" />
      <cml:atom id="a15" elementType="C" x2="370.8465" y2="292.7013" />
      <cml:atom id="a16" elementType="H" x2="472.5" y2="282.109" />
      <cml:atom id="a17" elementType="N" x2="355.6165" y2="322.5918" />
      <cml:atom id="a18" elementType="C" x2="341.4744" y2="308.4496" c4w:explicit="false" />
      <cml:atom id="a19" elementType="C" x2="369.7587" y2="336.7339" c4w:explicit="false" />
      <cml:atom id="a20" elementType="N" x2="492.5" y2="316.75" />
      <cml:atom id="a21" elementType="C" x2="502.5" y2="299.4295" />
      <cml:atom id="a22" elementType="C" x2="502.5" y2="334.0705" />
      <cml:atom id="a23" elementType="C" x2="522.5" y2="299.4295" />
      <cml:atom id="a24" elementType="N" x2="522.5" y2="334.0705" />
      <cml:atom id="a25" elementType="O" x2="492.5" y2="351.391" />
      <cml:atom id="a26" elementType="C" x2="532.5" y2="316.75" />
      <cml:atom id="a27" elementType="N" x2="492.5" y2="282.109" />
      <cml:atom id="a28" elementType="H" x2="502.5" y2="264.7885" />
      <cml:atom id="a29" elementType="C" x2="515.1795" y2="361.391" c4w:explicit="false" />
      <cml:atom id="a30" elementType="C" x2="549.8205" y2="341.391" c4w:explicit="false" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a2 a1" order="S" />
      <cml:bond id="b2" atomRefs2="a2 a3" order="S" />
      <cml:bond id="b3" atomRefs2="a4 a2" order="S" />
      <cml:bond id="b4" atomRefs2="a3 a5" order="D" />
      <cml:bond id="b5" atomRefs2="a3 a6" order="S" />
      <cml:bond id="b6" atomRefs2="a7 a4" order="S" />
      <cml:bond id="b7" atomRefs2="a4 a8" order="D" />
      <cml:bond id="b8" atomRefs2="a5 a9" order="S" />
      <cml:bond id="b9" atomRefs2="a6 a10" order="S" />
      <cml:bond id="b10" atomRefs2="a6 a11" order="S" />
      <cml:bond id="b11" atomRefs2="a9 a7" order="D" />
      <cml:bond id="b12" atomRefs2="a12 a7" order="S" />
      <cml:bond id="b13" atomRefs2="a9 a14" order="S" />
      <cml:bond id="b14" atomRefs2="a15 a12" order="D" />
      <cml:bond id="b15" atomRefs2="a14 a15" order="S" />
      <cml:bond id="b16" atomRefs2="a14 a17" order="S" />
      <cml:bond id="b17" atomRefs2="a17 a18" order="S">
        <cml:bondStereo atomRefs2="a17 a18">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b18" atomRefs2="a17 a19" order="S">
        <cml:bondStereo atomRefs2="a17 a19">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b19" atomRefs2="a20 a21" order="D" />
      <cml:bond id="b20" atomRefs2="a22 a20" order="S" />
      <cml:bond id="b21" atomRefs2="a21 a23" order="S" />
      <cml:bond id="b22" atomRefs2="a24 a22" order="S" />
      <cml:bond id="b23" atomRefs2="a22 a25" order="D" />
      <cml:bond id="b24" atomRefs2="a23 a26" order="D" />
      <cml:bond id="b25" atomRefs2="a26 a24" order="S" />
      <cml:bond id="b26" atomRefs2="a1 a20" order="partial01" />
      <cml:bond id="b27" atomRefs2="a10 a25" order="partial01" />
      <cml:bond id="b28" atomRefs2="a21 a27" order="S" />
      <cml:bond id="b29" atomRefs2="a16 a27" order="S" />
      <cml:bond id="b30" atomRefs2="a27 a28" order="S" />
      <cml:bond id="b31" atomRefs2="a8 a16" order="partial01" />
      <cml:bond id="b32" atomRefs2="a24 a13" order="S" />
      <cml:bond id="b33" atomRefs2="a13 a29" order="S">
        <cml:bondStereo atomRefs2="a13 a29">S</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b34" atomRefs2="a13 a30" order="S">
        <cml:bondStereo atomRefs2="a13 a30">S</cml:bondStereo>
      </cml:bond>
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Drawing of Markush Bond

*Dear Team,

Thank you for sending me the link to Chem4Word Beta Version 3.1.

I have drawn the following structure:
image

I would like to draw a bond from the R4 “atom” to the center of the six-membered ring, to indicate that the R4 group could be placed in any position on the ring (Markush bond?). When I try to do this, Chem4Word places a methyl group at the end of the bond in the center of the six-membered ring. Can Chem4Word draw a bond without placing an atom at the end of the bond? Alternatively, can Chem4Word remove the display of terminal carbon atoms?
I would appreciate any information you could give me. Thank you.
Suzanne R. Harvey

Is your feature request related to a problem? Please describe.*

A clear and concise description [in English] of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd likeI would like to be able to draw a bond from an atom with no atom at the other end of the bond.

A clear and concise description [in English] of what you want to happen.

Describe alternatives you've consideredI have drawn most of the structure in Chem4Word, used the Snipping Tool to move it into another Word document and then draw the one line (bond) I need between the R group and the center of the ring.

A clear and concise description [in English] of any alternative solutions or features you've considered. If Chem4Word could turn off the display of terminal carbons, that would solve my problem.

Additional context

Add any other context or screenshots about the feature request here.

Edited to remove user's email address.

Cancel button not working

To Reproduce

  1. Draw something
    image

  2. Double click to edit and click ok
    image

  3. click cancel button at bottom right corner
    image

image

Expected behavior
It should not have render the structure

Desktop (please complete the following information):
Operating System: Microsoft Windows 10 Pro for Workstations 64bit [10.0.19041.0] en-GB
Word Product: Microsoft Office 365 Professional Plus 64bit [16.0.12624.20442]
Internet Explorer Version: 11.0.19041.153
.Net Framework Runtime: .NET 4.8 [528372]

Explicit carbon off not working

Describe the bug
A clear and concise description [in English] of what the bug is.
image
image

Another example
image

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description [in English] of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. Windows 7/8.1/10 Home/Professional]
  • Word Version [e.g. 2016/O365/2019 Home/Business/Professional]
  • Please also gather system information from "Help" --> "System Info" in Chem4Word Ribbon

Additional context
Add any other context about the problem here.

No response after right click the structure if using the ctrl-a shortcut

Describe the bug
No response after right click the structure if using the ctrl-a shortcut

To Reproduce
Steps to reproduce the behavior:

  1. ctrl-a
  2. Right Click on the structure
  3. Nothing happen

Expected behavior
Molecules Properties should show up

Desktop (please complete the following information):
Chem4Word 2020 Beta 7 - [3.1.7.7370]

Installation Id: 89f538e4-da23-4cd1-8786-e529e10f7c19
Operating System: Microsoft Windows 10 Pro for Workstations 64bit [10.0.19041.0] en-GB
Word Product: Microsoft Office 365 Professional Plus 64bit [16.0.12624.20296]
Internet Explorer Version: 11.0.19041.153
.Net Framework Runtime: .NET 4.8 [528372]

Structure's bonds cannot be seen in ACME [Beta-6]

I cannot see the structure when I am trying to edit it.
image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <c4w:customXmlPartGuid>291db9d831f34b3fbf16112b96841054</c4w:customXmlPartGuid>
  <cml:molecule id="m1">
    <cml:formula id="m1.f0" concise="C 16 H 17 O 3 N 2 Ts 1" />
    <cml:formula id="m1.f1" convention="chem4word:ResolvedFormula" inline="Not found" concise="C 16 H 17 O 3 N 2 Ts 1" />
    <cml:formula id="m1.f2" convention="chem4word:ResolvedSmiles" inline="Not found" concise="C 16 H 17 O 3 N 2 Ts 1" />
    <cml:name id="m1.n1" dictRef="chem4word:CalculatedInchi">1S/C16H17N2O3.Ts/c19-8-15(20)10-4-12-11-2-1-3-13-16(11)9(6-17-13)5-14(12)18(21)7-10;/h1-4,6,12,14-15,19-21H,5,7-8H2;/q-1;+1/t12-,14+,15+;/m0./s1</cml:name>
    <cml:name id="m1.n2" dictRef="chem4word:CalculatedAuxInfo">1/0/N:18,14,19,7,15,21,8,2,17,5,11,9,16,12,4,13,20,10,1,6,3;24/it:im;/CRV:17-1;/rA:24nOCOCCOCCCNCCCCCCCCCNCHHTs/rB:s1;;s2;s4;P4;d5;s5;s7;s3s8;s9;s9s10;s11;d11;s12;d13;s13s15;s14;s16d18;s16;d17s20;P9;P12;s20;/rC:24.7946,-17.0293,0;26.1179,-17.7932,0;32.734,-17.0293,0;27.4411,-17.0293,0;28.7643,-17.7932,0;27.4411,-15.5013,0;28.7643,-19.3212,0;30.0876,-17.0293,0;30.0876,-20.0851,0;31.4108,-17.7932,0;30.0876,-21.6131,0;31.4108,-19.3212,0;31.4108,-22.377,0;28.7643,-22.377,0;32.734,-20.0851,0;31.4108,-23.905,0;32.734,-21.6131,0;28.7643,-23.905,0;30.0876,-24.6689,0;33.248,-24.0313,0;33.8695,-22.6355,0;28.7643,-20.8491,0;32.734,-18.5572,0;33.248,-25.5713,0;</cml:name>
    <cml:name id="m1.n3" dictRef="chem4word:CalculatedInchikey">IQNAFIKWMRSYJD-SQFLUBDYSA-N</cml:name>
    <cml:name id="m1.n4" dictRef="chem4word:ResolvedIupacname">Not found</cml:name>
    <cml:atomArray>
      <cml:atom id="a1" elementType="O" x2="483.0126" y2="331.7388" />
      <cml:atom id="a2" elementType="C" x2="508.7899" y2="346.6212" />
      <cml:atom id="a3" elementType="O" x2="637.6761" y2="331.7388" />
      <cml:atom id="a4" elementType="C" x2="534.5671" y2="331.7388" />
      <cml:atom id="a5" elementType="C" x2="560.3443" y2="346.6212" />
      <cml:atom id="a6" elementType="O" x2="534.5671" y2="301.9737" />
      <cml:atom id="a7" elementType="C" x2="560.3443" y2="376.3862" />
      <cml:atom id="a8" elementType="C" x2="586.1217" y2="331.7388" />
      <cml:atom id="a9" elementType="C" x2="586.1217" y2="391.2688" />
      <cml:atom id="a10" elementType="N" x2="611.8989" y2="346.6212" />
      <cml:atom id="a11" elementType="C" x2="586.1217" y2="421.0338" />
      <cml:atom id="a12" elementType="C" x2="611.8989" y2="376.3862" />
      <cml:atom id="a13" elementType="C" x2="611.8989" y2="435.9163" />
      <cml:atom id="a14" elementType="C" x2="560.3443" y2="435.9163" />
      <cml:atom id="a15" elementType="C" x2="637.6761" y2="391.2688" />
      <cml:atom id="a16" elementType="C" x2="611.8989" y2="465.6813" />
      <cml:atom id="a17" elementType="C" x2="637.6761" y2="421.0338" />
      <cml:atom id="a18" elementType="C" x2="560.3443" y2="465.6813" />
      <cml:atom id="a19" elementType="C" x2="586.1217" y2="480.5638" />
      <cml:atom id="a20" elementType="N" x2="647.6894" y2="468.1421" />
      <cml:atom id="a21" elementType="C" x2="659.7958" y2="440.9505" />
      <cml:atom id="a22" elementType="H" x2="560.3443" y2="406.1513" />
      <cml:atom id="a23" elementType="H" x2="637.6761" y2="361.5037" />
      <cml:atom id="a24" elementType="Ts" x2="647.6894" y2="498.1421" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a2 a1" order="S" />
      <cml:bond id="b2" atomRefs2="a2 a4" order="S" />
      <cml:bond id="b3" atomRefs2="a4 a5" order="S" />
      <cml:bond id="b4" atomRefs2="a4 a6" order="S">
        <cml:bondStereo atomRefs2="a4 a6">W</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b5" atomRefs2="a7 a5" order="D" />
      <cml:bond id="b6" atomRefs2="a5 a8" order="S" />
      <cml:bond id="b7" atomRefs2="a9 a7" order="S" />
      <cml:bond id="b8" atomRefs2="a8 a10" order="S" />
      <cml:bond id="b9" atomRefs2="a11 a9" order="S" />
      <cml:bond id="b10" atomRefs2="a9 a12" order="S" />
      <cml:bond id="b11" atomRefs2="a10 a12" order="S" />
      <cml:bond id="b12" atomRefs2="a11 a13" order="S" />
      <cml:bond id="b13" atomRefs2="a14 a11" order="D" />
      <cml:bond id="b14" atomRefs2="a12 a15" order="S" />
      <cml:bond id="b15" atomRefs2="a13 a16" order="D" />
      <cml:bond id="b16" atomRefs2="a17 a13" order="S" />
      <cml:bond id="b17" atomRefs2="a18 a14" order="S" />
      <cml:bond id="b18" atomRefs2="a15 a17" order="S" />
      <cml:bond id="b19" atomRefs2="a16 a19" order="S" />
      <cml:bond id="b20" atomRefs2="a16 a20" order="S" />
      <cml:bond id="b21" atomRefs2="a17 a21" order="D" />
      <cml:bond id="b22" atomRefs2="a19 a18" order="D" />
      <cml:bond id="b23" atomRefs2="a21 a20" order="S" />
      <cml:bond id="b24" atomRefs2="a9 a22" order="S">
        <cml:bondStereo atomRefs2="a9 a22">W</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b25" atomRefs2="a12 a23" order="S">
        <cml:bondStereo atomRefs2="a12 a23">W</cml:bondStereo>
      </cml:bond>
      <cml:bond id="b26" atomRefs2="a10 a3" order="S" />
      <cml:bond id="b27" atomRefs2="a20 a24" order="S" />
    </cml:bondArray>
  </cml:molecule>
  <cml:molecule id="m2">
    <cml:formula id="m2.f0" concise="H 2 T 1 B 1 S 1" />
    <cml:formula id="m2.f1" convention="chem4word:ResolvedFormula" inline="Not found" concise="H 2 T 1 B 1 S 1" />
    <cml:formula id="m2.f2" convention="chem4word:ResolvedSmiles" inline="Not found" concise="H 2 T 1 B 1 S 1" />
    <cml:name id="m2.n1" dictRef="chem4word:CalculatedInchi">1S/BH3S/c1-2/h2H,1H2/i1T</cml:name>
    <cml:name id="m2.n2" dictRef="chem4word:CalculatedAuxInfo">1/0/N:2,3/rA:3nH.i3BS/rB:s1;s2;/rC:17.6127,-12.9287,0;19.1527,-12.9287,0;20.6927,-12.9287,0;</cml:name>
    <cml:name id="m2.n3" dictRef="chem4word:CalculatedInchikey">DBYVFGSEJWZZCZ-CNRUNOGKSA-N</cml:name>
    <cml:name id="m2.n4" dictRef="chem4word:ResolvedIupacname">Not found</cml:name>
    <cml:atomArray>
      <cml:atom id="a25" elementType="T" x2="343.1042" y2="251.8579" />
      <cml:atom id="a26" elementType="B" x2="373.1042" y2="251.8579" />
      <cml:atom id="a27" elementType="S" x2="403.1042" y2="251.8579" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b28" atomRefs2="a25 a26" order="S" />
      <cml:bond id="b29" atomRefs2="a26 a27" order="S" />
    </cml:bondArray>
  </cml:molecule>
  <cml:molecule id="m3">
    <cml:formula id="m3.f0" concise="H 2 T 1 B 1 S 1" />
    <cml:formula id="m3.f1" convention="chem4word:ResolvedFormula" inline="Not found" concise="H 2 T 1 B 1 S 1" />
    <cml:formula id="m3.f2" convention="chem4word:ResolvedSmiles" inline="Not found" concise="H 2 T 1 B 1 S 1" />
    <cml:name id="m3.n1" dictRef="chem4word:CalculatedInchi">1S/BH3S/c1-2/h2H,1H2/i1T</cml:name>
    <cml:name id="m3.n2" dictRef="chem4word:CalculatedAuxInfo">1/0/N:2,3/rA:3nH.i3BS/rB:s1;s2;/rC:17.9515,-14.8691,0;19.4915,-14.8691,0;21.0315,-14.8691,0;</cml:name>
    <cml:name id="m3.n3" dictRef="chem4word:CalculatedInchikey">DBYVFGSEJWZZCZ-CNRUNOGKSA-N</cml:name>
    <cml:name id="m3.n4" dictRef="chem4word:ResolvedIupacname">Not found</cml:name>
    <cml:atomArray>
      <cml:atom id="a28" elementType="T" x2="349.7042" y2="289.6579" />
      <cml:atom id="a29" elementType="B" x2="379.7042" y2="289.6579" />
      <cml:atom id="a30" elementType="S" x2="409.7042" y2="289.6579" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b30" atomRefs2="a28 a29" order="S" />
      <cml:bond id="b31" atomRefs2="a29 a30" order="S" />
    </cml:bondArray>
  </cml:molecule>
  <cml:molecule id="m4">
    <cml:formula id="m4.f0" concise="H 2 B 1 No 1" />
    <cml:formula id="m4.f1" convention="chem4word:ResolvedFormula" inline="Not found" concise="H 2 B 1 No 1" />
    <cml:formula id="m4.f2" convention="chem4word:ResolvedSmiles" inline="Not found" concise="H 2 B 1 No 1" />
    <cml:name id="m4.n1" dictRef="chem4word:CalculatedInchi">1S/BH2.No/h1H2;/q+1;-1</cml:name>
    <cml:name id="m4.n2" dictRef="chem4word:CalculatedAuxInfo">1/0/N:1;2/CRV:1+1;/rA:2nBNo/rB:s1;/rC:18.1055,-16.6247,0;19.6455,-16.6247,0;</cml:name>
    <cml:name id="m4.n3" dictRef="chem4word:CalculatedInchikey">HIADIOABJGXRRY-UHFFFAOYSA-N</cml:name>
    <cml:name id="m4.n4" dictRef="chem4word:ResolvedIupacname">Not found</cml:name>
    <cml:atomArray>
      <cml:atom id="a31" elementType="B" x2="352.7042" y2="323.8579" />
      <cml:atom id="a32" elementType="No" x2="382.7042" y2="323.8579" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b32" atomRefs2="a31 a32" order="S" />
    </cml:bondArray>
  </cml:molecule>
  <cml:molecule id="m5">
    <cml:formula id="m5.f0" concise="Ac 1" />
    <cml:formula id="m5.f1" convention="chem4word:ResolvedFormula" inline="Ac" concise="Ac 1" />
    <cml:formula id="m5.f2" convention="chem4word:ResolvedSmiles" inline="[Ac]" concise="Ac 1" />
    <cml:name id="m5.n1" dictRef="chem4word:CalculatedInchi">1S/Ac</cml:name>
    <cml:name id="m5.n2" dictRef="chem4word:CalculatedAuxInfo">1/0/N:1/rA:1nAc/rB:/rC:376.7042,-346.6579,0;</cml:name>
    <cml:name id="m5.n3" dictRef="chem4word:CalculatedInchikey">QQINRWTZWGJFDB-UHFFFAOYSA-N</cml:name>
    <cml:name id="m5.n4" dictRef="chem4word:ResolvedIupacname">actinium</cml:name>
    <cml:atomArray>
      <cml:atom id="a33" elementType="Ac" x2="376.7042" y2="346.6579" />
    </cml:atomArray>
  </cml:molecule>
</cml:cml>

Edit: Add markup to tidy structure

Exception raised on saving document

Describe the bug
The exception below is sometimes occurring when a document is saved.

To Reproduce
Steps to reproduce the behaviour:
Unknown

Additional context

OnDocumentBeforeSave()
System.Runtime.InteropServices.COMException (0xE0041804): The operation cannot be performed on a stream that is about to be deleted.
   at Microsoft.Office.Core._CustomXMLPart.Delete()
   at Chem4Word.Helpers.CustomXmlPartHelper.RemoveOrphanedXmlParts(Document doc) in C:\Dev\vsts\chem4word\Version3-1\src\Chem4Word.V3\Helpers\CustomXMLPartHelper.cs:line 133
   at Chem4Word.Chem4WordV3.OnDocumentBeforeSave(Document doc, Boolean& saveAsUi, Boolean& cancel) in C:\Dev\vsts\chem4word\Version3-1\src\Chem4Word.V3\Chem4WordV3.cs:line 1867

Double bond overlapping

In literature it looks like this
image

In chem4word
image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <cml:molecule id="m1">
    <cml:atomArray>
      <cml:atom id="a1" elementType="C" x2="417.4005" y2="415.4007" />
      <cml:atom id="a2" elementType="C" x2="429.9005" y2="393.7501" />
      <cml:atom id="a3" elementType="C" x2="405.7523" y2="400.2205" />
      <cml:atom id="a4" elementType="C" x2="454.0486" y2="400.2205" />
      <cml:atom id="a5" elementType="C" x2="429.9005" y2="343.7501" />
      <cml:atom id="a6" elementType="C" x2="412.2228" y2="376.0724" />
      <cml:atom id="a7" elementType="C" x2="460.5191" y2="376.0724" />
      <cml:atom id="a8" elementType="S" x2="443.5287" y2="408.3996" />
      <cml:atom id="a9" elementType="C" x2="436.3709" y2="369.6019" />
      <cml:atom id="a10" elementType="C" x2="408.2498" y2="331.2501" c4w:explicit="false" />
      <cml:atom id="a11" elementType="C" x2="442.4005" y2="322.0994" c4w:explicit="false" />
      <cml:atom id="a12" elementType="N" x2="466.6518" y2="416.6453" />
      <cml:atom id="a13" elementType="O" x2="424.4015" y2="427.5268" />
      <cml:atom id="a14" elementType="N" x2="480.1768" y2="393.2194" />
      <cml:atom id="a15" elementType="O" x2="450.5297" y2="434.5278" />
      <cml:atom id="a16" elementType="C" x2="493.7018" y2="416.6453" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a2 a1" order="S" />
      <cml:bond id="b2" atomRefs2="a3 a2" order="S" />
      <cml:bond id="b3" atomRefs2="a2 a4" order="S" />
      <cml:bond id="b4" atomRefs2="a2 a5" order="S" />
      <cml:bond id="b5" atomRefs2="a6 a3" order="S" />
      <cml:bond id="b6" atomRefs2="a7 a4" order="S" />
      <cml:bond id="b7" atomRefs2="a5 a9" order="S" />
      <cml:bond id="b8" atomRefs2="a5 a10" order="S" />
      <cml:bond id="b9" atomRefs2="a5 a11" order="S" />
      <cml:bond id="b10" atomRefs2="a6 a9" order="S" />
      <cml:bond id="b11" atomRefs2="a9 a7" order="S" />
      <cml:bond id="b12" atomRefs2="a4 a14" order="D" c4w:placement="Clockwise" />
      <cml:bond id="b13" atomRefs2="a14 a12" order="S" />
      <cml:bond id="b14" atomRefs2="a1 a8" order="S" />
      <cml:bond id="b15" atomRefs2="a8 a12" order="S" />
      <cml:bond id="b16" atomRefs2="a8 a13" order="D" />
      <cml:bond id="b17" atomRefs2="a8 a15" order="D" />
      <cml:bond id="b18" atomRefs2="a12 a16" order="S" />
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Edited to add xml formatting and remove irrelevant labels.

Unable to add bond to R Atom

Describe the bug
A clear and concise description [in English] of what the bug is.

To Reproduce
Steps to reproduce the behavior:
First draw a R, then add carbon chain
image

This results in molecule like R-X can't be drawn

Expected behavior
A clear and concise description [in English] of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. Windows 7/8.1/10 Home/Professional]
  • Word Version [e.g. 2016/O365/2019 Home/Business/Professional]
  • Please also gather system information from "Help" --> "System Info" in Chem4Word Ribbon

Additional context
Add any other context about the problem here.

ChEBI Search broken [Beta-6]

Describe the bug
Using the ChEBI search is no longer working

Searcher.ChEBIPlugin.SearchChEBI.SearchButton_Click()
Exception
Value cannot be null.
Parameter name: uriString

Unable to delete structure

To Reproduce
Steps to reproduce the behavior:

  1. Draw a structure

  2. click ok to render
    image

  3. double click the structure and delete the structure

  4. render it

  5. Neither "delete" nor "backspace" can delete this thing
    image

The user gets a operation cannot be performed error when saving a document

Describe the bug
The user gets an error message when saving a document

To Reproduce
Steps to reproduce the behaviour:
Unknown at this time

Desktop (please complete the following information):

  • OS: Windows 10 Pro for Workstations
  • Word Version O365 Professional Plus 64 bit

Stack Trace ...

Exception in OnDocumentBeforeSave()
System.Runtime.InteropServices.COMException (0xE0041804):
The operation cannot be performed on a stream that is about to be deleted.
   at Microsoft.Office.Core._CustomXMLPart.Delete()
   at Chem4Word.Helpers.CustomXmlPartHelper.RemoveOrphanedXmlParts(Document doc) in C:\Dev\vsts\Chem4Word\Version3-1\src\Chem4Word.V3\Helpers\CustomXMLPartHelper.cs:line 128
   at Chem4Word.Chem4WordV3.OnDocumentBeforeSave(Document doc, Boolean& saveAsUi, Boolean& cancel) in C:\Dev\vsts\Chem4Word\Version3-1\src\Chem4Word.V3\Chem4WordV3.cs:line 1784

Default Bond Length setting not working for new drawing

Describe the bug
Default Bond Length setting is not working if you draw in a table
image

image

Desktop (please complete the following information):
Operating System: Microsoft Windows 10 Pro for Workstations 64bit [10.0.19041.0] en-GB
Word Product: Microsoft Office 365 Professional Plus 64bit [16.0.12430.20120]
Internet Explorer Version: 11.0.19041.21
.Net Framework Runtime: .NET 4.8 [528372]

1.5 bond is too dense

Is your feature request related to a problem? Please describe.
image
the half bond just becomes little dots

Describe the solution you'd like
Below are different density for your consideration
image
image
image

Functional group orientation problem

Don't know why the COOH is flipped.
image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <cml:molecule id="m1">
    <cml:atomArray>
      <cml:atom id="a1" elementType="N" x2="523.8349" y2="387.0677" />
      <cml:atom id="a2" elementType="C" x2="514.3102" y2="403.5972" />
      <cml:atom id="a3" elementType="C" x2="495.2376" y2="403.5972" />
      <cml:atom id="a4" elementType="C" x2="495.2376" y2="370.5844" />
      <cml:atom id="a5" elementType="C" x2="514.3102" y2="370.5844" />
      <cml:atom id="a6" elementType="C" x2="485.6898" y2="420.1036" />
      <cml:atom id="a7" elementType="C" x2="495.2145" y2="436.6331" />
      <cml:atom id="a8" elementType="C" x2="514.287" y2="436.6331" />
      <cml:atom id="a9" elementType="C" x2="523.8349" y2="420.1036" />
      <cml:atom id="a10" elementType="C" x2="495.2376" y2="351.5119" />
      <cml:atom id="a11" elementType="C" x2="495.2376" y2="332.4394" />
      <cml:atom id="a12" elementType="N" x2="476.1651" y2="332.4394" formalCharge="1" />
      <cml:atom id="a13" elementType="COOH" x2="495.2376" y2="313.3669" />
      <cml:atom id="a14" elementType="H" x2="514.3102" y2="332.4394" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a1 a2" order="S" />
      <cml:bond id="b2" atomRefs2="a4 a5" order="D" />
      <cml:bond id="b3" atomRefs2="a1 a5" order="S" />
      <cml:bond id="b4" atomRefs2="a3 a4" order="S" />
      <cml:bond id="b5" atomRefs2="a6 a7" order="D" />
      <cml:bond id="b6" atomRefs2="a7 a8" order="S" />
      <cml:bond id="b7" atomRefs2="a8 a9" order="D" />
      <cml:bond id="b8" atomRefs2="a2 a9" order="S" />
      <cml:bond id="b9" atomRefs2="a3 a6" order="S" />
      <cml:bond id="b10" atomRefs2="a2 a3" order="D" c4w:placement="Anticlockwise" />
      <cml:bond id="b11" atomRefs2="a4 a10" order="S" />
      <cml:bond id="b12" atomRefs2="a10 a11" order="S" />
      <cml:bond id="b13" atomRefs2="a11 a12" order="S" />
      <cml:bond id="b14" atomRefs2="a11 a13" order="S" />
      <cml:bond id="b15" atomRefs2="a11 a14" order="S" />
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

image

<cml:cml xmlns:conventions="http://www.xml-cml.org/convention/" xmlns:cml="http://www.xml-cml.org/schema" xmlns:cmlDict="http://www.xml-cml.org/dictionary/cml/" xmlns:nameDict="http://www.xml-cml.org/dictionary/cml/name/" xmlns:c4w="http://www.chem4word.com/cml" conventions="convention:molecular">
  <cml:molecule id="m1">
    <cml:atomArray>
      <cml:atom id="a1" elementType="C" x2="528.2867" y2="397.9757" />
      <cml:atom id="a2" elementType="N" x2="518.9765" y2="414.1103" formalCharge="1" />
      <cml:atom id="a3" elementType="C" x2="500.3562" y2="414.1103" />
      <cml:atom id="a4" elementType="C" x2="500.3562" y2="381.8186" />
      <cml:atom id="a5" elementType="N" x2="518.9765" y2="381.8186" />
      <cml:atom id="a6" elementType="C" x2="500.3562" y2="363.1756" />
      <cml:atom id="a7" elementType="C" x2="500.3562" y2="344.5327" c4w:explicit="true" />
      <cml:atom id="a8" elementType="N" x2="481.7133" y2="344.5327" formalCharge="1" />
      <cml:atom id="a9" elementType="COOH" x2="500.3562" y2="325.8898" />
      <cml:atom id="a10" elementType="H" x2="518.9765" y2="344.5327" />
    </cml:atomArray>
    <cml:bondArray>
      <cml:bond id="b1" atomRefs2="a1 a2" order="D" />
      <cml:bond id="b2" atomRefs2="a2 a3" order="S" />
      <cml:bond id="b3" atomRefs2="a4 a5" order="S" />
      <cml:bond id="b4" atomRefs2="a1 a5" order="S" />
      <cml:bond id="b5" atomRefs2="a3 a4" order="D" />
      <cml:bond id="b6" atomRefs2="a4 a6" order="S" />
      <cml:bond id="b7" atomRefs2="a6 a7" order="S" />
      <cml:bond id="b8" atomRefs2="a7 a8" order="S" />
      <cml:bond id="b9" atomRefs2="a7 a9" order="S" />
      <cml:bond id="b10" atomRefs2="a7 a10" order="S" />
    </cml:bondArray>
  </cml:molecule>
</cml:cml>

Edit: TidyUp CML to render as code and remove names

The request was aborted: Could not create SSL/TLS secure channel.

Describe the bug
I am trying to use the pubchem search in the latest version of Chem4word and am getting the following error:
The request was aborted: Could not create SSL/TLS secure channel.
Please advice. Thanks

To Reproduce
Steps to reproduce the behaviour:

  1. Go to puchem search
  2. Enter any chemical name
  3. See error: The request was aborted: Could not create SSL/TLS secure channel.

Expected behavior
I expect the pubchem search to produce a result

CML Data

<?xml version="1.0" encoding="utf-8"?>
<!-- Please paste the cml of your structure here -->

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: Windows 10 Pro
  • Word Version Office Pro
  • Please also gather system information from "Help" --> "System Info" in Chem4Word Ribbon

Additional context
Add any other context about the problem here.

Overlapped text

Describe the bug

image

Expected behavior
A clear and concise description [in English] of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. Windows 7/8.1/10 Home/Professional]
  • Word Version [e.g. 2016/O365/2019 Home/Business/Professional]
  • Please also gather system information from "Help" --> "System Info" in Chem4Word Ribbon

Additional context
Add any other context about the problem here.

Variable ring mode does not indicate ring size on first drawing

Describe the bug
When drawing a variable ring from a blank structure, the adorner does not tell you how big it is going to be.

To Reproduce
Steps to reproduce the behaviour:

  1. Start Word
  2. Click on the Chem4Word toolbar
  3. Click in the document
  4. Click the Draw Button
  5. Select Variable Ring Mode
  6. Click and drag: the adorner arrow appears, but no ring-size number
  7. Close Word

Expected behaviour
The ring-size should be indicated as a number

Desktop (please complete the following information):
Chem4Word 2020 Beta 3 - [3.1.3.7313]

Operating System: Microsoft Windows 10 Enterprise 64bit [10.0.18362.0] en-GB
Word Product: Microsoft Office 365 Professional Plus 32bit [16.0.12325.20288]
Internet Explorer Version: 11.0.18362.592
.Net Framework Runtime: .NET 4.8 (W10 1903) [528040]

Settings Folder: C:\Users\clyde\AppData\Local\Chem4Word.V3
Library Folder: C:\ProgramData\Chem4Word.V3

PlugIns Folder: C:\Program Files (x86)\Chem4Word V3\PlugIns
Chem4Word.Editor.ACME.dll - [3.1.3.7313]
Chem4Word.Editor.ChemDoodleWeb702.dll - [3.1.3.7313]
Chem4Word.Editor.ChemDoodleWeb800.dll - [3.1.3.7313]
Chem4Word.Renderer.OoXmlV4.dll - [3.1.3.7313]
Chem4Word.Searcher.ChEBIPlugin.dll - [3.1.3.7313]
Chem4Word.Searcher.OpsinPlugIn.dll - [3.1.3.7313]
Chem4Word.Searcher.PubChemPlugIn.dll - [3.1.3.7313]

Additional context
Add any other context about the problem here.

Rendering of double bonds in document does not match ACME

Draw the structure shown below, ensuring that the terminal double bond placement is set.

image

Expected behaviour
In document rendering should offset the double bond the same as seen in the editor

Operating System: Microsoft Windows 10 Pro 64bit [10.0.18362.0] en-GB
Word Product: Microsoft Office 2016 Professional Plus 64bit [16.0.12325.20298]
Internet Explorer Version: 11.0.18362.592
.Net Framework Runtime: .NET 4.8 (W10 1903) [528040]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.