示例#1
0
 //修改代理服务器
 private void btnProxyModify_Click(object sender, EventArgs e)
 {
     if (lsvProxy.SelectedIndices.Count > 0)
     {
         //选择的代理服务器
         int selected = lsvProxy.SelectedIndices[0];
         //生成新的AcDownProxy对象
         AcDownProxy proxy = new AcDownProxy();
         proxy.Name     = lsvProxy.Items[selected].SubItems[0].Text;
         proxy.Address  = lsvProxy.Items[selected].SubItems[1].Text;
         proxy.Port     = int.Parse(lsvProxy.Items[selected].SubItems[2].Text);
         proxy.Username = lsvProxy.Items[selected].SubItems[3].Text;
         proxy.Password = lsvProxy.Items[selected].SubItems[4].Text;
         //显示修改窗体
         FormAddProxy frm = new FormAddProxy(proxy);
         frm.ShowDialog();
         //重新加载
         if (!string.IsNullOrEmpty(proxy.Name))
         {
             lsvProxy.Items[selected] = new ListViewItem(new string[]
             {
                 proxy.Name,
                 proxy.Address,
                 proxy.Port.ToString(),
                 proxy.Username,
                 proxy.Password
             });
         }
     }
 }
示例#2
0
 public FormAddProxy(AcDownProxy proxy)
 {
     if (proxy != null)
     {
         p = proxy;
     }
     else
     {
         proxy = new AcDownProxy();
     }
     InitializeComponent();
 }
示例#3
0
        private void btnProxyAdd_Click(object sender, EventArgs e)
        {
            AcDownProxy  proxy = new AcDownProxy();
            FormAddProxy frm   = new FormAddProxy(proxy);

            frm.ShowDialog();
            if (!string.IsNullOrEmpty(proxy.Name))
            {
                lsvProxy.Items.Add(new ListViewItem(new string[]
                {
                    proxy.Name,
                    proxy.Address,
                    proxy.Port.ToString(),
                    proxy.Username,
                    proxy.Password
                }));
            }
        }
示例#4
0
        /// <summary>
        /// 添加任务
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnAdd_Click(object sender, EventArgs e)
        {
            //判断是否是“粘贴并添加”
            if (txtInput.Text.Trim() == "" && Clipboard.ContainsText())             //如果文本框为空则为“粘贴并添加”
            {
                txtInput.Text = Clipboard.GetText();
            }


            string url = txtInput.Text;

            this.Cursor = Cursors.WaitCursor;

            IPlugin selectedPlugin = null;

            //如果有可用插件
            if (supportedPlugins.Count > 0)
            {
                selectedPlugin = supportedPlugins[cboPlugins.SelectedIndex];

                //取得此url的hash
                string hash = selectedPlugin.GetHash(url);
                //检查是否有已经在进行的相同任务
                foreach (TaskInfo task in _taskMgr.TaskInfos)
                {
                    if (hash == task.Hash)
                    {
                        toolTip.Show("当前任务已经存在", txtInput, 4000);
                        this.Cursor = Cursors.Default;
                        return;
                    }
                }
                try
                {
                    //取得[代理设置]
                    AcDownProxy selectedProxy = null;
                    if (Config.setting.Proxy_Settings != null)
                    {
                        foreach (AcDownProxy item in Config.setting.Proxy_Settings)
                        {
                            if (item.Name == cboProxy.SelectedItem.ToString())
                            {
                                selectedProxy = item;
                            }
                        }
                    }

                    //取得[AutoAnswer设置]
                    List <AutoAnswer> aa = new List <AutoAnswer>();
                    if (chkAutoAnswer.Checked)
                    {
                        if (selectedPlugin.Feature.ContainsKey("AutoAnswer"))
                        {
                            aa = (List <AutoAnswer>)selectedPlugin.Feature["AutoAnswer"];
                            if (aa.Count > 0)
                            {
                                FormAutoAnswer faa = new FormAutoAnswer(aa);
                                faa.TopMost = this.TopMost;
                                var result = faa.ShowDialog();
                                if (result == System.Windows.Forms.DialogResult.Cancel)
                                {
                                    this.Cursor = Cursors.Default;
                                    return;
                                }
                            }
                        }
                    }

                    //添加任务
                    TaskInfo task = _taskMgr.AddTask(selectedPlugin,
                                                     url,
                                                     (selectedProxy == null) ? null : selectedProxy.ToWebProxy());
                    //设置[保存目录]
                    task.SaveDirectory = new DirectoryInfo(txtPath.Text);
                    //设置[字幕]
                    DownloadSubtitleType ds = DownloadSubtitleType.DownloadSubtitle;
                    if (cboDownSub.SelectedIndex == 1)
                    {
                        ds = DownloadSubtitleType.DontDownloadSubtitle;
                    }
                    if (cboDownSub.SelectedIndex == 2)
                    {
                        ds = DownloadSubtitleType.DownloadSubtitleOnly;
                    }
                    task.DownSub = ds;
                    //设置[提取浏览器缓存]
                    task.ExtractCache = chkExtractCache.Checked;
                    //设置[解析关联视频]
                    task.ParseRelated = chkParseRelated.Checked;
                    //设置[自动应答]
                    task.AutoAnswer = aa;
                    //设置注释
                    task.Comment = txtComment.Text;


                    //开始下载
                    _taskMgr.StartTask(task);


                    this.Cursor = Cursors.Default;
                    this.Close();
                }
                catch (Exception ex)
                {
                    Logging.Add(ex);
                    toolTip.Show("新建任务出现错误:\n" + ex.Message, btnAdd, 4000);
                }
            }
            else
            {
                toolTip.Show("您所输入的网络地址(URL)不符合规则。\n没有支持解析此网址的插件,请您检查后重新输入", txtInput, 3000);
                txtInput.SelectAll();
            }
            this.Cursor = Cursors.Default;
        }
