diff options
Diffstat (limited to 'OpenSim/Region')
4 files changed, 12 insertions, 25 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Dialog/DialogModule.cs b/OpenSim/Region/CoreModules/Avatar/Dialog/DialogModule.cs index c31266c..da38ede 100644 --- a/OpenSim/Region/CoreModules/Avatar/Dialog/DialogModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/Dialog/DialogModule.cs | |||
@@ -132,14 +132,6 @@ namespace OpenSim.Region.CoreModules.Avatar.Dialog | |||
132 | sp.ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned, message, url); | 132 | sp.ControllingClient.SendLoadURL(objectName, objectID, ownerID, groupOwned, message, url); |
133 | } | 133 | } |
134 | 134 | ||
135 | public void SendNotificationToUsersInEstate( | ||
136 | UUID fromAvatarID, string fromAvatarName, string message) | ||
137 | { | ||
138 | // TODO: This does not yet do what it says on the tin - it only sends the message to users in the same | ||
139 | // region as the sending avatar. | ||
140 | SendNotificationToUsersInRegion(fromAvatarID, fromAvatarName, message); | ||
141 | } | ||
142 | |||
143 | public void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid) | 135 | public void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid) |
144 | { | 136 | { |
145 | UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerid); | 137 | UserAccount account = m_scene.UserAccountService.GetUserAccount(m_scene.RegionInfo.ScopeID, ownerid); |
diff --git a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs index dcc66ca..abd0fcb 100644 --- a/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs +++ b/OpenSim/Region/CoreModules/World/Estate/EstateManagementModule.cs | |||
@@ -50,6 +50,7 @@ namespace OpenSim.Region.CoreModules.World.Estate | |||
50 | 50 | ||
51 | public event ChangeDelegate OnRegionInfoChange; | 51 | public event ChangeDelegate OnRegionInfoChange; |
52 | public event ChangeDelegate OnEstateInfoChange; | 52 | public event ChangeDelegate OnEstateInfoChange; |
53 | public event MessageDelegate OnEstateMessage; | ||
53 | 54 | ||
54 | #region Packet Data Responders | 55 | #region Packet Data Responders |
55 | 56 | ||
@@ -440,10 +441,7 @@ namespace OpenSim.Region.CoreModules.World.Estate | |||
440 | private void SendEstateBlueBoxMessage( | 441 | private void SendEstateBlueBoxMessage( |
441 | IClientAPI remote_client, UUID invoice, UUID senderID, UUID sessionID, string senderName, string message) | 442 | IClientAPI remote_client, UUID invoice, UUID senderID, UUID sessionID, string senderName, string message) |
442 | { | 443 | { |
443 | IDialogModule dm = m_scene.RequestModuleInterface<IDialogModule>(); | 444 | TriggerEstateMessage(senderID, senderName, message); |
444 | |||
445 | if (dm != null) | ||
446 | dm.SendNotificationToUsersInEstate(senderID, senderName, message); | ||
447 | } | 445 | } |
448 | 446 | ||
449 | private void handleEstateDebugRegionRequest(IClientAPI remote_client, UUID invoice, UUID senderID, bool scripted, bool collisionEvents, bool physics) | 447 | private void handleEstateDebugRegionRequest(IClientAPI remote_client, UUID invoice, UUID senderID, bool scripted, bool collisionEvents, bool physics) |
@@ -1177,5 +1175,13 @@ namespace OpenSim.Region.CoreModules.World.Estate | |||
1177 | if (change != null) | 1175 | if (change != null) |
1178 | change(m_scene.RegionInfo.RegionID); | 1176 | change(m_scene.RegionInfo.RegionID); |
1179 | } | 1177 | } |
1178 | |||
1179 | protected void TriggerEstateMessage(UUID fromID, string fromName, string message) | ||
1180 | { | ||
1181 | MessageDelegate onmessage = OnEstateMessage; | ||
1182 | |||
1183 | if (onmessage != null) | ||
1184 | onmessage(m_scene.RegionInfo.RegionID, fromID, fromName, message); | ||
1185 | } | ||
1180 | } | 1186 | } |
1181 | } | 1187 | } |
diff --git a/OpenSim/Region/Framework/Interfaces/IDialogModule.cs b/OpenSim/Region/Framework/Interfaces/IDialogModule.cs index 35b4b63..be9764a 100644 --- a/OpenSim/Region/Framework/Interfaces/IDialogModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IDialogModule.cs | |||
@@ -120,19 +120,6 @@ namespace OpenSim.Region.Framework.Interfaces | |||
120 | void SendNotificationToUsersInRegion(UUID fromAvatarID, string fromAvatarName, string message); | 120 | void SendNotificationToUsersInRegion(UUID fromAvatarID, string fromAvatarName, string message); |
121 | 121 | ||
122 | /// <summary> | 122 | /// <summary> |
123 | /// Send a notification to all users in the estate. This notification should remain around until the | ||
124 | /// user explicitly dismisses it. | ||
125 | /// </summary> | ||
126 | /// | ||
127 | /// On the Linden Labs Second Client (as of 1.21), this is a big blue box message on the upper right of the | ||
128 | /// screen. | ||
129 | /// | ||
130 | /// <param name="fromAvatarID">The user sending the message</param> | ||
131 | /// <param name="fromAvatarName">The name of the user doing the sending</param> | ||
132 | /// <param name="message">The message being sent to the user</param> | ||
133 | void SendNotificationToUsersInEstate(UUID fromAvatarID, string fromAvatarName, string message); | ||
134 | |||
135 | /// <summary> | ||
136 | /// Send a textbox entry for the client to respond to | 123 | /// Send a textbox entry for the client to respond to |
137 | /// </summary> | 124 | /// </summary> |
138 | void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid); | 125 | void SendTextBoxToUser(UUID avatarid, string message, int chatChannel, string name, UUID objectid, UUID ownerid); |
diff --git a/OpenSim/Region/Framework/Interfaces/IEstateModule.cs b/OpenSim/Region/Framework/Interfaces/IEstateModule.cs index 329c3f5..c850f7f 100644 --- a/OpenSim/Region/Framework/Interfaces/IEstateModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IEstateModule.cs | |||
@@ -30,11 +30,13 @@ using OpenMetaverse; | |||
30 | namespace OpenSim.Region.Framework.Interfaces | 30 | namespace OpenSim.Region.Framework.Interfaces |
31 | { | 31 | { |
32 | public delegate void ChangeDelegate(UUID regionID); | 32 | public delegate void ChangeDelegate(UUID regionID); |
33 | public delegate void MessageDelegate(UUID regionID, UUID fromID, string fromName, string message); | ||
33 | 34 | ||
34 | public interface IEstateModule : IRegionModule | 35 | public interface IEstateModule : IRegionModule |
35 | { | 36 | { |
36 | event ChangeDelegate OnRegionInfoChange; | 37 | event ChangeDelegate OnRegionInfoChange; |
37 | event ChangeDelegate OnEstateInfoChange; | 38 | event ChangeDelegate OnEstateInfoChange; |
39 | event MessageDelegate OnEstateMessage; | ||
38 | 40 | ||
39 | uint GetRegionFlags(); | 41 | uint GetRegionFlags(); |
40 | bool IsManager(UUID avatarID); | 42 | bool IsManager(UUID avatarID); |