예제 #1
0
        public override void ClientSide(FormCollection OpenWindows, CreateClientWindow CreateWindow, Common.Connections.Connection ThisConnection)
        {
            Form FoundWindow = null;
            IRecentConversationsWindow ConvWindow = null;

            //LOOP THROUGH EACH OPEN WINDOW LOOKING FOR THE CONV WINDOW
            foreach (Form tmpWindow in OpenWindows)
            {
                try
                {
                    ConvWindow = (IRecentConversationsWindow)tmpWindow;
                    break;
                }
                catch
                {
                }
            }

            //IF WE DIDNT FIND THE CONVERSATION LIST WINDOW THEN CREATE A NEW ONE
            if (ConvWindow == null)
            {
                CreateWindow(null, null, ref FoundWindow, WindowType.RecentConversationList);
            }

            //INVOKE THE CHANGING OF THE DATASOURCE ON THE WINDOW
            FoundWindow.Invoke((MethodInvoker) delegate
            {
                ConvWindow            = (IRecentConversationsWindow)FoundWindow;
                ConvWindow.RecentList = this.RecentList;
            });
        }
예제 #2
0
        public override void ClientSide(FormCollection OpenWindows, CreateClientWindow CreateWindow, Connection ThisConnection)
        {
            Form FoundWindow = null;
            IRecentConversationsWindow ConvWindow = null;

            //IF THERE WERE MISSED CONVERSATIONS THEN SHOW THE MISSED CONVERSATIONS WINDOW
            //TODO: NEED TO SHOW THE WINDOW ANYWAY AFTER THE INITIAL LOGIN HAS CHECKED FOR MISSED CONVERSATIONS
            if (this.MissedConversations.Count() != 0 || !IsLoginCall)
            {
                foreach (Form tmpWindow in OpenWindows)
                {
                    try
                    {
                        ConvWindow = (IRecentConversationsWindow)tmpWindow;
                        break;
                    }
                    catch
                    {
                    }
                }

                if (ConvWindow == null)
                {
                    CreateWindow(null, null, ref FoundWindow, WindowType.MissedConversationList);
                }

                FoundWindow.Invoke((MethodInvoker) delegate
                {
                    ConvWindow            = (IRecentConversationsWindow)FoundWindow;
                    ConvWindow.RecentList = this.MissedConversations;
                });
            }
        }