Esempio n. 1
0
        internal void ShowPDMessage(GetPDListResult result)
        {
            if (App.Cards.Count == 0)
            {
                result = GetPDListResult.NoCheck;
            }

            switch (result)
            {
            case GetPDListResult.New:
            case GetPDListResult.Update:
                pdSuccess.Visibility = Visibility.Visible;
                pdError.Visibility   = Visibility.Collapsed;
                break;

            case GetPDListResult.NotFound:
            case GetPDListResult.Error:
            case GetPDListResult.Conflict:
                pdError.Visibility   = Visibility.Visible;
                pdSuccess.Visibility = Visibility.Collapsed;
                CardPrice.ClearPDLegalList();
                break;

            default:
                pdSuccess.Visibility = Visibility.Collapsed;
                pdError.Visibility   = Visibility.Collapsed;
                break;
            }
        }
Esempio n. 2
0
        internal async void OnOption(object sender, RoutedEventArgs e)
        {
            var  vm       = ViewModel;
            bool oldPrice = vm.GetCardPrice;
            bool oldPd    = vm.GetPDList;

            var dlg = new OptionDialog(DataContext)
            {
                Owner = this
            };

            dlg.ShowDialog();

            Topmost = vm.TopMost;

            // Preview Pane の自動探索の設定を反映
            vm.SetRefreshTimer(Dispatcher);

#if !OFFLINE
            notifier.Visibility = vm.AutoVersionCheck &&
                                  await App.IsOutdatedRelease(vm.AcceptsPrerelease) ? Visibility.Visible : Visibility.Collapsed;

            // カード価格関連の変更を反映するために await
            imgLoading.Visibility = Visibility.Visible;

            if (vm.GetCardPrice != oldPrice)
            {
                if (CardPrice.EnableCardPrice)
                {
                    await Task.Run(CardPrice.OpenCacheData);
                }
                else
                {
                    CardPrice.ClearCacheData();
                }
            }

            if (vm.GetPDList != oldPd)
            {
                if (vm.GetPDList)
                {
                    var successPd = await CardPrice.GetOrOpenPDLegalFile(false);

                    ShowPDMessage(successPd);
                }
                else
                {
                    CardPrice.ClearPDLegalList();
                    pdSuccess.Visibility = Visibility.Collapsed;
                    pdError.Visibility   = Visibility.Collapsed;
                }
            }

            if (vm.GetCardPrice != oldPrice || vm.GetPDList != oldPd)
            {
                vm.RefreshTab();
            }

            imgLoading.Visibility = Visibility.Hidden;
#endif
        }