OSDN Git Service

Update group code to new event handlers.
authorLatif Khalifa <latifer@streamgrid.net>
Wed, 21 Oct 2009 03:56:04 +0000 (03:56 +0000)
committerLatif Khalifa <latifer@streamgrid.net>
Wed, 21 Oct 2009 03:56:04 +0000 (03:56 +0000)
git-svn-id: https://radegast.googlecode.com/svn/trunk@356 f7a694da-4d33-11de-9ad6-1127a62b9fcd

Radegast/Core/RadegastInstance.cs
Radegast/GUI/Consoles/GroupDetails.cs
Radegast/GUI/Consoles/GroupsConsole.cs

index fc8146f..6fb97bc 100644 (file)
@@ -196,10 +196,10 @@ namespace Radegast
 \r
             groups = new Dictionary<UUID, Group>();\r
 \r
-            client.Groups.OnCurrentGroups += new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
-            client.Groups.OnGroupLeft += new GroupManager.GroupLeftCallback(Groups_OnGroupLeft);\r
-            client.Groups.OnGroupDropped += new GroupManager.GroupDroppedCallback(Groups_OnGroupDropped);\r
-            client.Groups.OnGroupJoined += new GroupManager.GroupJoinedCallback(Groups_OnGroupJoined);\r
+            client.Groups.CurrentGroups += new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
+            client.Groups.GroupLeaveReply += new EventHandler<GroupOperationEventArgs>(Groups_GroupsChanged);\r
+            client.Groups.GroupDropped += new EventHandler<GroupDroppedEventArgs>(Groups_GroupsChanged);\r
+            client.Groups.GroupJoinedReply += new EventHandler<GroupOperationEventArgs>(Groups_GroupsChanged);\r
             client.Avatars.OnAvatarNames += new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
             client.Network.OnConnected += new NetworkManager.ConnectedCallback(Network_OnConnected);\r
             mainForm.Load += new EventHandler(mainForm_Load);\r
@@ -210,10 +210,10 @@ namespace Radegast
         {\r
             if (client != null)\r
             {\r
-                client.Groups.OnCurrentGroups -= new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
-                client.Groups.OnGroupLeft -= new GroupManager.GroupLeftCallback(Groups_OnGroupLeft);\r
-                client.Groups.OnGroupDropped -= new GroupManager.GroupDroppedCallback(Groups_OnGroupDropped);\r
-                client.Groups.OnGroupJoined -= new GroupManager.GroupJoinedCallback(Groups_OnGroupJoined);\r
+                client.Groups.CurrentGroups -= new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
+                client.Groups.GroupLeaveReply -= new EventHandler<GroupOperationEventArgs>(Groups_GroupsChanged);\r
+                client.Groups.GroupDropped -= new EventHandler<GroupDroppedEventArgs>(Groups_GroupsChanged);\r
+                client.Groups.GroupJoinedReply -= new EventHandler<GroupOperationEventArgs>(Groups_GroupsChanged);\r
                 client.Avatars.OnAvatarNames -= new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
                 client.Network.OnConnected -= new NetworkManager.ConnectedCallback(Network_OnConnected);\r
             }\r
@@ -456,17 +456,7 @@ namespace Radegast
             }\r
         }\r
 \r
-        void Groups_OnGroupJoined(UUID groupID, bool success)\r
-        {\r
-            client.Groups.RequestCurrentGroups();\r
-        }\r
-\r
-        void Groups_OnGroupLeft(UUID groupID, bool success)\r
-        {\r
-            client.Groups.RequestCurrentGroups();\r
-        }\r
-\r
-        void Groups_OnGroupDropped(UUID groupID)\r
+        void Groups_GroupsChanged(object sender, EventArgs e)\r
         {\r
             client.Groups.RequestCurrentGroups();\r
         }\r
@@ -499,9 +489,9 @@ namespace Radegast
             }\r
         }\r
 \r
-        void Groups_OnCurrentGroups(Dictionary<UUID, Group> gr)\r
+        void Groups_CurrentGroups(object sender, CurrentGroupsEventArgs e)\r
         {\r
-            this.groups = gr;\r
+            this.groups = e.Groups;\r
         }\r
 \r
         private void InitializeLoggingAndConfig()\r
index fff86de..20ad546 100644 (file)
@@ -69,26 +69,29 @@ namespace Radegast
             lvwNoticeArchive.ListViewItemSorter = new GroupNoticeSorter();\r
 \r
             // Callbacks\r
