public static void Write(this PageActionSeparator action, CSideWriter writer) { var idLength = Math.Max(action.ID.ToString().Length, 8); var id = action.ID.ToString().PadRight(idLength); var idAndIndentation = string.Format("{0};{1}", id, action.IndentationLevel.ToString()); writer.Write("{{ {0};", idAndIndentation.PadRight(13)); writer.Indent(writer.Column); writer.Write("Separator "); var relevantProperties = action.Properties.Where(p => p.HasValue); if (relevantProperties.Any()) { writer.WriteLine(";"); action.Properties.Write(PropertiesStyle.Field, writer); } else { writer.Write(" "); } writer.WriteLine("}"); writer.Unindent(); }
public static IEnumerable <ParameterBase> ToParameters(this PageActionSeparator pageActionSeparator) { yield return(new SimpleParameter("ID", pageActionSeparator.ID)); foreach (var parameter in pageActionSeparator.Properties.WithAValue.SelectMany(p => p.ToParameters())) { yield return(parameter); } }