Пример #1
0
        public static DocumentCompositeNode GetStyleSetter(DocumentCompositeNode styleNode, IPropertyId property)
        {
            DocumentCompositeNode documentCompositeNode;

            if (styleNode != null && property != null)
            {
                IPlatformMetadata     platformMetadata = styleNode.Context.TypeResolver.PlatformMetadata;
                IProperty             property1        = styleNode.Context.TypeResolver.ResolveProperty(property);
                DocumentCompositeNode item             = styleNode.Properties[platformMetadata.KnownProperties.StyleSetters] as DocumentCompositeNode;
                if (item != null && item.SupportsChildren && property1 != null)
                {
                    using (IEnumerator <DocumentNode> enumerator = item.Children.GetEnumerator())
                    {
                        while (enumerator.MoveNext())
                        {
                            DocumentCompositeNode current = enumerator.Current as DocumentCompositeNode;
                            if (current == null)
                            {
                                continue;
                            }
                            IMemberId valueAsMember = DocumentNodeHelper.GetValueAsMember(current, KnownProperties.SetterPropertyProperty);
                            if (valueAsMember == null || !property1.Equals(valueAsMember))
                            {
                                continue;
                            }
                            documentCompositeNode = current;
                            return(documentCompositeNode);
                        }
                        return(null);
                    }
                    return(documentCompositeNode);
                }
            }
            return(null);
        }
Пример #2
0
 public NotificationsForMeRequest(IMemberId member, IEnumerable <NotificationType> filter, ReadFilter readFilter, Paging paging)
     : base(member, "notifications")
 {
     AddTypeFilter(filter);
     this.AddFilter(readFilter, "read_filter");
     this.AddPaging(paging);
 }
Пример #3
0
		public ActionsForMemberRequest(IMemberId member, ISince since, Paging paging, IEnumerable<ActionType> filter)
			: base(member, "actions")
		{
			this.AddTypeFilter(filter);
			this.AddSince(since);
			this.AddPaging(paging);
		}
Пример #4
0
        public override bool Instantiate(IInstanceBuilderContext context, ViewNode viewNode)
        {
            TemplateBindingInstanceBuilderBase.CheckForInvalidBinding(viewNode);
            bool flag = base.Instantiate(context, viewNode);

            if (context.RootTargetTypeReplacement != null && context.IsSerializationScope)
            {
                ViewNode viewNode1 = StyleControlTemplateHelper.FindContainingControlTemplate(viewNode);
                if (viewNode1 != null)
                {
                    ViewNode viewNode2 = StyleControlTemplateHelper.FindStyleTemplateOwningViewNode(viewNode1);
                    if (viewNode2 == null || viewNode2 == context.ViewNodeManager.Root)
                    {
                        DocumentCompositeNode documentNode = viewNode.DocumentNode as DocumentCompositeNode;
                        if (documentNode != null && DocumentNodeUtilities.IsTemplateBinding(documentNode))
                        {
                            IMemberId valueAsMember = DocumentNodeHelper.GetValueAsMember(documentNode, KnownProperties.TemplateBindingPropertyProperty);
                            if (valueAsMember != null)
                            {
                                IProperty replacementProperty = context.RootTargetTypeReplacement.GetReplacementProperty(valueAsMember as IProperty);
                                if (replacementProperty != null && replacementProperty is DependencyPropertyReferenceStep && replacementProperty != valueAsMember)
                                {
                                    DocumentCompositeNode instance = (DocumentCompositeNode)viewNode.Instance;
                                    instance.Properties[KnownProperties.TemplateBindingPropertyProperty] = context.DocumentContext.CreateNode(PlatformTypes.DependencyProperty, new DocumentNodeMemberValue(replacementProperty));
                                }
                            }
                        }
                    }
                }
            }
            return(flag);
        }
