/// <summary> /// 重置属性 /// </summary> public void InitialProperties() { groupDesc = ""; groupName = ""; SelectedMember.Clear();//清空列表 FriendList.Clear(); EnableCreate = true; Snackbar = new SnackbarMessageQueue(); Task.Run(() => { Task.Delay(100); var friends = new DataOfFriends().GetFriendsList(); //填充好友列表 App.Current.Dispatcher.Invoke(() => { foreach (var item in friends) { if (item.toUserId == "10000") { continue; } FriendList.Add(item.ToMsgListItem()); } }); }); }
/// <summary> /// Method that receives messenger calls to do embedded functions /// </summary> /// <param name="member"></param> private void ReceiveMembership(MessageMemberModel member) { // For updating membership if (member.Selection == "Update") { if (!Memberships.Contains(member.Membership)) { // Using indexer. Memberships[Memberships.IndexOf(SelectedMember)] = member.Membership; } else if (!SelectedMember.Equals(member.Membership)) { // Notify user about duplicate membership Messenger.Default.Send <NotificationMessage>(new NotificationMessage($"{MemberAlreadyExistMsg}\n" + $"{MergingMembershipsMsg}")); // Removing outdated data using minus operator. Memberships -= SelectedMember; } } // For adding membership else if (member.Selection == "Add") { // Checks if membership is already in list. if (Memberships.Contains(member.Membership)) { // Notifies user that it exists then returns. Messenger.Default.Send <NotificationMessage>(new NotificationMessage(MemberAlreadyExistMsg)); return; } // Membership not found then add using add operator. Memberships += member.Membership; } // For deleting membership else if (member.Selection == "Delete") { // Confirms that membership is in list if (Memberships.Contains(member.Membership)) { // Removes found membership. Memberships.Remove(SelectedMember); Messenger.Default.Send(new NotificationMessage(DeleteMsg)); } } else if (member.Selection == "ListSelect") { return; } else { Messenger.Default.Send <NotificationMessage>(new NotificationMessage(MembershipNotFoundMsg)); return; } }
/// <summary> /// Appends member and context to builder. /// </summary> /// <param name="expression">Expression pointing to field or property to include.</param> /// <param name="context">Context associated with selected member.</param> /// <typeparam name="TMember">Type of selected field or property.</typeparam> /// <returns>Updated builder instance.</returns> protected TBuilder AppendExplicit <TMember>(Expression <Func <TTarget, TMember> > expression, TContext context) { var ctx = new MemberContext <TContext>(SelectedMember.Create(expression), context, ExplicitMember); _memberContexts.Remove(ctx); _memberContexts.Add(ctx); return(this as TBuilder); }
private void RenewMembershipExecution(object obj) { Membership membershipToAdd = new Membership() { MemberExpiry = EndOn, MemberFrom = StartOn, Person = SelectedMember }; SelectedMember.Memberships.Add(membershipToAdd); if (SelectedMember.IsValid()) { _repository.SaveAll(); } Memberships.Add(membershipToAdd); }
private async void DoRemoveUser() { if (SelectedMember == null) { MessageBox.Show("Please select a row first"); return; } var confirmMessage = $"Are you sure you want to remove {SelectedMember.FullName()} from committee?"; if (!ImHereMessageBox.ShowYesNo("Remove Member", confirmMessage)) { return; } var success = true; var errorMsg = ""; try { MembersList.Remove(SelectedMember); CurrentCommittee.Members = MembersList; AppModel.Entry(CurrentCommittee).State = EntityState.Modified; await AppModel.SaveChangesAsync(); } catch (Exception e) { success = false; errorMsg = e.Message; } if (success) { return; } ImHereMessageBox.ShowError("Error deleting row!", errorMsg); }
/// <summary> /// Determines a function to use for converting member value to string when one was not explicitly given. /// </summary> /// <param name="member">Member which value need to be converted to string.</param> /// <returns>Function returning string representation of a member value.</returns> protected override Func <object, string> GetImplicitContext(SelectedMember member) => ToStringFunctions.ToString;
/* アイコンを選択時 */ public void OnSelectMember() { Debug.Log("pushed"); string rarity_string = ""; if (this.rarity == "4") { rarity_string = "UR"; } else if (this.rarity == "3") { rarity_string = "SSR"; } else if (this.rarity == "2") { rarity_string = "SR"; } else if (this.rarity == "1") { rarity_string = "R"; } /* Selected Memberの表示を変更 */ Selected_Member.GetComponent <Image>().sprite = GetComponent <Image>().sprite; GameObject.Find("Envelope_Selected_Member").GetComponent <Image>().sprite = envelopeIcon[Int32.Parse(rarity)]; /* Selected Memberステータスの反映 */ SelectedMember playerObj = Selected_Member.GetComponent <SelectedMember>(); playerObj.id = this.id; playerObj.rarity = this.rarity; playerObj.name = this.name; playerObj.series = this.series; playerObj.fullimgurl_0 = this.fullimgurl_0; playerObj.info = this.info; playerObj.status_s = this.status_s; playerObj.status_p = this.status_p; playerObj.status_c = this.status_c; playerObj.type = this.type; if (rarity_string == "R") { GameObject.Find("Text_Select_Member").GetComponent <Text>().text = "R" + this.series; } else { GameObject.Find("Text_Select_Member").GetComponent <Text>().text = this.series; } if (this.series == "マリン編") { player_anim.SetBool("State_Shot", true); player_anim.SetBool("State_Fly", false); player_anim.SetBool("State_China", false); } else if (this.series == "ホワイトデー編") { player_anim.SetBool("State_Shot", false); player_anim.SetBool("State_Fly", true); player_anim.SetBool("State_China", false); } else if (this.series == "チャイナドレス編") { player_anim.SetBool("State_Shot", false); player_anim.SetBool("State_Fly", false); player_anim.SetBool("State_China", true); } else { player_anim.SetBool("State_Shot", false); player_anim.SetBool("State_Fly", false); player_anim.SetBool("State_China", false); } Debug.Log("[Selected_Member]" + playerObj.name + "(" + playerObj.series + "):" + playerObj.type + "," + playerObj.status_s + "," + playerObj.status_p + "," + playerObj.status_c); }
/// <summary> /// Returns default comparison function (<see cref="object.Equals(object)"/>). /// </summary> protected override EqualityFunc GetImplicitContext(SelectedMember member) { return(Equals); }
/// <summary> /// Selects function computing hashcode for given member based on member type. /// </summary> /// <param name="member">Field or property to compute hashcode for.</param> /// <returns>Function computing hashcode for value of given member.</returns> /// <remarks> /// It has special treatment for sequences (<see cref="IEnumerable"/>) by computing /// hashcode element-wise. It uses objects' hashcode function in other cases. /// Either way returned function handles null values correctly. /// </remarks> protected override HashCodeFunc GetImplicitContext(SelectedMember member) { return(o => o?.GetHashCode() ?? 0); }
/// <summary> /// Includes referenced field or property into members available to object being built. /// </summary> /// <param name="fieldOrPropertyGetter">Expression pointing to field or property to include.</param> /// <typeparam name="TMember">Type of selected field or property.</typeparam> /// <returns>Updated builder instance.</returns> /// <exception cref="ArgumentException"> /// <paramref name="fieldOrPropertyGetter"/> is not field or property accessor expression. /// </exception> public TBuilder Append <TMember>(Expression <Func <TTarget, TMember> > fieldOrPropertyGetter) { _memberContexts.Add(CreateImplicitMemberContext(SelectedMember.Create(fieldOrPropertyGetter))); return(this as TBuilder); }
/// <summary> /// Creates instance of a context for selected member when one was no specified explicitly. /// </summary> /// <param name="member">Selected property or field of <typeparamref name="TTarget"/>.</param> /// <returns>Context to be associated with given member.</returns> protected abstract TContext GetImplicitContext(SelectedMember member);
private MemberContext <TContext> CreateImplicitMemberContext(SelectedMember member) { return(new MemberContext <TContext>(member, GetImplicitContext(member), Implicit)); }
/* アイコンを選択時 */ public void OnSelectMember() { // 所有していれば選択へ、所有していなければ何もしない if (possesion) { Debug.Log("pushed"); string rarity_string = ""; if (this.rarity == "4") { rarity_string = "UR"; } else if (this.rarity == "3") { rarity_string = "SSR"; } else if (this.rarity == "2") { rarity_string = "SR"; } else if (this.rarity == "1") { rarity_string = "R"; } /* Selected Memberの表示を変更 */ Selected_Member.GetComponent <Image>().sprite = GetComponent <Image>().sprite; Selected_Memeber_inAction.GetComponent <Image>().sprite = GetComponent <Image>().sprite; GameObject.Find("Envelope_Selected_Member_" + action_type).GetComponent <Image>().sprite = envelopeIcon[Int32.Parse(rarity)]; GameObject.Find("envelope_Selected_MemberRoom_" + action_type).GetComponent <Image>().sprite = envelopeIcon[Int32.Parse(rarity)]; /* Selected Memberステータスの反映 */ SelectedMember playerObj = Selected_Member.GetComponent <SelectedMember>(); playerObj.id = this.id; playerObj.rarity = this.rarity; playerObj.name = this.name; playerObj.series = this.series; playerObj.fullimgurl_0 = this.fullimgurl_0; playerObj.info = this.info; playerObj.status_s = this.status_s; playerObj.status_p = this.status_p; playerObj.status_c = this.status_c; playerObj.type = this.type; if (rarity_string == "R") { Text_Selected_Member.GetComponent <Text>().text = "R" + this.series; } else { Text_Selected_Member.GetComponent <Text>().text = this.series; } // ActionPlayerのStateを変更 changePlayerState(); Debug.Log("[Selected_Member]" + playerObj.name + "(" + playerObj.series + "):" + playerObj.type + "," + playerObj.status_s + "," + playerObj.status_p + "," + playerObj.status_c); transform.parent.gameObject.GetComponent <Canvas>().enabled = false; GameObject.Find("BGM").GetComponent <BGM>().changeBGM(); } }