messagemanager.cs

来自「破解的飞信源代码」· CS 代码 · 共 57 行

CS
57
字号
namespace Imps.Client.Core
{
    using System;
    using System.Threading;

    public class MessageManager
    {
        private Dialog _dialog;
        private DateTime _lastTime = DateTime.Now;
        private string _lastUri;
        private bool _nextNewLine = true;

        public MessageManager(Dialog dialog)
        {
            this._dialog = dialog;
        }

        public bool IsMessageNewLine(Message msg)
        {
            bool flag2;
            MessageManager manager;
            Monitor.Enter(manager = this);
            try
            {
                bool flag = true;
                if (this._nextNewLine)
                {
                    flag = true;
                    this._nextNewLine = false;
                }
                else if ((msg.FromUri == this._lastUri) && (msg.Time.Subtract(this._lastTime).TotalSeconds < this._dialog.Owner.Configuration.UserSetting.ConversationSetting.NewLineInterval))
                {
                    flag = false;
                }
                this._lastUri = msg.FromUri;
                this._lastTime = msg.Time;
                flag2 = flag;
            }
            catch (Exception)
            {
                flag2 = false;
            }
            finally
            {
                Monitor.Exit(manager);
            }
            return flag2;
        }

        public void SetNextNewLine()
        {
            this._nextNewLine = true;
        }
    }
}

⌨️ 快捷键说明

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