-            client.Groups.OnGroupTitles += new GroupManager.GroupTitlesCallback(Groups_OnGroupTitles);\r
-            client.Groups.OnGroupMembers += new GroupManager.GroupMembersCallback(Groups_OnGroupMembers);\r
-            client.Groups.OnGroupProfile += new GroupManager.GroupProfileCallback(Groups_OnGroupProfile);\r
-            client.Groups.OnCurrentGroups += new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
-            client.Avatars.OnAvatarNames += new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
-            client.Groups.OnGroupNoticesList += new GroupManager.GroupNoticesListCallback(Groups_OnGroupNoticesList);\r
+            client.Groups.GroupTitlesReply += new EventHandler<GroupTitlesReplyEventArgs>(Groups_GroupTitlesReply);\r
+            client.Groups.GroupMembersReply += new EventHandler<GroupMembersReplyEventArgs>(Groups_GroupMembersReply);\r
+            client.Groups.GroupProfile += new EventHandler<GroupProfileEventArgs>(Groups_GroupProfile);\r
+            client.Groups.CurrentGroups += new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
+            client.Groups.GroupNoticesListReply += new EventHandler<GroupNoticesListReplyEventArgs>(Groups_GroupNoticesListReply);\r
             client.Self.IM += new EventHandler<InstantMessageEventArgs>(Self_IM);\r
+\r
+            client.Avatars.OnAvatarNames += new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
+\r
             RefreshControlsAvailability();\r
             RefreshGroupInfo();\r
         }\r
 \r
         void GroupDetails_Disposed(object sender, EventArgs e)\r
         {\r
-            client.Groups.OnGroupTitles -= new GroupManager.GroupTitlesCallback(Groups_OnGroupTitles);\r
-            client.Groups.OnGroupMembers -= new GroupManager.GroupMembersCallback(Groups_OnGroupMembers);\r
-            client.Groups.OnGroupProfile -= new GroupManager.GroupProfileCallback(Groups_OnGroupProfile);\r
-            client.Groups.OnCurrentGroups -= new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
-            client.Avatars.OnAvatarNames -= new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
-            client.Groups.OnGroupNoticesList -= new GroupManager.GroupNoticesListCallback(Groups_OnGroupNoticesList);\r
+            client.Groups.GroupTitlesReply += new EventHandler<GroupTitlesReplyEventArgs>(Groups_GroupTitlesReply);\r
+            client.Groups.GroupMembersReply += new EventHandler<GroupMembersReplyEventArgs>(Groups_GroupMembersReply);\r
+            client.Groups.GroupProfile += new EventHandler<GroupProfileEventArgs>(Groups_GroupProfile);\r
+            client.Groups.CurrentGroups += new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
+            client.Groups.GroupNoticesListReply += new EventHandler<GroupNoticesListReplyEventArgs>(Groups_GroupNoticesListReply);\r
             client.Self.IM -= new EventHandler<InstantMessageEventArgs>(Self_IM);\r
+\r
+            client.Avatars.OnAvatarNames -= new AvatarManager.AvatarNamesCallback(Avatars_OnAvatarNames);\r
         }\r
 \r
         #region Network callbacks\r
@@ -131,51 +134,49 @@ namespace Radegast
             txtNotice.Text = text;\r
         }\r
 \r
-        void Groups_OnGroupNoticesList(UUID groupID, GroupNoticeList notice)\r
+        void Groups_GroupNoticesListReply(object sender, GroupNoticesListReplyEventArgs e)\r
         {\r
-            if (groupID != group.ID) return;\r
+            if (e.GroupID != group.ID) return;\r
 \r
             if (InvokeRequired)\r
             {\r
-                BeginInvoke(new MethodInvoker(() => Groups_OnGroupNoticesList(groupID, notice)));\r
+                BeginInvoke(new MethodInvoker(() => Groups_GroupNoticesListReply(sender, e)));\r
                 return;\r
             }\r
             \r
             lvwNoticeArchive.BeginUpdate();\r
 \r
             ListViewItem item = new ListViewItem();\r
-            item.SubItems.Add(notice.Subject);\r
-            item.SubItems.Add(notice.FromName);\r
-            item.SubItems.Add(Utils.UnixTimeToDateTime(notice.Timestamp).ToShortDateString());\r
+            item.SubItems.Add(e.Notices.Subject);\r
+            item.SubItems.Add(e.Notices.FromName);\r
+            item.SubItems.Add(Utils.UnixTimeToDateTime(e.Notices.Timestamp).ToShortDateString());\r
 \r
-            if (notice.HasAttachment)\r
+            if (e.Notices.HasAttachment)\r
             {\r
-                item.ImageIndex = InventoryConsole.GetItemImageIndex(notice.AssetType.ToString().ToLower());\r
+                item.ImageIndex = InventoryConsole.GetItemImageIndex(e.Notices.AssetType.ToString().ToLower());\r
             }\r
 \r
-            item.Tag = notice;\r
+            item.Tag = e.Notices;\r
 \r
             lvwNoticeArchive.Items.Add(item);\r
 \r
             lvwNoticeArchive.EndUpdate();\r
         }\r
 \r
