private SpellChecker.OptionDescription GetOptionDescriptionImpl(string optionId) { RCW.IOptionDescription optionDescription = this._speller.Value.GetOptionDescription(optionId); if (optionDescription == null) { return(null); } return(SpellChecker.OptionDescription.Create(optionDescription, false, true)); }
internal static SpellChecker.OptionDescription Create(RCW.IOptionDescription optionDescription, bool shouldSuppressCOMExceptions = true, bool shouldReleaseCOMObject = true) { if (optionDescription == null) { throw new ArgumentNullException("optionDescription"); } SpellChecker.OptionDescription optionDescription2 = new SpellChecker.OptionDescription(optionDescription.Id, optionDescription.Heading, optionDescription.Description, null); try { optionDescription2._labels = optionDescription.Labels.ToList(true, true); } catch (COMException obj) when(shouldSuppressCOMExceptions) { } finally { if (shouldReleaseCOMObject) { Marshal.ReleaseComObject(optionDescription); } } return(optionDescription2); }