/// <summary> /// Writes the children to the items property. /// </summary> /// <param name="jw">The jw.</param> protected override void WriteItems(DextopJsWriter jw) { if (Items.Count > 0) { jw.WritePropertyName("items"); jw.Write("["); bool first = true; if (PrependItems != null) foreach (var item in PrependItems) { if (first) first = false; else jw.Write(", "); jw.Write("dict['{0}']", item); } for (var i = 0; i < Items.Count; i++) { if (first) first = false; else jw.Write(", "); if (Items[i].ItemName != null) jw.Write("dict['{0}']", Items[i].ItemName); else jw.WriteObject(Items[i]); } if (AppendItems != null) foreach (var item in AppendItems) { if (first) first = false; else jw.Write(", "); jw.Write("dict['{0}']", item); } jw.Write("]"); } }
/// <summary> /// Write the properties from the bag to the writer. This method can be overrided for advanced scenarios. /// </summary> /// <param name="jw">The writer.</param> protected override void WriteProperties(DextopJsWriter jw) { if (id != dataIndex) jw.DefaultProperty("id", id); jw.AddLocalizationProperty("text", text, id + "Text"); jw.AddLocalizationProperty("tooltip", tooltip, id + "TooltipText"); jw.DefaultProperty("flex", flex); jw.DefaultProperty("width", width); jw.DefaultProperty("renderer", renderer); jw.DefaultProperty("format", format); jw.DefaultProperty("tpl", tpl); jw.DefaultProperty("align", align); jw.DefaultProperty("hidden", hidden); jw.DefaultProperty("sortable", sortable); if (_columns == null || _columns.Count == 0) { jw.AddProperty("dataIndex", dataIndex); jw.AddProperty("type", type); jw.DefaultProperty("required", required); jw.DefaultProperty("tooltipTpl", tooltipTpl); jw.DefaultProperty("readonly", readOnly); jw.DefaultProperty("menuDisabled", menuDisabled); jw.DefaultProperty("filterable", filterable); jw.DefaultProperty("locked", locked); jw.DefaultProperty("hasHeaderFilter", hasHeaderFilter); } else { jw.WritePropertyName("columns"); jw.Write("["); for (var i = 0; i < _columns.Count; i++) { if (i > 0) jw.Write(", "); if ((jw.Options & DextopJsWriterOptions.ItemFactory) != 0) jw.Write("dict[\"{0}\"]", _columns[i].id); else jw.WriteObject(_columns[i]); } jw.Write("]"); } base.WriteProperties(jw); }