Пример #5
0
        private static DocumentNode GetTemplateNode(SceneNode newElement, DocumentCompositeNode styleNode, out StyleNode styleElement)
        {
            DocumentCompositeNode documentCompositeNode1 = styleNode.Properties[DictionaryEntryNode.ValueProperty] as DocumentCompositeNode;
            SceneViewModel        viewModel = newElement.ViewModel.GetViewModel(documentCompositeNode1.DocumentRoot, false);

            if (viewModel == null)
            {
                styleElement = (StyleNode)null;
                return((DocumentNode)null);
            }
            styleElement = viewModel.GetSceneNode((DocumentNode)documentCompositeNode1) as StyleNode;
            DependencyPropertyReferenceStep propertyReferenceStep = (DependencyPropertyReferenceStep)newElement.ViewModel.ProjectContext.ResolveProperty(ControlElement.TemplateProperty);

            if (documentCompositeNode1 != null)
            {
                DocumentCompositeNode documentCompositeNode2 = documentCompositeNode1.Properties[StyleNode.SettersProperty] as DocumentCompositeNode;
                if (documentCompositeNode2 != null)
                {
                    foreach (DocumentNode documentNode1 in (IEnumerable <DocumentNode>)documentCompositeNode2.Children)
                    {
                        DocumentCompositeNode documentCompositeNode3 = documentNode1 as DocumentCompositeNode;
                        if (documentCompositeNode3 != null)
                        {
                            IMemberId    memberId      = (IMemberId)DocumentPrimitiveNode.GetValueAsMember(documentCompositeNode3.Properties[SetterSceneNode.PropertyProperty]);
                            DocumentNode documentNode2 = documentCompositeNode3.Properties[SetterSceneNode.ValueProperty];
                            if (memberId != null && documentNode2 != null && propertyReferenceStep.Equals((object)memberId))
                            {
                                return(documentNode2);
                            }
                        }
                    }
                }
            }
            return((DocumentNode)null);
        }
Пример #6
0
        public override bool Equals(object obj)
        {
            if (this == obj)
            {
                return(true);
            }
            IMemberId memberId = obj as IMemberId;

            if (memberId == null)
            {
                return(false);
            }
            PlatformNeutralPropertyId platformNeutralPropertyId = memberId as PlatformNeutralPropertyId;

            if (platformNeutralPropertyId != null)
            {
                if (!string.Equals(platformNeutralPropertyId.Name, this.Name, StringComparison.Ordinal))
                {
                    return(false);
                }
                return(platformNeutralPropertyId.DeclaringTypeId.Equals(this.DeclaringTypeId));
            }
            if (!string.Equals(memberId.UniqueName, this.UniqueName, StringComparison.Ordinal) || !memberId.DeclaringTypeId.Equals(this.DeclaringTypeId))
            {
                return(false);
            }
            return(memberId.MemberType == this.MemberType);
        }
Пример #7
0
 public ActionsForMemberRequest(IMemberId member, ISince since, Paging paging, IEnumerable <ActionType> filter)
     : base(member, "actions")
 {
     this.AddTypeFilter(filter);
     this.AddSince(since);
     this.AddPaging(paging);
 }
Пример #8
0
		public NotificationsForMeRequest(IMemberId member, IEnumerable<NotificationType> filter, ReadFilter readFilter, Paging paging)
			: base(member, "notifications")
		{
			AddTypeFilter(filter);
			this.AddFilter(readFilter, "read_filter");
			this.AddPaging(paging);
		}
Пример #9
0
 public BoardsAddMemberRequest(IBoardId board, IMemberId member, BoardMemberType type)
     : base(board, "members/{idMember}", Method.PUT)
 {
     Guard.NotNull(member, "member");
     AddParameter("idMember", member.GetMemberId(), ParameterType.UrlSegment);
     
     AddParameter("type", type.ToTrelloString());            
 }
Пример #10
0
        public BoardsAddMemberRequest(IBoardId board, IMemberId member, BoardMemberType type)
            : base(board, "members/{idMember}", Method.PUT)
        {
            Guard.NotNull(member, "member");
            AddParameter("idMember", member.GetMemberId(), ParameterType.UrlSegment);

            AddParameter("type", type.ToTrelloString());
        }
Пример #11
0
        public static IMemberId GetValueAsMember(DocumentCompositeNode valueNode, IPropertyId property)
        {
            IMemberId memberId = (IMemberId)null;

            if (valueNode != null)
            {
                memberId = (IMemberId)DocumentPrimitiveNode.GetValueAsMember(valueNode.Properties[property]);
            }
            return(memberId);
        }
