⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 impspresenceiconsex.cs

📁 破解的飞信源代码
💻 CS
字号:
namespace Imps.Client.Resource
{
    using Imps.Client;
    using Imps.Common;
    using Imps.Utils;
    using System;
    using System.Collections.Generic;
    using System.Reflection;
    using System.Runtime.InteropServices;

    public class ImpsPresenceIconsEx
    {
        private AmigoImage _blockIcon;
        private AmigoImage _chatFriendIcon;
        private static ImpsPresenceIconsEx _instance = new ImpsPresenceIconsEx();
        private AmigoImage _mobileBuddy;
        private AmigoImage _offline;
        private AmigoImage _onlineIcon;
        protected const string _ourNamespace = "PresenceIcons.";
        private static Dictionary<CompositePresence, AmigoImage> _presenceIconsEx = new Dictionary<CompositePresence, AmigoImage>();
        private AmigoImage _rejectBuddyIcon;
        private AmigoImage _rejectMBuddyIcon;
        private AmigoImage _vodafoneBusy;
        private AmigoImage _vodafoneOffline;
        private AmigoImage _vodafoneOnline;
        private AmigoImage _waitingBuddyIcon;
        private AmigoImage _waitingMBuddyIcon;

        private ImpsPresenceIconsEx()
        {
            this.InitEx();
        }

        private void InitEx()
        {
            AmigoImage image = new AmigoImage(ImpsResources.GetImage("PresenceIcons.pc.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Online, 1), image);
            AmigoImage image2 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.smartphone.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Online, 2), image2);
            AmigoImage image3 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.wap.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Online, 4), image3);
            AmigoImage image4 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.sms.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.SmsOnline, null), image4);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.SmsOnline, 1), image4);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.SmsOnline, 2), image4);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.SmsOnline, 3), image4);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.SmsOnline, 4), image4);
            AmigoImage image5 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.offline.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Offline, null), image5);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Offline, 1), image5);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Offline, 2), image5);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Offline, 3), image5);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Offline, 4), image5);
            AmigoImage image6 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.pc_busy.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.InTheMeeting, 1), image6);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Busy, 1), image6);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OnThePhone, 1), image6);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.DoNotDisturb, 1), image6);
            AmigoImage image7 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.smartphone_busy.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.InTheMeeting, 2), image7);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Busy, 2), image7);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OnThePhone, 2), image7);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.DoNotDisturb, 2), image7);
            AmigoImage image8 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.wap_busy.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.InTheMeeting, 4), image8);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Busy, 4), image8);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OnThePhone, 4), image8);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.DoNotDisturb, 4), image8);
            AmigoImage image9 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.pc_away.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OutToLunch, 1), image9);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.BeRightBack, 1), image9);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Away, 1), image9);
            AmigoImage image10 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.smartphone_away.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OutToLunch, 2), image10);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.BeRightBack, 2), image10);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Away, 2), image10);
            AmigoImage image11 = new AmigoImage(ImpsResources.GetImage("PresenceIcons.wap_away.png"));
            _presenceIconsEx.Add(new CompositePresence(MainPresence.OutToLunch, 4), image11);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.BeRightBack, 4), image11);
            _presenceIconsEx.Add(new CompositePresence(MainPresence.Away, 4), image11);
        }

        public bool TryGetValue(CompositePresence key, out AmigoImage value)
        {
            return _presenceIconsEx.TryGetValue(key, ref value);
        }

        public AmigoImage BlockIcon
        {
            get
            {
                if (this._blockIcon == null)
                {
                    this._blockIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.block.png"));
                }
                return this._blockIcon;
            }
        }

        public AmigoImage ChatFriendIcon
        {
            get
            {
                if (this._chatFriendIcon == null)
                {
                    this._chatFriendIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.chatfriend.png"));
                }
                return this._chatFriendIcon;
            }
        }

        public static ImpsPresenceIconsEx Instance
        {
            get
            {
                return _instance;
            }
        }

        public AmigoImage this[MainPresence mainPresence, ClientTypeCategory? clientType]
        {
            get
            {
                AmigoImage image = null;
                this.TryGetValue(new CompositePresence(mainPresence, clientType), out image);
                if (image != null)
                {
                    return image;
                }
                return _presenceIconsEx.get_Item(new CompositePresence(MainPresence.SmsOnline, null));
            }
        }

        public AmigoImage MobileBuddy
        {
            get
            {
                if (this._mobileBuddy == null)
                {
                    this._mobileBuddy = new AmigoImage(ImpsResources.GetImage("PresenceIcons.mobilebuddy.png"));
                }
                return this._mobileBuddy;
            }
        }

        public AmigoImage Offline
        {
            get
            {
                if (this._offline == null)
                {
                    this._offline = new AmigoImage(ImpsResources.GetImage("PresenceIcons.offline.png"));
                }
                return this._offline;
            }
        }

        public AmigoImage OnlineIcon
        {
            get
            {
                if (this._onlineIcon == null)
                {
                    this._onlineIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.pc.png"));
                }
                return this._onlineIcon;
            }
        }

        public AmigoImage RejectBuddyIcon
        {
            get
            {
                if (this._rejectBuddyIcon == null)
                {
                    this._rejectBuddyIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.rejectbuddy.png"));
                }
                return this._rejectBuddyIcon;
            }
        }

        public AmigoImage RejectMobileBuddyIcon
        {
            get
            {
                if (this._rejectMBuddyIcon == null)
                {
                    this._rejectMBuddyIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.rejectmbuddy.png"));
                }
                return this._rejectMBuddyIcon;
            }
        }

        public AmigoImage VodafoneBusy
        {
            get
            {
                if (this._vodafoneBusy == null)
                {
                    this._vodafoneBusy = new AmigoImage(ImpsResources.GetImage("PresenceIcons.vodafone_busy.png"));
                }
                return this._vodafoneBusy;
            }
        }

        public AmigoImage VodafoneOffline
        {
            get
            {
                if (this._vodafoneOffline == null)
                {
                    this._vodafoneOffline = new AmigoImage(ImpsResources.GetImage("PresenceIcons.vodafone_offline.png"));
                }
                return this._vodafoneOffline;
            }
        }

        public AmigoImage VodafoneOnline
        {
            get
            {
                if (this._vodafoneOnline == null)
                {
                    this._vodafoneOnline = new AmigoImage(ImpsResources.GetImage("PresenceIcons.vodafone_online.png"));
                }
                return this._vodafoneOnline;
            }
        }

        public AmigoImage WaitingBuddyIcon
        {
            get
            {
                if (this._waitingBuddyIcon == null)
                {
                    this._waitingBuddyIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.waitingbuddy.png"));
                }
                return this._waitingBuddyIcon;
            }
        }

        public AmigoImage WaitingMobileBuddyIcon
        {
            get
            {
                if (this._waitingMBuddyIcon == null)
                {
                    this._waitingMBuddyIcon = new AmigoImage(ImpsResources.GetImage("PresenceIcons.waitingmbuddy.png"));
                }
                return this._waitingMBuddyIcon;
            }
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -