Exemplo n.º 1
0
        public override void Cleanup()
        {
            base.Cleanup();
            MessengerInstance.Unregister(this);
            Settings.Default.CompletedListXml = CompletedList.Count > 0
                ? XmlTools.Serialize(CompletedList.ToArray())
                : string.Empty;

            if (DownloadList.Count > 0)
            {
                var downloadItems = DownloadList.ToArray();
                var tasks         = new List <Task>();
                foreach (var downloadItem in downloadItems)
                {
                    var cancelTask =
                        downloadItem.CancelAsync().ContinueWith(task => SetDownloadItemStatusText(downloadItem));
                    tasks.Add(cancelTask);
                }
                Task.WaitAll(tasks.ToArray());
                Settings.Default.DownloadListXml = XmlTools.Serialize(downloadItems);
            }
            else
            {
                Settings.Default.DownloadListXml = string.Empty;
            }
            Settings.Default.Save();
        }
Exemplo n.º 2
0
        private void DownloadItem_StateChanged(object sender, DownloadSessionStateChangedEventArgs e)
        {
            var downloadItem = e.Session as DownloadItem;

            if (downloadItem == null)
            {
                return;
            }

            if (((e.OldState == DownloadState.Downloading) || (e.OldState == DownloadState.Paused) ||
                 (e.OldState == DownloadState.Ready)) &&
                ((e.NewState == DownloadState.Cancelled) || (e.NewState == DownloadState.Failed) ||
                 (e.NewState == DownloadState.Success)))
            {
                Application.Current.Dispatcher.Invoke(() =>
                {
                    DownloadList.Remove(downloadItem);
                    CompletedList.Add(downloadItem);
                });
            }
            else if (CompletedList.Contains(downloadItem))
            {
                Application.Current.Dispatcher.Invoke(() =>
                {
                    CompletedList.Remove(downloadItem);
                    DownloadList.Add(downloadItem);
                });
            }
            SetDownloadItemStatusText(downloadItem);
        }
Exemplo n.º 3
0
 private void RemoveDownloadItem(DownloadItem downloadItem)
 {
     if ((downloadItem == null) || !downloadItem.CanBeRemoved)
     {
         return;
     }
     DownloadList.Remove(downloadItem);
     CompletedList.Remove(downloadItem);
 }
Exemplo n.º 4
0
    public static void SubmitQuestOk(int id)
    {
        QuestData q = QuestData.GetData(id);

        if (OnQuestEffectFinish != null)
        {
            OnQuestEffectFinish(id);
        }
        //DelTrackQues (id);
        EraseQuestInst(id);

        if (q.questKind_ == QuestKind.QK_Profession)
        {
            for (int i = 0; i < CompletedList.Count; ++i)
            {
                QuestData tmpQ = QuestData.GetData(CompletedList[i]);
                if (tmpQ.questKind_ == QuestKind.QK_Profession)
                {
                    CompletedList.RemoveAt(i);
                    break;
                }
            }
        }

        if (q.questKind_ != QuestKind.QK_Tongji)
        {
            if (!CompletedQuestList.Contains(id))
            {
                CompletedQuestList.Add(id);
                UpdateAcceptableQuests();
                if (OnQuestUpdate != null)
                {
                    OnQuestUpdate();
                }
                isDirty = true;
                GuideManager.Instance.ProcEvent(ScriptGameEvent.SGE_NpcRenwuSubmit, id);
                EffectAPI.PlayUIEffect((EFFECT_ID)GlobalValue.EFFECT_ComplishQuest, ApplicationEntry.Instance.uiRoot.transform);
            }
        }
        if (q.questType_ == QuestType.QT_GiveBaby || q.questType_ == QuestType.QT_GiveItem)
        {
            TurnOnUIPlanel.HideMe();
            NpcRenwuUI.SwithShowMe();
        }
        if (IsCopyEndId(id))
        {
            CopyTipsUI.SwithShowMe();
//			MessageBoxUI.ShowMe(LanguageManager.instance.GetValue("gongxitongguan"),()=>{
//				NetConnection.Instance.exitCopy();
//			},true,null,null,LanguageManager.instance.GetValue("likai"));
        }
    }