Пример #12
0
        public override bool Equals(object obj)
        {
            if (this == obj)
            {
                return(true);
            }
            IMemberId memberId = obj as IMemberId;

            if (memberId == null || !(memberId.UniqueName == this.UniqueName))
            {
                return(false);
            }
            return(memberId.DeclaringTypeId.Equals(this.DeclaringTypeId));
        }
Пример #13
0
        public static bool UseDesignTimeSize(object target, IInstanceBuilderContext context)
        {
            bool documentNode = false;

            if (context != null && context.ContainerRoot != null && context.ContainerRoot.DocumentNode != null && context.ContainerRoot.DocumentNode.DocumentRoot != null && context.ViewNodeManager != null && context.ViewNodeManager.Root != null)
            {
                ViewNode viewNode = context.InstanceDictionary.GetViewNode(target, true);
                if ((viewNode == null ? true : viewNode.Parent != null))
                {
                    documentNode = context.ViewNodeManager.Root.DocumentNode != context.ContainerRoot.DocumentNode.DocumentRoot.RootNode;
                    IInstantiatedElementViewNode root = context.ViewNodeManager.Root as IInstantiatedElementViewNode;
                    if (documentNode && root != null)
                    {
                        object first = root.InstantiatedElements.First;
                        if (first != null && (bool)(context.DocumentContext.TypeResolver.ResolveProperty(DesignTimeProperties.IsEnhancedOutOfPlaceRootProperty) as DependencyPropertyReferenceStep).GetValue(first))
                        {
                            documentNode = false;
                        }
                    }
                    if (documentNode && viewNode != null)
                    {
                        DocumentNodePath containerNodePath = context.ViewNodeManager.GetCorrespondingNodePath(viewNode).GetContainerNodePath();
                        if (PlatformTypes.ControlTemplate.Equals(containerNodePath.Node.Type) && containerNodePath.Node != context.ViewNodeManager.Root.DocumentNode)
                        {
                            DocumentNodePath parent = containerNodePath.GetParent();
                            if (parent.Node.Type.Equals(PlatformTypes.Setter) && parent.Node is DocumentCompositeNode)
                            {
                                IMemberId valueAsMember = DocumentNodeHelper.GetValueAsMember((DocumentCompositeNode)parent.Node, Microsoft.Expression.DesignModel.Metadata.KnownProperties.SetterPropertyProperty);
                                if (valueAsMember.Equals(Microsoft.Expression.DesignModel.Metadata.KnownProperties.ControlTemplateProperty) || valueAsMember.Equals(Microsoft.Expression.DesignModel.Metadata.KnownProperties.PageTemplateProperty))
                                {
                                    containerNodePath = parent.GetContainerNodePath();
                                }
                            }
                        }
                        if (containerNodePath.Node != context.ViewNodeManager.Root.DocumentNode)
                        {
                            documentNode = false;
                        }
                    }
                }
                else
                {
                    documentNode = true;
                }
            }
            return(documentNode);
        }
Пример #14
0
        public static FieldReferenceStep GetReferenceStep(ITypeResolver typeResolver, System.Reflection.FieldInfo fieldInfo)
        {
            FieldReferenceStep fieldReferenceStep;
            IType           type          = typeResolver.GetType(fieldInfo.DeclaringType);
            IMutableMembers mutableMember = (IMutableMembers)type;
            IMemberId       member        = mutableMember.GetMember(Microsoft.Expression.DesignModel.Metadata.MemberType.Field, fieldInfo.Name);

            if (member == null)
            {
                fieldReferenceStep = new FieldReferenceStep(typeResolver, type, fieldInfo);
                mutableMember.AddMember(fieldReferenceStep);
            }
            else
            {
                fieldReferenceStep = Member.GetMemberAs <FieldReferenceStep>(member);
            }
            return(fieldReferenceStep);
        }
Пример #15
0
        protected static T GetMemberAs <T>(IMemberId member)
            where T : Member
        {
            if (member == null)
            {
                throw new ArgumentNullException("member");
            }
            T t = (T)(member as T);

            if (t == null)
            {
                CultureInfo currentCulture = CultureInfo.CurrentCulture;
                string      cannotAccessMemberUsingDifferentType = ExceptionStringTable.CannotAccessMemberUsingDifferentType;
                object[]    name = new object[] { member.Name, typeof(T).Name, member.GetType().Name };
                throw new InvalidOperationException(string.Format(currentCulture, cannotAccessMemberUsingDifferentType, name));
            }
            return(t);
        }
