public PropertyItemClassPointer(string key, IClass owner, PropertyClass property) : base(key, owner) { _property = (PropertyClass)property.Clone(); _property.SetHolder(owner); _pointer = owner.VariableCustomType; if (_pointer == null) { throw new DesignerException("null VariableCustomType creating PropertyItemClassPointer"); } }
public static ActionClass createAction(IClass holder, IProperty ei, XmlObjectWriter writer, XmlNode node, IMethod scopeMethod, IActionsHolder actsHolder, Form caller) { if (ei != null) { IPropertyEx pp = ei as IPropertyEx; if (pp != null) { ActionClass act = new ActionClass(pp.RootPointer); act.ActionMethod = pp.CreateSetterMethodPointer(act); act.ActionName = act.ActionMethod.DefaultActionName; act.ActionHolder = actsHolder; if (pp.RootPointer.CreateNewAction(act, writer, scopeMethod, caller)) { return(act); } } else { PropertyClass pc = ei as PropertyClass; if (pc != null) { PropertyClass pc2 = (PropertyClass)pc.Clone(); pc2.SetHolder(holder); ActionClass act = new ActionClass(holder.RootPointer); act.ActionMethod = pc2.CreateSetterMethodPointer(act); act.ActionName = act.ActionMethod.DefaultActionName; // pc.Holder.CodeName + ".Set" + pc.Name; act.ActionHolder = actsHolder; if (holder.RootPointer.CreateNewAction(act, writer, scopeMethod, caller)) { return(act); } } else { } } } return(null); }