亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? contactnotifywindowmanager.cs

?? 飛信的收發使用csharp進行開發
?? CS
?? 第 1 頁 / 共 2 頁
字號:
?namespace Imps.Client.Pc.UIContactList
{
    using Imps.Client;
    using Imps.Client.Core;
    using Imps.Client.Pc;
    using Imps.Client.Pc.BizControls.NotifyWindows;
    using Imps.Client.Pc.BizControls.NotifyWindows.Templates;
    using Imps.Client.Pc.UIContactList.AddBuddy;
    using Imps.Client.Utils;
    using Imps.Common;
    using Imps.Utils;
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Media;
    using System.Windows.Forms;

    public class ContactNotifyWindowManager
    {
        private List<AddBuddyRequest> _addBuddyRequestCol;
        private List<Contact> _addBuddyRequestProposerCol;
        private List<AddBuddyResultEventArgs> _addBuddyResultEventArgsCol;
        private List<AddBuddyResultEventArgs> _agreeMobileBuddyEventArgsCol;
        private int _currentDisplayAgreeMobileBuddy;
        private IFrameworkWindow _iFrameworkWindow;
        private User _owner;
        private const int MaxDisplayAgreeMobileBuddy = 5;

        public ContactNotifyWindowManager(User owner, IFrameworkWindow iFrameworkWnd)
        {
            this._owner = owner;
            this._iFrameworkWindow = iFrameworkWnd;
            owner.ContactList.AddBuddyRequest += new EventHandler<AddBuddyApplicationEventArgs>(this.AddBuddyRequestReceived);
        }

        private void addBuddyApplication_onTick(object sender, EventArgs e)
        {
            bool flag = true;
            try
            {
                if (this._owner.Status != UserAccountStatus.Logon)
                {
                    this._addBuddyRequestCol = null;
                    this._addBuddyResultEventArgsCol = null;
                }
                else if (this._addBuddyRequestCol != null)
                {
                    foreach (AddBuddyRequest request in this.AddBuddyRequestCol)
                    {
                        if (request.Contact.PersonalInfo["nickname"] != null)
                        {
                            this.showWindows_AddBuddy(request.Contact, request.Desc, request.IsByMobileNo);
                            this.AddBuddyRequestCol.Remove(request);
                            return;
                        }
                    }
                    if (this.AddBuddyRequestCol.Count > 0)
                    {
                        flag = false;
                    }
                }
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
            finally
            {
                if (flag)
                {
                    GlobalTimer.Unregister(new EventHandler(this.addBuddyApplication_onTick));
                }
            }
        }

        public void AddBuddyRequestReceived(object sender, AddBuddyApplicationEventArgs e)
        {
            AsyncBizOperation op = new AsyncBizOperation();
            op.IsImpsErrorHandled = true;
            Contact item = this._owner.ContactList.FindOrCreateContact(e.Uri, op, false);
            if ((item.Type != ContactType.Buddy) && !this.AddBuddyRequestProposerCol.Contains(item))
            {
                this.AddBuddyRequestProposerCol.Add(item);
            }
            else
            {
                return;
            }
            this.AddBuddyRequestCol.Add(new AddBuddyRequest(item, e.Desc, e.IsByMobileNo));
            this.ShowWindow();
        }

        public void AddNotifyWnd_AddBuddyResult(AddBuddyResultEventArgs e)
        {
            this.AddBuddyResultEventArgsCol.Add(e);
            this.ShowWindow();
        }

        public bool AllowPlaySound(Contact c)
        {
            if (c.IsBlocked)
            {
                return false;
            }
            if (this._owner.Configuration.UserSetting.SoundSetting.SoundEnabled == null)
            {
                return false;
            }
            return true;
        }

        public bool AllowPresenceChangedNotifyWindow(Contact c)
        {
            if ((this._owner.Presence.IsOffline || (this._owner.Presence.MainPresence == MainPresence.DoNotDisturb)) || (this._owner.Presence.MainPresence == MainPresence.Busy))
            {
                return false;
            }
            if ((c.RelationStatus != 1) || c.IsBlocked)
            {
                return false;
            }
            if (this._owner.Configuration.UserSetting.NotifyWinodwSetting.OnlineNotify.OriginalValue == 1)
            {
                return false;
            }
            if ((this._owner.Configuration.UserSetting.NotifyWinodwSetting.OnlineNotify.OriginalValue == 2) && !c.OnlineNotify.Value)
            {
                return false;
            }
            return true;
        }

        public void Clear()
        {
            this._addBuddyRequestProposerCol = null;
            this._addBuddyRequestCol = null;
            this._addBuddyResultEventArgsCol = null;
            this._agreeMobileBuddyEventArgsCol = null;
            this._currentDisplayAgreeMobileBuddy = 0;
        }

        public void ContactPresenceChanged_NotifyWnd(Contact c, PropertiesChangedEventArgs e)
        {
            try
            {
                if ((!c.Presence.IsLogonPresence && c.Presence.IsOnline) && e.ContainsProperty("value"))
                {
                    ChangedValuePair<int> pair = e["value"] as ChangedValuePair<int>;
                    int oldValue = pair.OldValue;
                    int newValue = pair.NewValue;
                    if (!MainPresenceHelper.IsOnline((MainPresence) oldValue) && (newValue != oldValue))
                    {
                        if (this.AllowPresenceChangedNotifyWindow(c))
                        {
                            ContactOnlineStatusChangedNotify wnd = new ContactOnlineStatusChangedNotify(c);
                            NotifyWindowManager.Add(wnd);
                            wnd.ContentClick += delegate {
                                this._iFrameworkWindow.ConversationManager.StartConversation(this._iFrameworkWindow as Form, ConversationOperation.ImChat, new string[] { c.Uri.Raw });
                                wnd.Close();
                            };
                        }
                        if (this.AllowPlaySound(c))
                        {
                            this.playOnlineNotifySound();
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                ClientLogger.WriteException(exception);
            }
        }

        private void handleArgeeMobileBuddy()
        {
            if ((this.AgreeMobileBuddyEventArgsCol.Count > 0) && (this._currentDisplayAgreeMobileBuddy <= 5))
            {
                AddBuddyResultEventArgs e = this.AgreeMobileBuddyEventArgsCol[0];
                this.AgreeMobileBuddyEventArgsCol.RemoveAt(0);
                this._currentDisplayAgreeMobileBuddy++;
                NotifyWindowAddBuddyResult wnd = new NotifyWindowAddBuddyResult(e.Contact, e.IsByMobileNo, null);
                wnd.ContentClick += delegate {
                    this._iFrameworkWindow.ConversationManager.StartConversation(this._iFrameworkWindow as Form, ConversationOperation.ImChat, new string[] { e.Contact.Uri.Raw });
                    wnd.Close();
                };
                NotifyWindowManager.Add(wnd);
                AddMobileBuddyFeedbackForm flashForm = new AddMobileBuddyFeedbackForm(this._iFrameworkWindow, (MobileBuddy) e.Contact);
                flashForm.WindowState = FormWindowState.Minimized;
                flashForm.FormClosed += delegate (object sender, FormClosedEventArgs e1) {
                    this._currentDisplayAgreeMobileBuddy--;
                    this.handleArgeeMobileBuddy();
                };
                flashForm.Show(this._iFrameworkWindow as Form);
                ControlHelper.FlashWindow(flashForm, 5);
            }
        }

        private void playOnlineNotifySound()
        {
            try
            {
                string onlineNotify = (string) this._owner.Configuration.UserSetting.SoundSetting.OnlineNotify;
                if (File.Exists(onlineNotify))
                {
                    using (SoundPlayer player = new SoundPlayer(onlineNotify))
                    {
                        player.Play();
                    }
                }
            }
            catch
            {
            }
        }

        private void showNotifyWnd_AddBuddyResult(AddBuddyResultEventArgs e)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品免费久久| 欧美色窝79yyyycom| 亚洲色图在线视频| 日韩视频不卡中文| 一本久久精品一区二区| 久久机这里只有精品| 亚洲人成在线观看一区二区| 精品粉嫩aⅴ一区二区三区四区| 91丝袜呻吟高潮美腿白嫩在线观看| 91国产精品成人| 国产精品69毛片高清亚洲| 亚洲国产一区二区视频| 中文乱码免费一区二区| 精品日韩成人av| 在线区一区二视频| 成人精品高清在线| 国产一区二区日韩精品| 日韩电影在线免费| 亚洲444eee在线观看| 综合色天天鬼久久鬼色| 国产欧美日产一区| 精品久久国产老人久久综合| 欧美主播一区二区三区| a亚洲天堂av| 成人综合婷婷国产精品久久免费| 精品综合免费视频观看| 午夜视频一区二区三区| 亚洲影院理伦片| 亚洲欧美一区二区三区极速播放| 国产亚洲欧美色| 国产亚洲美州欧州综合国| 精品少妇一区二区三区视频免付费 | 91黄视频在线观看| 国产精品1区2区3区在线观看| 久久99精品国产麻豆婷婷| 日本v片在线高清不卡在线观看| 午夜av电影一区| 一级女性全黄久久生活片免费| 国产亚洲精品中文字幕| 欧美激情一区在线| 久久久精品免费网站| 国产日韩精品视频一区| 国产欧美精品一区二区色综合 | 亚洲午夜免费视频| 亚洲影视在线播放| 亚洲丰满少妇videoshd| 亚洲成人av一区二区| 午夜视频一区二区| 久久国产夜色精品鲁鲁99| 麻豆成人久久精品二区三区红 | 青娱乐精品在线视频| 青青草精品视频| 久久精品国产精品亚洲精品| 九九九久久久精品| 国产精品99久| 不卡影院免费观看| 色琪琪一区二区三区亚洲区| 欧美性三三影院| 欧美一区二区三区四区高清| 精品人在线二区三区| 国产亚洲婷婷免费| 中文字幕亚洲成人| 亚洲高清免费在线| 精品一二线国产| 成人动漫视频在线| 欧美色综合天天久久综合精品| 欧美一区二区三区在线视频 | 91精品国产91久久久久久最新毛片| 91精品国产综合久久精品| 久久久久久久久伊人| 亚洲人成电影网站色mp4| 亚洲成人动漫在线免费观看| 久久er99热精品一区二区| 国产高清视频一区| 欧美韩国日本不卡| 亚洲午夜激情av| 黄色成人免费在线| 99精品热视频| 91麻豆精品国产自产在线 | 成人中文字幕在线| 欧美主播一区二区三区美女| 精品国产一区二区三区忘忧草| 国产精品久久久久久久浪潮网站 | 这里是久久伊人| 国产欧美视频一区二区| 亚洲国产成人精品视频| 国产伦精一区二区三区| 欧美日韩综合不卡| 国产欧美一区二区精品秋霞影院| 亚洲图片欧美色图| 高潮精品一区videoshd| 在线成人免费视频| 中文字幕一区三区| 亚洲福利电影网| 成人开心网精品视频| 欧美放荡的少妇| 亚洲欧美日韩中文播放| 免费人成黄页网站在线一区二区| 99精品欧美一区二区三区小说| 91国偷自产一区二区三区成为亚洲经典 | 丁香啪啪综合成人亚洲小说 | 欧美一级精品大片| 久久精品夜夜夜夜久久| 欧美日韩亚州综合| 91色porny| 日韩欧美久久一区| 亚洲在线观看免费视频| 青椒成人免费视频| 色哟哟精品一区| 国产精品污www在线观看| 日本va欧美va欧美va精品| 91官网在线观看| 日韩欧美国产电影| 亚洲伊人色欲综合网| 99麻豆久久久国产精品免费 | 一区二区在线观看视频| 国产一区二区电影| 日韩免费观看高清完整版在线观看| 国内精品国产成人| 精品美女一区二区三区| 欧美aaaaa成人免费观看视频| 色综合天天性综合| 国产欧美综合色| 高清在线不卡av| 久久久久久久一区| 国产一区二区三区四区在线观看| 7777精品伊人久久久大香线蕉的 | 国产成人免费高清| 久久综合色婷婷| 激情偷乱视频一区二区三区| 日韩精品一区二区三区老鸭窝| 全部av―极品视觉盛宴亚洲| 欧美一区二区在线不卡| 老司机精品视频一区二区三区| 欧美一区二区播放| 麻豆精品蜜桃视频网站| 日韩欧美三级在线| 男女视频一区二区| 日韩一区二区在线观看视频| 日韩高清在线一区| 91精品国产综合久久小美女| 麻豆freexxxx性91精品| 日韩欧美国产综合一区 | 欧美午夜精品电影| 亚洲一区二区在线观看视频| 欧美无砖专区一中文字| 亚洲成人先锋电影| 51精品视频一区二区三区| 日产国产欧美视频一区精品| 精品99一区二区三区| 国产成人精品三级麻豆| ㊣最新国产の精品bt伙计久久| 色综合久久综合| 亚洲成人动漫av| 日韩女优制服丝袜电影| 国产自产2019最新不卡| 欧美国产一区二区在线观看| 一本在线高清不卡dvd| 亚洲成人精品影院| 精品久久久久一区二区国产| 国产盗摄一区二区| 亚洲黄色免费电影| 91麻豆精品国产91| 国产大陆亚洲精品国产| 最新不卡av在线| 欧美精品丝袜久久久中文字幕| 精品影院一区二区久久久| 国产三级欧美三级日产三级99| 91小视频免费看| 日韩精品一二三四| 久久久国际精品| 在线观看亚洲专区| 狠狠色丁香久久婷婷综| 国产精品久久午夜夜伦鲁鲁| 日本韩国欧美一区二区三区| 免播放器亚洲一区| 最新不卡av在线| 精品三级在线看| 91网站在线播放| 极品瑜伽女神91| 一区二区在线观看不卡| 日韩女同互慰一区二区| 色婷婷精品大在线视频| 麻豆专区一区二区三区四区五区| 亚洲图片激情小说| 日韩午夜电影av| 一本大道久久a久久综合婷婷| 久久精品国产999大香线蕉| 中文字幕欧美一区| 日韩欧美成人午夜| 欧美无砖专区一中文字| 日韩亚洲欧美一区二区三区| 国产69精品久久777的优势| 天堂一区二区在线免费观看| 国产精品女人毛片| 精品国产亚洲一区二区三区在线观看| 日本乱码高清不卡字幕| 国产九九视频一区二区三区| 天天综合网 天天综合色| 中文字幕日本不卡|