Пример #16
0
        private static ReferenceStep ResolveReferenceStepFromValue(ITypeResolver typeResolver, SceneNode pathRoot, List <ReferenceStep> referenceSteps, string propertyName)
        {
            if (pathRoot == null)
            {
                return((ReferenceStep)null);
            }
            PropertyReference propertyReference = (PropertyReference)null;
            SceneNode         sceneNode;

            if (referenceSteps.Count == 0)
            {
                sceneNode = pathRoot;
            }
            else
            {
                propertyReference = new PropertyReference(referenceSteps);
                sceneNode         = pathRoot.GetLocalValueAsSceneNode(propertyReference);
            }
            if (sceneNode != null)
            {
                IType     type   = sceneNode.Type;
                IMemberId member = type.GetMember(MemberType.LocalProperty | MemberType.Field, propertyName, TypeHelper.GetAllowableMemberAccess(typeResolver, type));
                if (member != null)
                {
                    return(member as ReferenceStep);
                }
            }
            object target = pathRoot.IsViewObjectValid ? pathRoot.ViewObject.PlatformSpecificObject : (object)null;

            if (propertyReference != null && target != null)
            {
                target = propertyReference.GetValue(target);
            }
            if (target != null)
            {
                IType type = typeResolver.GetType(target.GetType());
                if (type != null)
                {
                    return(type.GetMember(MemberType.LocalProperty | MemberType.Field, propertyName, TypeHelper.GetAllowableMemberAccess(typeResolver, type)) as ReferenceStep);
                }
            }
            return((ReferenceStep)null);
        }
Пример #17
0
        private bool IsSetter(DocumentCompositeNode setterNode, string id, IPropertyId propertyKey)
        {
            bool flag = false;

            if (propertyKey is DependencyPropertyReferenceStep)
            {
                string targetName = this.GetTargetName(setterNode);
                if (id == targetName)
                {
                    DocumentPrimitiveNode documentPrimitiveNode = setterNode.Properties[SetterSceneNode.PropertyProperty] as DocumentPrimitiveNode;
                    if (documentPrimitiveNode == null)
                    {
                        throw new InvalidDataException(ExceptionStringTable.VisualTriggerSetterDoesNotContainPropertyPath);
                    }
                    IMemberId memberId = (IMemberId)DocumentPrimitiveNode.GetValueAsMember((DocumentNode)documentPrimitiveNode);
                    if (memberId != null && memberId == propertyKey)
                    {
                        flag = true;
                    }
                }
            }
            return(flag);
        }
Пример #18
0
        public static IMethod GetMethod(ITypeResolver typeResolver, IType declaringType, System.Reflection.MethodInfo methodInfo)
        {
            IMethod method;

            if (methodInfo == null)
            {
                throw new ArgumentNullException("methodInfo");
            }
            IMutableMembers mutableMember      = (IMutableMembers)declaringType;
            string          nameWithParameters = PlatformTypeHelper.GetNameWithParameters(methodInfo);
            IMemberId       member             = mutableMember.GetMember(Microsoft.Expression.DesignModel.Metadata.MemberType.Method, nameWithParameters);

            if (member == null)
            {
                method = new Method(typeResolver, declaringType, methodInfo, nameWithParameters);
                mutableMember.AddMember(method);
            }
            else
            {
                method = Member.GetMemberAs <Method>(member);
            }
            return(method);
        }
Пример #19
0
 public Task RemoveMember(ICardId card, IMemberId member)
 {
     return(_restClient.RequestAsync(new CardsRemoveMemberRequest(card, member)));
 }
Пример #20
0
 public Task<IEnumerable<Board>> ForMember(IMemberId member, BoardFilter filter = BoardFilter.All)
 {
     return _restClient.RequestListAsync<Board>(new BoardsForMemberRequest(member, filter));
 }
Пример #21
0
 public ActionsForMemberRequest(IMemberId member, ISince since, Paging paging)
     : base(member, "actions")
 {
     this.AddSince(since);
     this.AddPaging(paging);
 }