-        void Groups_OnCurrentGroups(Dictionary<UUID, Group> groups)\r
+        void Groups_CurrentGroups(object sender, CurrentGroupsEventArgs e)\r
         {\r
             BeginInvoke(new MethodInvoker(RefreshControlsAvailability));\r
         }\r
 \r
-        void Groups_OnGroupProfile(Group group)\r
+        void Groups_GroupProfile(object sender, GroupProfileEventArgs e)\r
         {\r
+            Group group = e.Group;\r
+\r
             if (group.ID != this.group.ID) return;\r
 \r
             if (InvokeRequired)\r
             {\r
-                BeginInvoke(new MethodInvoker(delegate()\r
-                    {\r
-                        Groups_OnGroupProfile(group);\r
-                    }\r
-                ));\r
+                BeginInvoke(new MethodInvoker(() => Groups_GroupProfile(sender, e)));\r
                 return;\r
             }\r
 \r
@@ -247,21 +248,17 @@ namespace Radegast
             lvwGeneralMembers.EndUpdate();\r
         }\r
 \r
-        void Groups_OnGroupTitles(UUID requestID, UUID groupID, Dictionary<UUID, GroupTitle> titles)\r
+        void Groups_GroupTitlesReply(object sender, GroupTitlesReplyEventArgs e)\r
         {\r
-            if (groupTitlesRequest != requestID) return;\r
+            if (groupTitlesRequest != e.RequestID) return;\r
 \r
             if (InvokeRequired)\r
             {\r
-                BeginInvoke(new MethodInvoker(delegate()\r
-                    {\r
-                        Groups_OnGroupTitles(requestID, groupID, titles);\r
-                    }\r
-                ));\r
+                BeginInvoke(new MethodInvoker(() => Groups_GroupTitlesReply(sender, e)));\r
                 return;\r
             }\r
 \r
-            this.titles = titles;\r
+            this.titles = e.Titles;\r
 \r
             foreach (GroupTitle title in titles.Values)\r
             {\r
@@ -275,17 +272,13 @@ namespace Radegast
             cbxActiveTitle.SelectedIndexChanged += cbxActiveTitle_SelectedIndexChanged;\r
         }\r
 \r
-        void Groups_OnGroupMembers(UUID requestID, UUID groupID, Dictionary<UUID, GroupMember> members)\r
+        void Groups_GroupMembersReply(object sender, GroupMembersReplyEventArgs e)\r
         {\r
-            if (groupMembersRequest != requestID) return;\r
+            if (groupMembersRequest != e.RequestID) return;\r
 \r
             if (InvokeRequired)\r
             {\r
-                BeginInvoke(new MethodInvoker(delegate()\r
-                    {\r
-                        Groups_OnGroupMembers(requestID, groupID, members);\r
-                    }\r
-                ));\r
+                BeginInvoke(new MethodInvoker(() => Groups_GroupMembersReply(sender, e)));\r
                 return;\r
             }\r
 \r
@@ -293,7 +286,7 @@ namespace Radegast
             List<ListViewItem> newItems = new List<ListViewItem>();\r
             List<UUID> unknownNames = new List<UUID>();\r
 \r
-            foreach (GroupMember baseMember in members.Values)\r
+            foreach (GroupMember baseMember in e.Members.Values)\r
             {\r
                 EnhancedGroupMember member = new EnhancedGroupMember(baseMember);\r
                 string name;\r
@@ -363,7 +356,7 @@ namespace Radegast
         private void RefreshGroupNotices()\r
         {\r
             lvwNoticeArchive.Items.Clear();\r
-            client.Groups.RequestGroupNoticeList(group.ID);\r
+            client.Groups.RequestGroupNoticesList(group.ID);\r
         }\r
 \r
         private void RefreshGroupInfo()\r
index 85d896d..0fe99a3 100644 (file)
@@ -46,17 +46,17 @@ namespace Radegast
             Disposed += new EventHandler(GroupsDialog_Disposed);\r
             this.client = instance.Client;\r
             this.instance = instance;\r
-            client.Groups.OnCurrentGroups += new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
+            client.Groups.CurrentGroups += new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
             client.Groups.RequestCurrentGroups();\r
             UpdateDisplay();\r
         }\r
 \r
         void GroupsDialog_Disposed(object sender, EventArgs e)\r
         {\r
-            client.Groups.OnCurrentGroups -= new GroupManager.CurrentGroupsCallback(Groups_OnCurrentGroups);\r
+            client.Groups.CurrentGroups -= new EventHandler<CurrentGroupsEventArgs>(Groups_CurrentGroups);\r
         }\r
 \r
-        void Groups_OnCurrentGroups(Dictionary<UUID, Group> groups)\r
+        void Groups_CurrentGroups(object sender, CurrentGroupsEventArgs e)\r
         {\r
             BeginInvoke(new MethodInvoker(UpdateDisplay));\r
         }\r