/// <summary> /// Utility method to get vertical text layout setting value. /// </summary> /// <param name="name">Setting name.</param> /// <param name="settings">Setting property bag.</param> /// <param name="value">If successful, contains setting value; otherwise default value.</param> /// <returns>True if the setting exists and is valid; otherwise false.</returns> private static bool TryGetVerticalTextLayoutSetting( string name, Dictionary <string, string> settings, out VerticalTextLayout value) { string stringValue; if (settings.TryGetValue(name, out stringValue) && false == string.IsNullOrEmpty(stringValue)) { if (string.Equals(Constants.RightToLeftValue, stringValue, StringComparison.OrdinalIgnoreCase)) { value = VerticalTextLayout.RightToLeft; return(true); } if (string.Equals(Constants.LeftToRightValue, stringValue, StringComparison.OrdinalIgnoreCase)) { value = VerticalTextLayout.LeftToRight; return(true); } } value = default(VerticalTextLayout); return(false); }
/// <summary> /// Utility method to serialize elements of VerticalTextLayout enum. /// </summary> /// <param name="verticalTextLayout">Enum value to serialize.</param> /// <returns>Serialized enum value.</returns> private static string GetVerticalAlignmentValue( VerticalTextLayout verticalTextLayout) { switch (verticalTextLayout) { case VerticalTextLayout.RightToLeft: return(Constants.RightToLeftValue); case VerticalTextLayout.LeftToRight: return(Constants.LeftToRightValue); default: throw new ArgumentOutOfRangeException(string.Format("Unknown cue vertical align value '{0}'.", verticalTextLayout.ToString())); } }