public static void InitTypeListWindow(string title, GraphTypeInfo[] items, Action<GraphTypeInfo> onAdd)
 {
     // Get existing open window or if none, make a new one:
     var window = (ElementItemTypesWindow)GetWindow(typeof(ElementItemTypesWindow));
     window._triggerGroups = items.GroupBy(p => window.GroupBy(p)).ToArray();
     window.title = title;
     window._OnAdd = onAdd;
     window._labelSelector = window.GetLabel;
     window.Show();
 }
 public virtual string GetLabel(GraphTypeInfo item)
 {
     return item.Label;
 }
 public virtual string GroupBy(GraphTypeInfo item)
 {
     return item.Group;
 }
Exemple #4
0
 private bool IsValidInterface(GraphTypeInfo iface)
 {
     return(iface.IsInterfaceType &&
            !iface.IsIgnored &&
            (IgnoreTypeCallback == null || !IgnoreTypeCallback(iface.GetType(), null)));
 }
Exemple #5
0
 private TypeInfo GetTypeInfo(GraphTypeInfo type) =>
 GetTypeInfo(type.AttributeProvider);
Exemple #6
0
 public static bool HasField(this GraphTypeInfo typeInfo, string fieldName) =>
 typeInfo.Fields.Any(field => field.Name == fieldName);
 public abstract object WrapValue(GraphEntityInfo entity, GraphTypeInfo type, object value);
Exemple #8
0
 private IObjectGraphType DeriveOperationType(GraphTypeInfo typeInfo) =>
 typeInfo != null
         ? DeriveType(typeInfo) as IObjectGraphType
         : null;
Exemple #9
0
 private IGraphType CacheType(GraphTypeInfo typeInfo, IGraphType graphType)
 {
     _typeDescriptors.AddEntity(typeInfo.TypeRepresentation.AsType(), WrapNonNullableType(typeInfo, graphType));
     _typeDescriptors.AddEntity(graphType.GetType(), graphType);
     return(graphType);
 }
Exemple #10
0
 private Type GetType(GraphTypeInfo typeInfo) => DeriveType(typeInfo).GetType();
Exemple #11
0
 private IGraphType WrapNonNullableType(GraphTypeInfo typeInfo, IGraphType graphType) =>
 typeInfo.IsNullable
         ? graphType
         : CreateTypeInstance <GraphType>(typeof(NonNullGraphType <>).MakeGenericType(graphType.GetType()));