/// <summary> /// constructor of IMForm /// </summary> public IMForm(SDCSCommon.Network.BuddyListData bld) { // // Required for Windows Form Designer support // InitializeComponent(); // // TODO: Add any constructor code after InitializeComponent call // buddyData = bld; }
/// <summary> /// When a user state changes call this function to notify all the relevant clients /// </summary> /// <param name="userID">ID of the user who's state has changed</param> /// <param name="username">The username of the user who's state has changed</param> /// <param name="state">The new state of the user</param> public static void notifyBuddyStatus(int userID, string username, SDCSCommon.Network.UserState state) { SDCSCommon.Network.BuddyListData bld = new SDCSCommon.Network.BuddyListData(); bld.userID = userID; bld.username = username; bld.userState = state; lock (buddyStates.SyncRoot) { if (buddyStates.Contains(userID)) buddyStates.Remove(userID); buddyStates.Add(userID, bld); } lock (netStreams.SyncRoot) for (int i = 0; i < netStreams.Count; i++) lock (((connection)netStreams[i]).watchingClass.BuddyListData.SyncRoot) ((connection)netStreams[i]).watchingClass.BuddyListData.Add(bld); }