public CardContext(string id, TrelloAuthorization auth) : base(auth) { Data.Id = id; Actions = new ReadOnlyActionCollection(typeof(Card), () => Data.Id, auth); Actions.Refreshed += (s, e) => OnMerged(new[] { nameof(Actions) }); Attachments = new AttachmentCollection(() => Data.Id, auth); Attachments.Refreshed += (s, e) => OnMerged(new[] { nameof(Attachments) }); CheckLists = new CheckListCollection(() => Data.Id, auth); CheckLists.Refreshed += (s, e) => OnMerged(new[] { nameof(CheckLists) }); Comments = new CommentCollection(() => Data.Id, auth); Comments.Refreshed += (s, e) => OnMerged(new[] { nameof(Comments) }); CustomFields = new ReadOnlyCustomFieldCollection(() => Data.Id, auth); CustomFields.Refreshed += (s, e) => OnMerged(new[] { nameof(CustomFields) }); Labels = new CardLabelCollection(this, auth); Labels.Refreshed += (s, e) => OnMerged(new[] { nameof(Labels) }); Members = new MemberCollection(() => Data.Id, auth); Members.Refreshed += (s, e) => OnMerged(new[] { nameof(Members) }); PowerUpData = new ReadOnlyPowerUpDataCollection(EntityRequestType.Card_Read_PowerUpData, () => Data.Id, auth); PowerUpData.Refreshed += (s, e) => OnMerged(new[] { nameof(PowerUpData) }); Stickers = new CardStickerCollection(() => Data.Id, auth); Stickers.Refreshed += (s, e) => OnMerged(new[] { nameof(Stickers) }); VotingMembers = new ReadOnlyMemberCollection(EntityRequestType.Card_Read_MembersVoted, () => Data.Id, auth); VotingMembers.Refreshed += (s, e) => OnMerged(new[] { nameof(VotingMembers) }); BadgesContext = new BadgesContext(Auth); Data.Badges = BadgesContext.Data; }
public static Label ByName(this CardLabelCollection labels, string name) { foreach (Label label in labels) { if (label.Name.Equals(name)) { return(label); } } return(null); }
public void SetCurrentCard(object sender, OpenReadCompletedEventArgs e) { DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(CardType)); CardType card = serializer.ReadObject(e.Result) as CardType; CardCommentCollection.Clear(); CardMemberCollection.Clear(); CardLabelCollection.Clear(); card.Actions.ToList().ForEach(CardCommentCollection.Add); card.Members.ToList().ForEach(CardMemberCollection.Add); card.Labels.ToList().ForEach(CardLabelCollection.Add); IsLoading = false; Visible = "Collapsed"; }