private PropertyEditorInformation GetTypeEditorInfo(XenType xenType) { var match = PropertyEditors .FirstOrDefault(info => { var typeMatch = info.DesignTypeName == xenType.FullName; if (typeMatch) { return(true); } var desc = xenType.Descriptor; if (desc.HasFlag(XenPropertyDescriptors.Literals) && !desc.HasFlag(XenPropertyDescriptors.ValueType)) { if (info.DesignTypeName.Equals(typeof(Enum).FullName)) { return(true); } } return(false); }); return(match); }
public bool AddType(XenType type) { if (string.IsNullOrWhiteSpace(type?.FullName)) { return(false); } return(_instance.Types.Add(type)); }
public void SetPossibleValues(Type type, XenType xenType) { var entry = GetItem(type); xenType.PossibleValues = entry.Generator.Get(type); if (xenType.PossibleValues?.Length > 0) { xenType.Descriptor |= XenPropertyDescriptors.Literals; } }
public ConstructorsReceived(XenType type) { Type = type; }
public bool IsRegistered(XenType type) { return(Types.Contains(type)); }