示例#5
0
 private void btnCancel_Click(object sender, EventArgs e)
 {
     p = null;
     this.Close();
 }
示例#6
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            //保存设置
            Config.setting.DownSub = chkDownSub.Checked;
            Config.setting.OpenFolderAfterComplete = chkOpenFolder.Checked;
            Config.setting.PlaySound = chkPlaySound.Checked;
            if (chkCustomSound.Checked)
            {
                Config.setting.SoundFile = txtCustomSound.Text;
            }
            else
            {
                Config.setting.SoundFile = "";
            }
            Config.setting.ParseRelated          = chkParseRelated.Checked;
            Config.setting.CacheSize             = (Int32)numCacheSize.Value;
            Config.setting.SavePath              = txtSavePath.Text;
            Config.setting.EnableLog             = chkEnableLog.Checked;
            Config.setting.WatchClipboardEnabled = chkWatch.Checked;
            Config.setting.DeleteTaskAndFile     = chkDeleteFile.Checked;
            Config.setting.EnableExtractCache    = chkEnableExtractCache.Checked;
            Config.setting.EnableWindows7Feature = chkEnableWin7.Checked;
            Config.setting.HideWhenClose         = chkHideWhenClose.Checked;
            Config.setting.MaxRunningTaskCount   = cboMaxRunningCount.SelectedIndex + 1;
            Config.setting.SearchQuery           = txtSearchText.Text;
            Config.setting.RefreshInfoInterval   = (Int32)udRefreshInfo.Value;
            Config.setting.ToolFormTimeout       = (Int32)udToolFormTimeout.Value;
            Config.setting.NetworkTimeout        = (Int32)udNetworkTimeout.Value;
            Config.setting.EnableCheckUpdate     = chkEnableCheckUpdate.Checked;
            if (rdoChannelStable.Checked)
            {
                Config.setting.CheckUpdateDocument = "stable";
            }
            if (rdoChannelDevelop.Checked)
            {
                Config.setting.CheckUpdateDocument = "develop";
            }
            if (rdoChannelCustom.Checked)
            {
                Config.setting.CheckUpdateDocument = txtUpdateDocument.Text;
            }
            Config.setting.RetryTimes       = (Int32)udRetryTimes.Value;
            Config.setting.RetryWaitingTime = (Int32)udRetryWatingTime.Value * 1000;


            //插件设置

            //代理服务器设置
            List <AcDownProxy> proxys = new List <AcDownProxy>();

            foreach (ListViewItem item in lsvProxy.Items)
            {
                AcDownProxy proxy = new AcDownProxy();
                proxy.Name     = item.SubItems[0].Text;
                proxy.Address  = item.SubItems[1].Text;
                proxy.Port     = int.Parse(item.SubItems[2].Text);
                proxy.Username = item.SubItems[3].Text;
                proxy.Password = item.SubItems[4].Text;
                proxys.Add(proxy);
            }
            Config.setting.Proxy_Settings = proxys.ToArray();
            //保存设置
            Config.SaveSettings();
            this.Close();
        }