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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? contactnotifywindowmanager.cs

?? 飛信的收發(fā)使用csharp進(jìn)行開發(fā)
?? CS
?? 第 1 頁 / 共 2 頁
字號(hào):
?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)

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
波多野结衣中文字幕一区| 色婷婷精品大视频在线蜜桃视频| 中文字幕的久久| 欧美一区二区三区在线电影 | 亚洲永久免费视频| 久久久久久久久蜜桃| 欧美日本视频在线| 色老头久久综合| 高清国产一区二区三区| 男男视频亚洲欧美| 亚洲成人免费在线| 亚洲精品美国一| 国产欧美日韩久久| 精品日产卡一卡二卡麻豆| 欧美在线观看一区| 99国产精品视频免费观看| 国产精品小仙女| 九九九久久久精品| 日本不卡一区二区三区| 亚洲国产你懂的| 亚洲三级免费观看| ...中文天堂在线一区| 久久久国产精品午夜一区ai换脸| 日韩欧美成人激情| 欧美大片免费久久精品三p | 精品免费视频.| 欧美精品自拍偷拍动漫精品| 色吧成人激情小说| 色欧美片视频在线观看在线视频| 成人午夜av在线| 国产成人午夜高潮毛片| 国内久久精品视频| 精品一区二区三区蜜桃| 免费不卡在线观看| 麻豆高清免费国产一区| 日韩国产精品91| 免费成人小视频| 精品在线你懂的| 韩国精品主播一区二区在线观看| 黄色资源网久久资源365| 精品伊人久久久久7777人| 麻豆精品国产91久久久久久| 久久不见久久见免费视频7 | 国产综合色在线| 国产一区二区精品久久99| 精品无人区卡一卡二卡三乱码免费卡| 蜜桃久久久久久| 国内久久精品视频| 从欧美一区二区三区| 99精品热视频| 欧美日韩国产乱码电影| 56国语精品自产拍在线观看| 日韩免费观看高清完整版 | 国产精品亚洲一区二区三区妖精| 狠狠色丁香久久婷婷综合丁香| 久久99精品国产.久久久久| 国产精品资源在线| 99精品视频在线观看| 欧美日韩国产综合视频在线观看| 制服.丝袜.亚洲.另类.中文| 精品国产一二三| 国产精品乱人伦中文| 一区二区三区丝袜| 裸体健美xxxx欧美裸体表演| 国产一区二区在线影院| 成人午夜电影网站| 欧美剧情片在线观看| 亚洲精品一区二区三区精华液| 国产精品三级在线观看| 亚洲精品免费视频| 奇米色一区二区| 波多野结衣在线一区| 欧美日韩中字一区| www一区二区| 亚洲一级二级三级在线免费观看| 免费成人在线观看| www.成人在线| 欧美一区日韩一区| 国产精品久久久久三级| 天天爽夜夜爽夜夜爽精品视频| 国产馆精品极品| 欧美日韩大陆一区二区| 国产欧美日韩精品a在线观看| 亚洲成a人片在线不卡一二三区 | 日本不卡不码高清免费观看| 成人性色生活片| 欧美一区二区三区在线视频 | 亚洲精品乱码久久久久久黑人| 亚洲mv大片欧洲mv大片精品| 成人综合在线视频| 日韩一区二区三区在线观看 | 婷婷成人激情在线网| 大白屁股一区二区视频| 91精品福利在线一区二区三区| 中文字幕一区三区| 激情久久久久久久久久久久久久久久| 91成人在线精品| 中文字幕久久午夜不卡| 精品一区二区综合| 欧美日韩久久久一区| 亚洲视频一二三区| 国产精品乡下勾搭老头1| 91精品一区二区三区久久久久久| 亚洲视频在线观看一区| 成人一区二区三区| 精品1区2区在线观看| 亚洲国产另类精品专区| 色综合天天综合在线视频| 国产欧美日韩视频在线观看| 精品系列免费在线观看| 欧美一区二区三区四区久久| 一区二区三区久久久| 成人自拍视频在线观看| 亚洲精品在线免费播放| 久久精品国产一区二区三区免费看| 色域天天综合网| 国产精品国产a| 国产福利精品一区二区| 日韩欧美国产电影| 奇米888四色在线精品| 欧美日韩免费高清一区色橹橹| 亚洲猫色日本管| 91在线免费播放| 亚洲人成人一区二区在线观看| 成人在线一区二区三区| 三级久久三级久久| 99在线视频精品| 国产精品二三区| 成人黄色网址在线观看| 欧美国产精品中文字幕| 风间由美一区二区三区在线观看| 欧美xfplay| 国产毛片精品一区| 中文字幕久久午夜不卡| 成人激情午夜影院| 国产精品久久久久久久久免费樱桃| 国产经典欧美精品| 国产精品久久久久久久久搜平片 | 激情综合网激情| 精品久久久久久久久久久院品网 | 中文字幕巨乱亚洲| av网站一区二区三区| 国产精品久久福利| 91在线视频18| 亚洲午夜国产一区99re久久| 欧美色男人天堂| 日韩精彩视频在线观看| 精品理论电影在线观看| 国产剧情一区二区三区| 国产精品国产精品国产专区不片 | 欧美高清视频www夜色资源网| 午夜精品免费在线观看| 欧美变态tickle挠乳网站| 精品中文字幕一区二区| 国产女人aaa级久久久级| 91麻豆swag| 日韩综合小视频| 久久免费看少妇高潮| jlzzjlzz欧美大全| 亚洲一区二区视频在线| 日韩精品一区二区三区中文精品| 国产一区不卡在线| 亚洲欧美色图小说| 欧美一区二区在线免费观看| 国产乱码精品一区二区三区av | 亚洲国产wwwccc36天堂| 欧美mv和日韩mv国产网站| 不卡一卡二卡三乱码免费网站| 夜夜精品视频一区二区 | 日韩精品一区国产麻豆| 成人污视频在线观看| 午夜不卡av在线| 国产精品美女久久久久高潮| 欧美日韩国产首页| 国产ts人妖一区二区| 亚洲一二三四区不卡| 欧美精品一区二区三区久久久| 99久久精品免费看| 麻豆国产欧美日韩综合精品二区| 国产精品国产三级国产有无不卡 | 国产三级一区二区三区| 色婷婷激情一区二区三区| 麻豆国产欧美日韩综合精品二区| 成人欧美一区二区三区小说| 欧美一级爆毛片| av电影在线观看完整版一区二区| 亚洲国产一区二区三区青草影视| 国产色综合一区| 4438x成人网最大色成网站| av男人天堂一区| 国产专区欧美精品| 亚洲电影一级黄| 亚洲欧美自拍偷拍色图| 精品免费视频一区二区| 欧美日韩一二三区| 成人毛片老司机大片| 美国av一区二区| 午夜精品久久久久久久蜜桃app| 国产人久久人人人人爽| 91麻豆精品国产91久久久|