コード例 #1
0
 private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
 {
     if (e.RequestID == GroupRequestID) {
         StringBuilder sb = new StringBuilder();
         sb.AppendLine();
         sb.AppendFormat("GroupMembers: RequestID {0}", e.RequestID).AppendLine();
         sb.AppendFormat("GroupMembers: GroupUUID {0}", GroupUUID).AppendLine();
         sb.AppendFormat("GroupMembers: GroupName {0}", GroupName).AppendLine();
         if (e.Members.Count > 0)
             foreach (KeyValuePair<UUID, GroupMember> member in e.Members)
                 sb.AppendFormat("GroupMembers: MemberUUID {0}", member.Key.ToString()).AppendLine();
         sb.AppendFormat("GroupMembers: MemberCount {0}", e.Members.Count).AppendLine();
         Console.WriteLine(sb.ToString());
         GroupsEvent.Set();
     } 
 }
コード例 #2
0
ファイル: TestClient.cs プロジェクト: RavenB/gridsearch
        private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
        {
            if (e.RequestID != GroupMembersRequestID) return;

            GroupMembers = e.Members;
        }
コード例 #3
0
 /// <summary>Raises the GroupMembers event</summary>
 /// <param name="e">A GroupMembersEventArgs object containing the
 /// data returned from the simulator</param>
 protected virtual void OnGroupMembersReply(GroupMembersReplyEventArgs e)
 {
     EventHandler<GroupMembersReplyEventArgs> handler = m_GroupMembers;
     if (handler != null)
         handler(this, e);
 }
コード例 #4
0
ファイル: frmGive.cs プロジェクト: NullProjects/METAbolt
        private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
        {
            Members = e.Members;

            BeginInvoke((MethodInvoker)delegate
            {
                UpdateMembers();
            });
        }
コード例 #5
0
        void Groups_GroupMembersReply(object sender, GroupMembersReplyEventArgs e)
        {
            if (groupMembersRequest != e.RequestID) return;

            if (InvokeRequired)
            {
                BeginInvoke(new MethodInvoker(() => Groups_GroupMembersReply(sender, e)));
                return;
            }

            lvwGeneralMembers.BeginUpdate();
            List<ListViewItem> newItems = new List<ListViewItem>();
            List<ListViewItem> memberDetails = new List<ListViewItem>();

            foreach (GroupMember baseMember in e.Members.Values)
            {
                EnhancedGroupMember member = new EnhancedGroupMember(baseMember);
                string name;

                name = instance.Names.Get(member.Base.ID);

                {
                    ListViewItem item = new ListViewItem(name);
                    item.Tag = member;
                    item.Name = member.Base.ID.ToString();
                    item.SubItems.Add(new ListViewItem.ListViewSubItem(item, member.Base.Title));
                    if (member.LastOnline != DateTime.MinValue)
                    {
                        item.SubItems.Add(new ListViewItem.ListViewSubItem(item, member.Base.OnlineStatus));
                    }

                    newItems.Add(item);
                }

                if (isMember)
                {
                    ListViewItem item = new ListViewItem(name);
                    item.Tag = member;
                    item.Name = member.Base.ID.ToString();
                    item.SubItems.Add(new ListViewItem.ListViewSubItem(item, member.Base.Contribution.ToString()));
                    if (member.LastOnline != DateTime.MinValue)
                    {
                        item.SubItems.Add(new ListViewItem.ListViewSubItem(item, member.Base.OnlineStatus));
                    }
                    memberDetails.Add(item);
                }

            }

            lvwGeneralMembers.Items.AddRange(newItems.ToArray());
            lvwGeneralMembers.Sort();
            lvwGeneralMembers.EndUpdate();

            if (isMember && memberDetails.Count > 0)
            {
                lvwMemberDetails.BeginUpdate();
                lvwMemberDetails.Items.AddRange(memberDetails.ToArray());
                lvwMemberDetails.Sort();
                lvwMemberDetails.EndUpdate();
            }
        }
コード例 #6
0
        void Groups_GroupMembersReply(object sender, GroupMembersReplyEventArgs e)
        {
            if (e.GroupID != this.groupkey)
                return;

            group_members = e.Members;

            trysetcurrenttitle();

            Logger.Log("All group members recieved",Helpers.LogLevel.Debug);
            name_poll = false;

            store_roles_list.Foreach(delegate(Gtk.TreeModel mod, Gtk.TreePath path, Gtk.TreeIter iter)
            {
                UUID id = (UUID)store_roles_list.GetValue(iter, 3);
                List<KeyValuePair<UUID, UUID>> roleslist = new List<KeyValuePair<UUID, UUID>>();
                if (id == UUID.Zero)
                {
                    //if(MainClass.client.Groups.GroupMembersCaches.ContainsKey(request_members))
                    {
                        int count = group_members.Count;
                        store_roles_list.SetValue(iter, 2, count.ToString());
                    }
                    return true;
                }
                return false;
            });

            return;
        }
