本文整理汇总了C#中WikiFunctions.Background.BackgroundRequest.Wait方法的典型用法代码示例。如果您正苦于以下问题:C# BackgroundRequest.Wait方法的具体用法?C# BackgroundRequest.Wait怎么用?C# BackgroundRequest.Wait使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WikiFunctions.Background.BackgroundRequest
的用法示例。
在下文中一共展示了BackgroundRequest.Wait方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: bypassAllRedirectsToolStripMenuItem_Click
private void bypassAllRedirectsToolStripMenuItem_Click(object sender, EventArgs e)
{
#if !DEBUG
if (MessageBox.Show("Replacement of links to redirects with direct links is strongly discouraged, " +
"however it could be useful in some circumstances. Are you sure you want to continue?",
"Bypass redirects", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) != DialogResult.Yes)
return;
#endif
BackgroundRequest r = new BackgroundRequest();
Enabled = false;
r.BypassRedirects(txtEdit.Text, TheSession.Editor.SynchronousEditor.Clone());
r.Wait();
Enabled = true;
txtEdit.Text = (string)r.Result;
}
示例2: UpdateWikiStatus
/// <summary>
/// Checks log in status, registered and version.
/// </summary>
public WikiStatusResult UpdateWikiStatus()
{
try
{
string typoPostfix = "";
string userGroups;
Groups.Clear();
//load version check page
BackgroundRequest br = new BackgroundRequest();
br.GetHTML(
"http://en.wikipedia.org/w/index.php?title=Wikipedia:AutoWikiBrowser/CheckPage/Version&action=raw");
//load check page
if (Variables.IsWikia)
webBrowserLogin.Navigate(
"http://www.wikia.com/wiki/index.php?title=Wikia:AutoWikiBrowser/CheckPage&action=edit");
else if ((Variables.Project == ProjectEnum.wikipedia) && (Variables.LangCode == LangCodeEnum.ar))
webBrowserLogin.Navigate(
"http://ar.wikipedia.org/w/index.php?title=%D9%88%D9%8A%D9%83%D9%8A%D8%A8%D9%8A%D8%AF%D9%8A%D8%A7:%D8%A7%D9%84%D8%A3%D9%88%D8%AA%D9%88%D9%88%D9%8A%D9%83%D9%8A_%D8%A8%D8%B1%D8%A7%D9%88%D8%B2%D8%B1/%D9%85%D8%B3%D9%85%D9%88%D8%AD&action=edit");
else
webBrowserLogin.Navigate(Variables.URLIndex + "?title=Project:AutoWikiBrowser/CheckPage&action=edit");
//wait for both pages to load
webBrowserLogin.Wait();
string strText = webBrowserLogin.GetArticleText();
Variables.RTL = HeadRTL.IsMatch(webBrowserLogin.ToString());
if (Variables.IsWikia)
{
//this object loads a local checkpage on Wikia
//it cannot be used to approve users, but it could be used to set some settings
//such as underscores and pages to ignore
WebControl webBrowserWikia = new WebControl();
webBrowserWikia.Navigate(Variables.URLIndex + "?title=Project:AutoWikiBrowser/CheckPage&action=edit");
webBrowserWikia.Wait();
try
{
Variables.LangCode = Variables.ParseLanguage(webBrowserWikia.GetScriptingVar("wgContentLanguage"));
}
catch
{
// use English if language not recognized
Variables.LangCode = LangCodeEnum.en;
}
typoPostfix = "-" + Variables.ParseLanguage(webBrowserWikia.GetScriptingVar("wgContentLanguage"));
string s = webBrowserWikia.GetArticleText();
// selectively add content of the local checkpage to the global one
strText += Message.Match(s).Value
/*+ Underscores.Match(s).Value*/
+ WikiRegexes.NoGeneralFixes.Match(s);
userGroups = webBrowserWikia.GetScriptingVar("wgUserGroups");
}
else
userGroups = webBrowserLogin.GetScriptingVar("wgUserGroups");
bLoaded = true;
if (Variables.IsCustomProject)
{
try
{
Variables.LangCode =
Variables.ParseLanguage(webBrowserLogin.GetScriptingVar("wgContentLanguage"));
}
catch
{
// use English if language not recognized
Variables.LangCode = LangCodeEnum.en;
}
}
br.Wait();
string strVersionPage = (string)br.Result;
//see if this version is enabled
if (!strVersionPage.Contains(AWBVersion + " enabled"))
{
IsBot = IsAdmin = WikiStatus = false;
return WikiStatusResult.OldVersion;
}
// else
if (!WeAskedAboutUpdate && strVersionPage.Contains(AWBVersion + " enabled (old)"))
{
WeAskedAboutUpdate = true;
if (
MessageBox.Show(
"This version has been superceeded by a new version. You may continue to use this version or update to the newest version.\r\n\r\nWould you like to automatically upgrade to the newest version?",
"Upgrade?", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
Match m_version = Regex.Match(strVersionPage, @"<!-- Current version: (.*?) -->");
if (m_version.Success && m_version.Groups[1].Value.Length == 4)
//.........这里部分代码省略.........
示例3: btnOk_Click
private void btnOk_Click(object sender, EventArgs e)
{
try
{
timer.Enabled = false;
RefreshImgs();
txtBacklog.Text = txtBacklog.Text.Replace("_", " ");
ToDo.Clear();
foreach (DataGridViewRow r in Grid.Rows)
{
if (!r.IsNewRow && !string.IsNullOrEmpty((string)r.Cells[0].Value)
&& !ToDo.ContainsKey((string)r.Cells[0].Value))
ToDo.Add((string)r.Cells[0].Value, (string)r.Cells[1].Value);
}
BackgroundRequest req = new BackgroundRequest();
if (ToDo.Count > 0)
{
string[] imgs = new string[ToDo.Count];
ToDo.Keys.CopyTo(imgs, 0);
Enabled = false;
req.GetList(new ImageFileLinksListProvider(), imgs);
req.Wait();
Enabled = true;
if (req.Result != null && req.Result is List<Article>)
IfdAWBPlugin.AWB.ListMaker.Add((List<Article>)req.Result);
}
}
catch (Exception ex)
{
ErrorHandler.HandleException(ex);
}
DialogResult = DialogResult.OK;
}
示例4: UpdateWikiStatus
/// <summary>
/// Checks log in status, registered and version.
/// </summary>
private WikiStatusResult UpdateWikiStatus()
{
try
{
string typoPostfix = "";
IsBot = false;
//TODO: login?
Site = new SiteInfo(Editor);
//load version check page
BackgroundRequest versionRequest = new BackgroundRequest();
versionRequest.GetHTML(
"http://en.wikipedia.org/w/index.php?title=Wikipedia:AutoWikiBrowser/CheckPage/Version&action=raw");
//load check page
string url;
if (Variables.IsWikia)
url = "http://www.wikia.com/wiki/index.php?title=Wikia:AutoWikiBrowser/CheckPage&action=edit";
else if ((Variables.Project == ProjectEnum.wikipedia) && (Variables.LangCode == LangCodeEnum.ar))
url = "http://ar.wikipedia.org/w/index.php?title=%D9%88%D9%8A%D9%83%D9%8A%D8%A8%D9%8A%D8%AF%D9%8A%D8%A7:%D8%A7%D9%84%D8%A3%D9%88%D8%AA%D9%88%D9%88%D9%8A%D9%83%D9%8A_%D8%A8%D8%B1%D8%A7%D9%88%D8%B2%D8%B1/%D9%85%D8%B3%D9%85%D9%88%D8%AD&action=edit";
else
url = Variables.URLIndex + "?title=Project:AutoWikiBrowser/CheckPage&action=edit";
string strText = Editor.SynchronousEditor.HttpGet(url);
Variables.RTL = Site.IsRightToLeft;
if (Variables.IsCustomProject || Variables.IsWikia)
{
try
{
Variables.LangCode =
Variables.ParseLanguage(Site.Language);
}
catch
{
// use English if language not recognized
Variables.LangCode = LangCodeEnum.en;
}
}
if (Variables.IsWikia)
{
//this object loads a local checkpage on Wikia
//it cannot be used to approve users, but it could be used to set some settings
//such as underscores and pages to ignore
AsyncApiEdit editWikia = (AsyncApiEdit)Editor.Clone();
SiteInfo wikiaInfo = new SiteInfo();
string s = editWikia.SynchronousEditor.Open("Project:AutoWikiBrowser/CheckPage");
typoPostfix = "-" + Variables.LangCode;
// selectively add content of the local checkpage to the global one
strText += Message.Match(s).Value
/*+ Underscores.Match(s).Value*/
+ WikiRegexes.NoGeneralFixes.Match(s);
}
versionRequest.Wait();
string strVersionPage = (string)versionRequest.Result;
//see if this version is enabled
if (!strVersionPage.Contains(AWBVersion + " enabled"))
return WikiStatusResult.OldVersion;
//TODO:
// else
//if (!WeAskedAboutUpdate && strVersionPage.Contains(AWBVersion + " enabled (old)"))
//{
// WeAskedAboutUpdate = true;
// if (
// MessageBox.Show(
// "This version has been superceeded by a new version. You may continue to use this version or update to the newest version.\r\n\r\nWould you like to automatically upgrade to the newest version?",
// "Upgrade?", MessageBoxButtons.YesNo) == DialogResult.Yes)
// {
// Match version = Regex.Match(strVersionPage, @"<!-- Current version: (.*?) -->");
// if (version.Success && version.Groups[1].Value.Length == 4)
// {
// System.Diagnostics.Process.Start(Path.GetDirectoryName(Application.ExecutablePath) +
// "\\AWBUpdater.exe");
// }
// else if (
// MessageBox.Show("Error automatically updating AWB. Load the download page instead?",
// "Load download page?", MessageBoxButtons.YesNo) == DialogResult.Yes)
// {
// Tools.OpenURLInBrowser("http://sourceforge.net/project/showfiles.php?group_id=158332");
// }
// }
//}
CheckPageText = strText;
// don't run GetInLogInStatus if we don't have the username, we sometimes get 2 error message boxes otherwise
bool loggedIn = Editor.User.IsRegistered;
//.........这里部分代码省略.........