public ISectionOptions Get(RenderingParameters parameters) { var options = new SectionOptions() { BackgroundColor = GetParameter(parameters, Templates.NewsletterSectionParameters.RenderingParameters.BackgroundColor, "#fff"), ContentFontColor = GetParameter(parameters, Templates.NewsletterSectionParameters.RenderingParameters.ContentFontColor, "#000"), HeadingFontColor = GetParameter(parameters, Templates.NewsletterSectionParameters.RenderingParameters.HeadingFontColor, "#000"), LinkColor = GetParameter(parameters, Templates.NewsletterSectionParameters.RenderingParameters.LinkColor, "#000") }; return(options); }
public static int[] WriteOptions(BBData data, OptionInfo opt, StringsChunkBuilder strings) { var ret = new SectionOptions(); var stringOffsetOffsets = new List <int>(); unsafe { for (int i = 0; i < 2; i++) { ret._pad0[i] = opt._pad0[i]; } for (int i = 0; i < 0xC; i++) { ret._pad1[i] = opt._pad1[i]; } } ret.GEN8FlagsDup = opt.InfoFlags; if (opt.Constants == null) { ret.ConstMap.Count = 0; } else { ret.ConstMap.Count = (uint)opt.Constants.Count; } var tmp = new BinBuffer(); tmp.Write(ret); data.Buffer.Write(tmp, 0, tmp.Size - 12, 8); if (opt.Constants != null) { foreach (var kvp in opt.Constants) { stringOffsetOffsets.Add(data.Buffer.Position + 8); data.Buffer.Write(strings.GetOffset(kvp.Key)); stringOffsetOffsets.Add(data.Buffer.Position + 8); data.Buffer.Write(strings.GetOffset(kvp.Value)); } } return(stringOffsetOffsets.ToArray()); }