public override ObjectModelObject ConvertToObject() { var obj = base.ConvertToObject(); obj.ConstructorValues.Add(new ObjectModelString(Content)); obj.ConstructorValues.Add(new ObjectModelString(Arguments)); switch (Placement) { case ActionPlacement.ContextMenu: obj.Name = "ToastContextMenuItem"; break; default: switch (ActivationType) { case ActivationType.System: obj.PropertyValues.Clear(); var args = Arguments != null ? Arguments : ""; switch (args.ToLower()) { case "snooze": obj = new ObjectModelObject("ToastButtonSnooze"); if (!string.IsNullOrWhiteSpace(Content)) { obj.ConstructorValues.Add(new ObjectModelString(Content)); } if (InputId != null) { obj.Add("SelectionBoxId", new ObjectModelString(InputId)); } break; default: obj = new ObjectModelObject("ToastButtonDismiss"); if (!string.IsNullOrWhiteSpace(Content)) { obj.ConstructorValues.Add(new ObjectModelString(Content)); } break; } break; } break; } return(obj); }
public virtual ObjectModelObject ConvertToObject() { var classAttr = GetObjectModelClassAttribute(); if (classAttr == null) { return(null); } var answer = new ObjectModelObject(classAttr.Name); foreach (var propInfo in this.GetType().GetProperties()) { var propAttr = GetObjectModelPropertyAttribute(propInfo); if (propAttr != null) { object propVal = propInfo.GetValue(this); if (!object.Equals(propAttr.DefaultValue, propVal)) { IObjectModelValue value = CreateObject(propVal); if (value != null) { answer.Add(propAttr.Name, value); } } } else { var bindingPropAttr = GetObjectModelBindingPropertyAttribute(propInfo); if (bindingPropAttr != null) { string bindingName = propInfo.GetValue(this) as string; if (bindingName != null) { answer.AddBinding(bindingPropAttr, bindingName); } } } } return(answer); }