private LRESULT OnMsg(MsgNode msgNode)
 {
     if (msgNode == null)
     {
         return(LRESULT_VALUE.FAIL);
     }
     return(OnMsg(msgNode.Msg, msgNode.Obj, msgNode.wParam, msgNode.lParam));
 }
示例#2
0
        // 创建消息
        public MsgNode CreateMsg(long msgId, System.Object obj = null, long wParam = 0, long lParam = 0)
        {
            MsgNode ret = CreateMsgNode(msgId, obj, wParam, lParam);

            if (ret != null)
            {
                m_MsgList.AddLast(ret);
            }
            return(ret);
        }
示例#3
0
 // 删除消息
 public void DestroyMsg(MsgNode node)
 {
     if (node == null)
     {
         return;
     }
     if (node.Node != null && node.Node.List == m_MsgList)
     {
         m_MsgList.Remove(node.Node);
     }
     DestroyMsgNode(node);
 }
示例#4
0
        // 删除消息节点
        protected static void DestroyMsgNode(MsgNode node)
        {
            if (node == null)
            {
                return;
            }
            LinkedListNode <MsgNode> m = node.Node;

            if (m == null || (m.List != null))
            {
                return;
            }
            m_MsgPool.AddLast(m);
        }
示例#5
0
        // 创建消息节点
        protected static MsgNode CreateMsgNode(long msgId, System.Object obj = null,
                                               long wParam = 0, long lParam = 0)
        {
            var firstNode = m_MsgPool.First;

            if (firstNode == null)
            {
                MsgNode ret = new MsgNode(msgId, obj, wParam, lParam);
                return(ret);
            }

            m_MsgPool.Remove(firstNode);

            MsgNode ret1 = firstNode.Value;

            ret1.Msg    = msgId;
            ret1.Obj    = obj;
            ret1.wParam = wParam;
            ret1.lParam = lParam;
            return(ret1);
        }
        public virtual bool PushMsgToList(long msgId, System.Object obj, long wParam, long lParam)
        {
            MsgNode node = m_MsgList.CreateMsg(msgId, obj, wParam, lParam);

            return(node != null);
        }