protected override void ProcessMsg(int key, QMsg msg)
        {
            switch (msg.msgId)
            {
            case (ushort)ToDoListEvent.ModifiedItem:
                ModifiedItemMsg modifiedMsg = msg as ModifiedItemMsg;
                mCachedData.Remove(modifiedMsg.SrcTitle);
                modifiedMsg.ItemData.Description();
                mCachedData.Add(modifiedMsg.ItemData.Id, modifiedMsg.ItemData);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;

            case (ushort)ToDoListEvent.CreateNewItem:
                CreateNewItemMsg newItemMsg = msg as CreateNewItemMsg;
                newItemMsg.NewItemData.Description();
                mCachedData.Add(newItemMsg.NewItemData.Id, newItemMsg.NewItemData);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;

            case (ushort)ToDoListEvent.DeleteItem:
                DeleteItemMsg deleteItemMsg = msg as DeleteItemMsg;
                mCachedData.Remove(deleteItemMsg.Title);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;
            }
        }
        public override void ProcessMsg(QMsg msg)
        {
            switch (msg.msgId)
            {
            case (ushort)ToDoListEvent.ModifiedItem:
                ModifiedItemMsg modifiedMsg = msg as ModifiedItemMsg;
                m_CachedData.Remove(modifiedMsg.SrcTitle);
                modifiedMsg.ItemData.Description();
                m_CachedData.Add(modifiedMsg.ItemData.Title, modifiedMsg.ItemData);
                NetManager.Instance.ModifiedItemUpload(modifiedMsg.ItemData.Title, modifiedMsg.ItemData);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;

            case (ushort)ToDoListEvent.CreateNewItem:
                CreateNewItemMsg newItemMsg = msg as CreateNewItemMsg;
                newItemMsg.NewItemData.Description();
                m_CachedData.Add(newItemMsg.NewItemData.Title, newItemMsg.NewItemData);
                NetManager.Instance.NewItemUpload(newItemMsg.NewItemData);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;

            case (ushort)ToDoListEvent.DeleteItem:
                DeleteItemMsg deleteItemMsg = msg as DeleteItemMsg;
                m_CachedData.Remove(deleteItemMsg.Title);
                NetManager.Instance.DeleteItemUpload(deleteItemMsg.Title);
                this.SendMsg(new QMsg((ushort)UIEvent.UpdateView));
                break;
            }
        }