GetWritingSystems() public method

public GetWritingSystems ( ) : IEnumerable
return IEnumerable
        /// ------------------------------------------------------------------------------------
        private string GetPossibilityValue(IPaCmPossibility poss, bool returnAbbreviation)
        {
            if (poss == null)
            {
                return(null);
            }

            var value = (returnAbbreviation ?
                         poss.Abbreviation.GetString(App.GetUILanguageId()) :
                         poss.Name.GetString(App.GetUILanguageId()));

            if (value == null)
            {
                foreach (var wsId in m_fwDsInfo.GetWritingSystems()
                         .Where(ws => ws.Type == FwDBUtils.FwWritingSystemType.Analysis)
                         .Select(ws => ws.Id))
                {
                    value = (returnAbbreviation ?
                             poss.Abbreviation.GetString(wsId) : poss.Name.GetString(wsId));

                    if (value != null)
                    {
                        return(value);
                    }
                }
            }

            // If the value is still null, make a last ditch effort to get an English string.
            return(value ?? (returnAbbreviation ?
                             poss.Abbreviation.GetString("en") : poss.Name.GetString("en")));
        }