예제 #1
0
        private void ButtonPause_Click(object sender, RoutedEventArgs e)
        {
            client.Paused = true;
            timer1000.Stop();
            timer200.Stop();

            ButtonResume.Visibility = Visibility.Visible;
            ButtonPause.Visibility  = Visibility.Collapsed;
            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Paused);
        }
예제 #2
0
 private void Connecting()
 {
     GroupBoxCurrentX.Opacity = GroupBoxTotal.Opacity = 0.2;
     MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Paused);
     ButtonFished.Visibility = Visibility.Hidden;
     ButtonPause.Visibility  = Visibility.Hidden;
     ButtonSkip.Visibility   = Visibility.Hidden;
     TransferProgress.Roll(true);
     LabelReconnecting.Visibility = Visibility.Visible;
     TextBlockCounts.Visibility   = Visibility.Collapsed;
 }
예제 #3
0
        private void ButtonResume_Click(object sender, RoutedEventArgs e)
        {
            if (ownerClosing || closing)
            {
                return;
            }

            client.Paused           = false;
            ButtonPause.Visibility  = Visibility.Visible;
            ButtonResume.Visibility = Visibility.Collapsed;
            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Normal);
            timer1000.Start();
            timer200.Start();
        }
예제 #4
0
        internal void OnRequestingAction(SmartItem EItem, bool canResume)
        {
            timer1000.Stop();
            timer200.Stop();

            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Paused);
            ButtonResume.Visibility = Visibility.Visible;
            ButtonPause.Visibility  = Visibility.Collapsed;
            ButtonSkip.Visibility   = Visibility.Hidden;

            new FileExistWindow(this, EItem, canResume).ShowDialog();

            ButtonSkip.Visibility   = Visibility.Visible;
            ButtonResume.Visibility = Visibility.Collapsed;
            ButtonPause.Visibility  = Visibility.Visible;
            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Normal);
            timer1000.Start();
            timer200.Start();
        }
예제 #5
0
        private void Connected()
        {
            GroupBoxCurrentX.Opacity = GroupBoxTotal.Opacity = 1;
            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Normal);
            ButtonFished.Visibility = Visibility.Visible;
            ButtonPause.Visibility  = Visibility.Visible;

            if (client.TransferEvent.Item.IsFile)
            {
                ButtonSkip.Visibility = Visibility.Visible;
            }

            TransferProgress.Roll(false);
            LabelReconnecting.Visibility = Visibility.Collapsed;

            if ((client.TransferEvent.ItemSent == 0) && (client.TransferEvent.TotalTransferredFolders == 0))
            {
                TextBlockCounts.Visibility = Visibility.Visible;
            }
        }
예제 #6
0
        private bool conformCancel()
        {
            client.Paused = true;
            timer1000.Stop();
            timer200.Stop();
            MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Paused);
            ButtonResume.Visibility = Visibility.Visible;
            ButtonPause.Visibility  = Visibility.Collapsed;
            ButtonSkip.Visibility   = Visibility.Hidden;

            if (MessageWindow.Show(this,
                                   AppLanguage.Get("LangMBCancelTransfer"),
                                   AppLanguage.Get("LangMBDCancelTransferTitle"),
                                   MessageBoxButton.YesNo,
                                   MessageBoxImage.Question,
                                   MessageBoxResult.Yes) != MessageBoxResult.Yes)
            {
                if (ownerClosing || closing)
                {
                    return(false);
                }

                client.Paused = false;
                MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Normal);
                if (started && client.TransferEvent.Item.IsFile)
                {
                    ButtonSkip.Visibility = Visibility.Visible;
                }
                ButtonResume.Visibility = Visibility.Collapsed;
                ButtonPause.Visibility  = Visibility.Visible;
                timer1000.Start();
                timer200.Start();
                return(false);
            }

            return(true);
        }
예제 #7
0
        internal async void OnEnded()
        {
            ended = true;
            timer1000.Stop();
            timer200.Stop();

            if (ownerClosing)
            {
                return;
            }

            TaskbarHelper.Remove(ProgressBarTotal);

            if (closing)
            {
                return;
            }

            if (client.IsChild)
            {
                await client.DisconnectAsync(false, false);
            }

            if (client.TransferEvent.Items.Length == 0)
            {
                if (client.TransferEvent.IsUpload)
                {
                    AppMessage.Add("Nothing to upload.", MessageType.Warning);
                }
                else
                {
                    AppMessage.Add("Nothing to download.", MessageType.Warning);
                }
                this.Close();
                return;
            }

            ButtonCancel.IsEnabled  = false;
            ButtonCancel.Visibility = Visibility.Collapsed;
            ButtonSkip.Visibility   = Visibility.Hidden;
            ButtonPause.Visibility  = Visibility.Hidden;

            if (client.TransferEvent.HasErrors)
            {
                MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Error);
            }
            else
            {
                MiniProgressBar.SetStateColor(ProgressBarExtension.ProgressState.Indeterminate);
            }

            switch (fishedAction)
            {
            case FishedAction.CloseWindow:
                if (!this.IsActive && !ClientHelper.Owner.IsActive)
                {
                    ClientHelper.Owner.FlashWindow(3);
                }
                this.Close();
                return;

            case FishedAction.CloseApp:
                AutoShutdownWindow.Initialize(this, false);
                this.Close();
                return;

            case FishedAction.Shutdown:
                AutoShutdownWindow.Initialize(this, true);
                this.Close();
                return;
            }

            updateCurrentItem();
            UpdateProgress();
            updateTotalFF();

            LabelCurrentRemainsX.Visibility = Visibility.Collapsed;
            LabelTotalRemainsX.Visibility   = Visibility.Collapsed;
            LabelETA.Visibility             = Visibility.Collapsed;

            if (client.TransferEvent.IsUpload)
            {
                this.Title = client.TransferEvent.HasErrors ? AppLanguage.Get("LangTitleUploadFinishedErrors") : AppLanguage.Get("LangTitleUploadDone");
            }
            else
            {
                this.Title = client.TransferEvent.HasErrors ? AppLanguage.Get("LangTitleDownloadFinishedErrors") : AppLanguage.Get("LangTitleDownloadDone");
                ButtonOpenTarget.Visibility = Visibility.Visible;
            }

            ButtonClose.Visibility = Visibility.Visible;
            ButtonClose.IsDefault  = true;
            ButtonClose.IsCancel   = true;
            ButtonClose.Focus();
        }