Пример #22
0
 public IEnumerable<Organization> ForMember(IMemberId member, OrganizationFilter filter = OrganizationFilter.Default)
 {
     return _restClient.Request<List<Organization>>(new OrganizationsForMemberRequest(member, filter));
 }
 public BoardsRemoveMemberRequest(IBoardId board, IMemberId member)
     : base(board, "members/{idMember}", Method.DELETE)
 {
     Guard.NotNull(member, "member");
     AddParameter("idMember", member.GetMemberId(), ParameterType.UrlSegment);
 }
Пример #24
0
		public CardsForMemberRequest(IMemberId member, CardFilter filter)
			: base(member, "cards")
		{
			this.AddCommonCardParameters();
			this.AddFilter(filter);
		}
Пример #25
0
 public MemberCardsRequest(IMemberId member, CardFilter filter)
     : base(member, "cards")
 {
     AddParameter("labels", "true", ParameterType.GetOrPost);
     this.AddFilter(filter);
 }
Пример #26
0
 public void AddMember(IBoardId board, IMemberId member, BoardMemberType type = BoardMemberType.Normal)
 {
     _restClient.Request(new BoardsAddMemberRequest(board, member, type));
 }
Пример #27
0
 public Task AddMember(ICardId card, IMemberId member)
 {
     return _restClient.RequestAsync(new CardsAddMemberRequest(card, member));
 }
Пример #28
0
 public IEnumerable<Board> GetByMember(IMemberId member, BoardFilter filter = BoardFilter.Default)
 {
     Guard.NotNull(member, "member");
     return _restClient.Request<List<Board>>(new MemberBoardsRequest(member, filter));
 }
Пример #29
0
 public IEnumerable<Board> ForMember(IMemberId member, BoardFilter filter = BoardFilter.Default)
 {
     return _restClient.Request<List<Board>>(new BoardsForMemberRequest(member, filter));
 }
 public MemberOrganizationsRequest(IMemberId member, OrganizationFilter filter)
     : base(member, "organizations")
 {
     this.AddFilter(filter);
 }
Пример #31
0
 public Task<IEnumerable<Card>> ForMember(IMemberId member, CardFilter filter = CardFilter.Default)
 {
     return _restClient.RequestListAsync<Card>(new CardsForMemberRequest(member, filter));
 }
Пример #32
0
		public void RemoveMember(ICardId card, IMemberId member)
		{
			_restClient.Request(new CardsRemoveMemberRequest(card, member));
		}
Пример #33
0
 public void RemoveMember(IBoardId board, IMemberId member)
 {
     _restClient.Request(new BoardsRemoveMemberRequest(board, member));
 }
Пример #34
0
 public CardsRemoveMemberRequest(ICardId card, IMemberId member)
     : base(card, "members/{idMember}", Method.DELETE)
 {
     Guard.NotNull(member, "member");
     AddParameter("idMember", member.GetMemberId(), ParameterType.UrlSegment);
 }
Пример #35
0
 public Task<IEnumerable<Action>> ForMember(IMemberId member, ISince since = null, Paging paging = null)
 {
     return _restClient.RequestListAsync<Action>(new ActionsForMemberRequest(member, since, paging));
 }
Пример #36
0
 public void RemoveMember(ICardId card, IMemberId member)
 {
     _restClient.Request(new CardsRemoveMemberRequest(card, member));
 }
Пример #37
0
 public IEnumerable <Organization> ForMember(IMemberId member, OrganizationFilter filter = OrganizationFilter.All)
 {
     return(_restClient.Request <List <Organization> >(new OrganizationsForMemberRequest(member, filter)));
 }
Пример #38
0
 public Task<IEnumerable<Organization>> ForMember(IMemberId member, OrganizationFilter filter = OrganizationFilter.All)
 {
     return _restClient.RequestListAsync<Organization>(new OrganizationsForMemberRequest(member, filter));
 }
Пример #39
0
		public	CardsAddMemberRequest(ICardId card, IMemberId member) 
			: base(card, "members", Method.POST)
		{
			Guard.NotNull(member, "member");
			this.AddValue(member.GetMemberId());
		}
Пример #40
0
 public static XamlParseError MemberNotRoutedEvent(ITextLocation lineInformation, IMemberId memberId)
 {
     return(XamlParseErrors.NewParseError(XamlErrorSeverity.Error, XamlErrorCode.MemberNotRoutedEvent, lineInformation, StringTable.ParserMemberNotRoutedEvent, memberId.Name));
 }
