예제 #1
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="target">The target object.</param>
        /// <param name="scanner">The MemberScanner to use to learn about target.</param>
        public ReflectedObjectEditableProperty(Object target, MemberScanner scanner)
        {
            this.target        = target;
            this.memberScanner = scanner;
            IEnumerable <MemberWrapper> matches = memberScanner.getMatchingMembers(target.GetType());

            variableList = new List <ReflectedVariable>();
            foreach (MemberWrapper wrapper in matches)
            {
                if (ReflectedVariable.canCreateVariable(wrapper.getWrappedType()))
                {
                    variableList.Add(ReflectedVariable.createVariable(wrapper, target));
                }
            }
        }
예제 #2
0
 public virtual EditableProperty createEditableProperty(MemberWrapper memberWrapper, Object target)
 {
     return(new ReflectedEditableProperty(PrettyName != null ? PrettyName : memberWrapper.getWrappedName(), ReflectedVariable.createVariable(memberWrapper, target))
     {
         Advanced = Advanced
     });
 }
예제 #3
0
 public override EditableProperty createEditableProperty(MemberWrapper memberWrapper, Object target)
 {
     return(new ReflectedMinMaxEditableProperty(PrettyName != null ? PrettyName : memberWrapper.getWrappedName(), ReflectedVariable.createVariable(memberWrapper, target), MinValue, MaxValue, Increment)
     {
         Advanced = Advanced,
     });
 }