コード例 #7
0
ファイル: Events.cs プロジェクト: AlphaStaxLLC/AjaxLife
 public void Groups_GroupMembersReply(object sender, GroupMembersReplyEventArgs e)
 {
     List<Hashtable> list = new List<Hashtable>();
     foreach (KeyValuePair<UUID,GroupMember> memberpair in e.Members)
     {
         GroupMember member = memberpair.Value;
         Hashtable hash = new Hashtable();
         hash.Add("UUID", memberpair.Key);
         hash.Add("Contribution", member.Contribution);
         hash.Add("IsOwner", member.IsOwner);
         hash.Add("ID", member.ID);
         hash.Add("OnlineStatus", member.OnlineStatus);
         hash.Add("Powers", member.Powers);
         hash.Add("Title", member.Title);
         list.Add(hash);
     }
     Hashtable message = new Hashtable();
     message.Add("MessageType", "GroupMembers");
     message.Add("MemberList", list);
     message.Add("GroupID", e.GroupID);
     enqueue(message);
 }
コード例 #8
0
ファイル: AllEvents.cs プロジェクト: drzo/opensim4opencog
 public virtual void Groups_OnGroupMembers(object sender, GroupMembersReplyEventArgs e)
 {
     OnEvent("On-Group-Members", paramNamesOnGroupMembers, paramTypesOnGroupMembers, 
         e);
 }
コード例 #9
0
ファイル: BotClient.cs プロジェクト: drzo/opensim4opencog
 private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
 {
     //TODO MAKE DEBUG MESSAGE  WriteLine(String.Format("Got {0} group members.", members.Count));
     GroupMembers = e.Members;
 }
コード例 #10
0
        // Seperate thread
        private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
        {
            if (e.RequestID == GroupRequestID)
            {
                client.Groups.GroupMembersReply -= new EventHandler<GroupMembersReplyEventArgs>(GroupMembersHandler);

                if (igroup != e.GroupID)
                {
                    return;
                }

                invitecounter += 1;

                if (e.Members.Count > 0)
                {
                    GroupMember gmember;

                    if (e.Members.TryGetValue(iperson, out gmember))
                    {
                        invitecounter = 0;

                        if (!ismember)
                        {
                            //DateTime dte = DateTime.Now;

                            //dte = this.instance.State.GetTimeStamp(dte);

                            //if (instance.Config.CurrentConfig.UseSLT)
                            //{
                            //    string _timeZoneId = "Pacific Standard Time";
                            //    DateTime startTime = DateTime.UtcNow;
                            //    TimeZoneInfo tst = TimeZoneInfo.FindSystemTimeZoneById(_timeZoneId);
                            //    dte = TimeZoneInfo.ConvertTime(startTime, TimeZoneInfo.Utc, tst);
                            //}

                            string prefix = instance.SetTime();    //dte.ToString("[HH:mm] ");
                            string gname = instance.State.GroupStore[igroup];

                            //textPrinter.SetSelectionForeColor(Color.Gray);
                           // textPrinter.PrintTextLine(prefix + "\n\n[ GroupMan Pro ] @ " + gmanlocation + "\n   Invite request for group " + gname.ToUpper(CultureInfo.CurrentCulture) + " has been ignored. " + gavname + " (" + iperson.ToString() + ") is already a member.");

                            string Msg = "\n\n[ GroupMan Pro ] @ " + gmanlocation + "\n   Invite request for group " + gname.ToUpper(CultureInfo.CurrentCulture) + " has been ignored. " + gavname + " (" + iperson.ToString() + ") is already a member.";

                            ChatBufferItem ready = new ChatBufferItem( DateTime.Now, Msg, ChatBufferTextStyle.StatusGray);

                            ProcessBufferItem(ready, true);

                            return;
                        }
                        else
                        {
                            ismember = false;
                            GivePresent();
                            return;
                        }
                    }
                }

                if (invitecounter > 1)
                {
                    invitecounter = 0;
                    ismember = false;
                    aTimer.Stop();
                    aTimer.Enabled = false;
                    return;
                }

                if (invitecounter == 1)
                {
                    WriteToChat();
                }
            }
        }
コード例 #11
0
ファイル: frmGroupInfo.cs プロジェクト: KSLcom/Aurora-LibOMV
        private void GroupMembersHandler(object sender, GroupMembersReplyEventArgs e)
        {
            Members = e.Members;

            UpdateMembers();
        }