Пример #41
0
 public Task RemoveMember(IBoardId board, IMemberId member)
 {
     return _restClient.RequestAsync(new BoardsRemoveMemberRequest(board, member));
 }
Пример #42
0
		public IEnumerable<Action> ForMember(IMemberId member, IEnumerable<ActionType> filter = null, ISince since = null)
		{
			var currentPage = 0;
			return AutoPage(() => _trelloActions.ForMember(member, filter, since, new Paging(_pageSize, currentPage++)));
		}
Пример #43
0
		public IEnumerable<Card> ForMember(IMemberId member, CardFilter filter = CardFilter.Open)
		{
			return _restClient.Request<List<Card>>(new CardsForMemberRequest(member, filter));
		}
Пример #44
0
 public void RemoveMember(IBoardId board, IMemberId member)
 {
     _restClient.Request(new BoardsRemoveMemberRequest(board, member));
 }
Пример #45
0
 public IEnumerable <Board> ForMember(IMemberId member, BoardFilter filter = BoardFilter.All)
 {
     return(_restClient.Request <List <Board> >(new BoardsForMemberRequest(member, filter)));
 }
Пример #46
0
 public void AddMember(IBoardId board, IMemberId member, BoardMemberType type = BoardMemberType.Normal)
 {
     _restClient.Request(new BoardsAddMemberRequest(board, member, type));
 }
Пример #47
0
 public IEnumerable <Card> ForMember(IMemberId member, CardFilter filter = CardFilter.Open)
 {
     return(_restClient.Request <List <Card> >(new CardsForMemberRequest(member, filter)));
 }
Пример #48
0
 public OrganizationsForMemberRequest(IMemberId member, OrganizationFilter filter)
     : base(member, "organizations")
 {
     this.AddFilter(filter);
 }
Пример #49
0
 public static XamlParseError MemberNotDependencyProperty(ITextLocation lineInformation, IMemberId memberId)
 {
     return(XamlParseErrors.NewParseError(XamlErrorSeverity.Error, XamlErrorCode.MemberNotDependencyProperty, lineInformation, StringTable.ParserMemberNotDependencyProperty, memberId.Name));
 }
 public CardsAddMemberRequest(ICardId card, IMemberId member)
     : base(card, "members", Method.POST)
 {
     Guard.NotNull(member, "member");
     this.AddValue(member.GetMemberId());
 }
Пример #51
0
 public CardsForMemberRequest(IMemberId member, CardFilter filter)
     : base(member, "cards")
 {
     this.AddCommonCardParameters();
     this.AddFilter(filter);
 }
Пример #52
0
		public BoardsForMemberRequest(IMemberId member, BoardFilter filter)
			: base(member, "boards")
		{
			this.AddFilter(filter);
		}
Пример #53
0
 public Task AddMember(IBoardId board, IMemberId member, BoardMemberType type = BoardMemberType.Normal)
 {
     return _restClient.RequestAsync(new BoardsAddMemberRequest(board, member, type));
 }
Пример #54
0
 public IEnumerable<Action> ForMember(IMemberId member, IEnumerable<ActionType> filter = null, ISince since = null, Paging paging = null)
 {
     return _restClient.Request<List<Action>>(new ActionsForMemberRequest(member, since, paging, filter));
 }
 public Task <IEnumerable <Action> > ForMember(IMemberId member, IEnumerable <ActionType> filter = null, ISince since = null, Paging paging = null)
 {
     return(_restClient.RequestListAsync <Action>(new ActionsForMemberRequest(member, since, paging, filter)));
 }
Пример #56
0
 public MemberRequest(IMemberId member, string resource = "")
     : base("members/{memberIdOrUsername}/" + resource)
 {
     AddParameter("memberIdOrUsername", member.GetMemberId(), ParameterType.UrlSegment);
 }
Пример #57
0
 public BoardsForMemberRequest(IMemberId member, BoardFilter filter)
     : base(member, "boards")
 {
     this.AddFilter(filter);
 }
Пример #58
0
 public IEnumerable<Organization> GetByMember(IMemberId member, OrganizationFilter filter = OrganizationFilter.Default)
 {
     Guard.NotNull(member, "member");
     return _restClient.Request<List<Organization>>(new MemberOrganizationsRequest(member, filter));
 }