Merge branch 'custom-uploader-request-format'

This commit is contained in:
Jaex 2018-11-21 23:48:32 +03:00
commit 5d01b6319b
13 changed files with 3037 additions and 9379 deletions

View file

@ -298,6 +298,16 @@ public enum CustomUploaderRequestMethod
DELETE DELETE
} }
public enum CustomUploaderRequestFormat
{
Automatic,
FormData,
URLQuery,
JSON,
//Binary,
//FormURLEncoded
}
[Flags] [Flags]
public enum CustomUploaderDestinationType public enum CustomUploaderDestinationType
{ {

View file

@ -71,33 +71,42 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer
public sealed class CustomFileUploader : FileUploader public sealed class CustomFileUploader : FileUploader
{ {
private CustomUploaderItem customUploader; private CustomUploaderItem uploader;
public CustomFileUploader(CustomUploaderItem customUploaderItem) public CustomFileUploader(CustomUploaderItem customUploaderItem)
{ {
customUploader = customUploaderItem; uploader = customUploaderItem;
} }
public override UploadResult Upload(Stream stream, string fileName) public override UploadResult Upload(Stream stream, string fileName)
{ {
CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, ""); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, "");
UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.FileUploader);
customUploader.GetArguments(input), customUploader.GetHeaders(input), null, customUploader.ResponseType, customUploader.GetHttpMethod());
if (result.IsSuccess) if (requestFormat == CustomUploaderRequestFormat.FormData)
{ {
try UploadResult result = SendRequestFile(uploader.GetRequestURL(), stream, fileName, uploader.GetFileFormName(),
{ uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod());
customUploader.ParseResponse(result);
}
catch (Exception e)
{
Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e);
}
}
return result; if (result.IsSuccess)
{
try
{
uploader.ParseResponse(result);
}
catch (Exception e)
{
Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e);
}
}
return result;
}
else
{
throw new Exception("Unsupported request format.");
}
} }
} }
} }

View file

@ -73,7 +73,6 @@ private void InitializeComponent()
this.lblTwitterDefaultMessage = new System.Windows.Forms.Label(); this.lblTwitterDefaultMessage = new System.Windows.Forms.Label();
this.txtTwitterDefaultMessage = new System.Windows.Forms.TextBox(); this.txtTwitterDefaultMessage = new System.Windows.Forms.TextBox();
this.cbTwitterSkipMessageBox = new System.Windows.Forms.CheckBox(); this.cbTwitterSkipMessageBox = new System.Windows.Forms.CheckBox();
this.oauthTwitter = new ShareX.UploadersLib.OAuthControl();
this.txtTwitterDescription = new System.Windows.Forms.TextBox(); this.txtTwitterDescription = new System.Windows.Forms.TextBox();
this.lblTwitterDescription = new System.Windows.Forms.Label(); this.lblTwitterDescription = new System.Windows.Forms.Label();
this.btnTwitterRemove = new System.Windows.Forms.Button(); this.btnTwitterRemove = new System.Windows.Forms.Button();
@ -177,7 +176,6 @@ private void InitializeComponent()
this.tpBitly = new System.Windows.Forms.TabPage(); this.tpBitly = new System.Windows.Forms.TabPage();
this.txtBitlyDomain = new System.Windows.Forms.TextBox(); this.txtBitlyDomain = new System.Windows.Forms.TextBox();
this.lblBitlyDomain = new System.Windows.Forms.Label(); this.lblBitlyDomain = new System.Windows.Forms.Label();
this.oauth2Bitly = new ShareX.UploadersLib.OAuthControl();
this.tpYourls = new System.Windows.Forms.TabPage(); this.tpYourls = new System.Windows.Forms.TabPage();
this.txtYourlsPassword = new System.Windows.Forms.TextBox(); this.txtYourlsPassword = new System.Windows.Forms.TextBox();
this.txtYourlsUsername = new System.Windows.Forms.TextBox(); this.txtYourlsUsername = new System.Windows.Forms.TextBox();
@ -279,12 +277,10 @@ private void InitializeComponent()
this.cbDropboxAutoCreateShareableLink = new System.Windows.Forms.CheckBox(); this.cbDropboxAutoCreateShareableLink = new System.Windows.Forms.CheckBox();
this.lblDropboxPath = new System.Windows.Forms.Label(); this.lblDropboxPath = new System.Windows.Forms.Label();
this.txtDropboxPath = new System.Windows.Forms.TextBox(); this.txtDropboxPath = new System.Windows.Forms.TextBox();
this.oauth2Dropbox = new ShareX.UploadersLib.OAuthControl();
this.tpOneDrive = new System.Windows.Forms.TabPage(); this.tpOneDrive = new System.Windows.Forms.TabPage();
this.tvOneDrive = new System.Windows.Forms.TreeView(); this.tvOneDrive = new System.Windows.Forms.TreeView();
this.lblOneDriveFolderID = new System.Windows.Forms.Label(); this.lblOneDriveFolderID = new System.Windows.Forms.Label();
this.cbOneDriveCreateShareableLink = new System.Windows.Forms.CheckBox(); this.cbOneDriveCreateShareableLink = new System.Windows.Forms.CheckBox();
this.oAuth2OneDrive = new ShareX.UploadersLib.OAuthControl();
this.tpGoogleDrive = new System.Windows.Forms.TabPage(); this.tpGoogleDrive = new System.Windows.Forms.TabPage();
this.cbGoogleDriveDirectLink = new System.Windows.Forms.CheckBox(); this.cbGoogleDriveDirectLink = new System.Windows.Forms.CheckBox();
this.cbGoogleDriveUseFolder = new System.Windows.Forms.CheckBox(); this.cbGoogleDriveUseFolder = new System.Windows.Forms.CheckBox();
@ -295,7 +291,6 @@ private void InitializeComponent()
this.chGoogleDriveDescription = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chGoogleDriveDescription = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.btnGoogleDriveRefreshFolders = new System.Windows.Forms.Button(); this.btnGoogleDriveRefreshFolders = new System.Windows.Forms.Button();
this.cbGoogleDriveIsPublic = new System.Windows.Forms.CheckBox(); this.cbGoogleDriveIsPublic = new System.Windows.Forms.CheckBox();
this.oauth2GoogleDrive = new ShareX.UploadersLib.OAuthControl();
this.tpPuush = new System.Windows.Forms.TabPage(); this.tpPuush = new System.Windows.Forms.TabPage();
this.lblPuushAPIKey = new System.Windows.Forms.Label(); this.lblPuushAPIKey = new System.Windows.Forms.Label();
this.txtPuushAPIKey = new System.Windows.Forms.TextBox(); this.txtPuushAPIKey = new System.Windows.Forms.TextBox();
@ -312,7 +307,6 @@ private void InitializeComponent()
this.chBoxFoldersName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chBoxFoldersName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.lblBoxFolderID = new System.Windows.Forms.Label(); this.lblBoxFolderID = new System.Windows.Forms.Label();
this.btnBoxRefreshFolders = new System.Windows.Forms.Button(); this.btnBoxRefreshFolders = new System.Windows.Forms.Button();
this.oauth2Box = new ShareX.UploadersLib.OAuthControl();
this.tpAmazonS3 = new System.Windows.Forms.TabPage(); this.tpAmazonS3 = new System.Windows.Forms.TabPage();
this.gbAmazonS3Advanced = new System.Windows.Forms.GroupBox(); this.gbAmazonS3Advanced = new System.Windows.Forms.GroupBox();
this.lblAmazonS3StripExtension = new System.Windows.Forms.Label(); this.lblAmazonS3StripExtension = new System.Windows.Forms.Label();
@ -356,7 +350,6 @@ private void InitializeComponent()
this.txtGoogleCloudStorageDomain = new System.Windows.Forms.TextBox(); this.txtGoogleCloudStorageDomain = new System.Windows.Forms.TextBox();
this.lblGoogleCloudStorageBucket = new System.Windows.Forms.Label(); this.lblGoogleCloudStorageBucket = new System.Windows.Forms.Label();
this.txtGoogleCloudStorageBucket = new System.Windows.Forms.TextBox(); this.txtGoogleCloudStorageBucket = new System.Windows.Forms.TextBox();
this.oauth2GoogleCloudStorage = new ShareX.UploadersLib.OAuthControl();
this.tpAzureStorage = new System.Windows.Forms.TabPage(); this.tpAzureStorage = new System.Windows.Forms.TabPage();
this.lblAzureStorageURLPreview = new System.Windows.Forms.Label(); this.lblAzureStorageURLPreview = new System.Windows.Forms.Label();
this.lblAzureStorageURLPreviewLabel = new System.Windows.Forms.Label(); this.lblAzureStorageURLPreviewLabel = new System.Windows.Forms.Label();
@ -383,8 +376,6 @@ private void InitializeComponent()
this.lblB2ApplicationKeyId = new System.Windows.Forms.Label(); this.lblB2ApplicationKeyId = new System.Windows.Forms.Label();
this.tpGfycat = new System.Windows.Forms.TabPage(); this.tpGfycat = new System.Windows.Forms.TabPage();
this.cbGfycatIsPublic = new System.Windows.Forms.CheckBox(); this.cbGfycatIsPublic = new System.Windows.Forms.CheckBox();
this.atcGfycatAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oauth2Gfycat = new ShareX.UploadersLib.OAuthControl();
this.tpMega = new System.Windows.Forms.TabPage(); this.tpMega = new System.Windows.Forms.TabPage();
this.btnMegaRefreshFolders = new System.Windows.Forms.Button(); this.btnMegaRefreshFolders = new System.Windows.Forms.Button();
this.lblMegaStatus = new System.Windows.Forms.Label(); this.lblMegaStatus = new System.Windows.Forms.Label();
@ -434,7 +425,6 @@ private void InitializeComponent()
this.lblSendSpaceUsername = new System.Windows.Forms.Label(); this.lblSendSpaceUsername = new System.Windows.Forms.Label();
this.txtSendSpacePassword = new System.Windows.Forms.TextBox(); this.txtSendSpacePassword = new System.Windows.Forms.TextBox();
this.txtSendSpaceUserName = new System.Windows.Forms.TextBox(); this.txtSendSpaceUserName = new System.Windows.Forms.TextBox();
this.atcSendSpaceAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.tpGe_tt = new System.Windows.Forms.TabPage(); this.tpGe_tt = new System.Windows.Forms.TabPage();
this.lblGe_ttStatus = new System.Windows.Forms.Label(); this.lblGe_ttStatus = new System.Windows.Forms.Label();
this.lblGe_ttPassword = new System.Windows.Forms.Label(); this.lblGe_ttPassword = new System.Windows.Forms.Label();
@ -455,7 +445,6 @@ private void InitializeComponent()
this.txtJiraConfigHelp = new System.Windows.Forms.TextBox(); this.txtJiraConfigHelp = new System.Windows.Forms.TextBox();
this.txtJiraHost = new System.Windows.Forms.TextBox(); this.txtJiraHost = new System.Windows.Forms.TextBox();
this.lblJiraHost = new System.Windows.Forms.Label(); this.lblJiraHost = new System.Windows.Forms.Label();
this.oAuthJira = new ShareX.UploadersLib.OAuthControl();
this.tpLambda = new System.Windows.Forms.TabPage(); this.tpLambda = new System.Windows.Forms.TabPage();
this.lblLambdaInfo = new System.Windows.Forms.Label(); this.lblLambdaInfo = new System.Windows.Forms.Label();
this.lblLambdaApiKey = new System.Windows.Forms.Label(); this.lblLambdaApiKey = new System.Windows.Forms.Label();
@ -552,7 +541,6 @@ private void InitializeComponent()
this.cbYouTubeUseShortenedLink = new System.Windows.Forms.CheckBox(); this.cbYouTubeUseShortenedLink = new System.Windows.Forms.CheckBox();
this.cbYouTubePrivacyType = new System.Windows.Forms.ComboBox(); this.cbYouTubePrivacyType = new System.Windows.Forms.ComboBox();
this.lblYouTubePrivacyType = new System.Windows.Forms.Label(); this.lblYouTubePrivacyType = new System.Windows.Forms.Label();
this.oauth2YouTube = new ShareX.UploadersLib.OAuthControl();
this.tpSharedFolder = new System.Windows.Forms.TabPage(); this.tpSharedFolder = new System.Windows.Forms.TabPage();
this.lbSharedFolderAccounts = new System.Windows.Forms.ListBox(); this.lbSharedFolderAccounts = new System.Windows.Forms.ListBox();
this.pgSharedFolderAccount = new System.Windows.Forms.PropertyGrid(); this.pgSharedFolderAccount = new System.Windows.Forms.PropertyGrid();
@ -612,7 +600,6 @@ private void InitializeComponent()
this.txtGistCustomURL = new System.Windows.Forms.TextBox(); this.txtGistCustomURL = new System.Windows.Forms.TextBox();
this.cbGistUseRawURL = new System.Windows.Forms.CheckBox(); this.cbGistUseRawURL = new System.Windows.Forms.CheckBox();
this.cbGistPublishPublic = new System.Windows.Forms.CheckBox(); this.cbGistPublishPublic = new System.Windows.Forms.CheckBox();
this.oAuth2Gist = new ShareX.UploadersLib.OAuthControl();
this.tpUpaste = new System.Windows.Forms.TabPage(); this.tpUpaste = new System.Windows.Forms.TabPage();
this.cbUpasteIsPublic = new System.Windows.Forms.CheckBox(); this.cbUpasteIsPublic = new System.Windows.Forms.CheckBox();
this.lblUpasteUserKey = new System.Windows.Forms.Label(); this.lblUpasteUserKey = new System.Windows.Forms.Label();
@ -636,8 +623,6 @@ private void InitializeComponent()
this.cbImgurUseGIFV = new System.Windows.Forms.CheckBox(); this.cbImgurUseGIFV = new System.Windows.Forms.CheckBox();
this.cbImgurUploadSelectedAlbum = new System.Windows.Forms.CheckBox(); this.cbImgurUploadSelectedAlbum = new System.Windows.Forms.CheckBox();
this.cbImgurDirectLink = new System.Windows.Forms.CheckBox(); this.cbImgurDirectLink = new System.Windows.Forms.CheckBox();
this.atcImgurAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oauth2Imgur = new ShareX.UploadersLib.OAuthControl();
this.lvImgurAlbumList = new System.Windows.Forms.ListView(); this.lvImgurAlbumList = new System.Windows.Forms.ListView();
this.chImgurID = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chImgurID = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.chImgurTitle = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chImgurTitle = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
@ -655,7 +640,6 @@ private void InitializeComponent()
this.txtImageShackPassword = new System.Windows.Forms.TextBox(); this.txtImageShackPassword = new System.Windows.Forms.TextBox();
this.lblImageShackPassword = new System.Windows.Forms.Label(); this.lblImageShackPassword = new System.Windows.Forms.Label();
this.tpTinyPic = new System.Windows.Forms.TabPage(); this.tpTinyPic = new System.Windows.Forms.TabPage();
this.atcTinyPicAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.btnTinyPicLogin = new System.Windows.Forms.Button(); this.btnTinyPicLogin = new System.Windows.Forms.Button();
this.txtTinyPicPassword = new System.Windows.Forms.TextBox(); this.txtTinyPicPassword = new System.Windows.Forms.TextBox();
this.lblTinyPicPassword = new System.Windows.Forms.Label(); this.lblTinyPicPassword = new System.Windows.Forms.Label();
@ -664,7 +648,6 @@ private void InitializeComponent()
this.btnTinyPicOpenMyImages = new System.Windows.Forms.Button(); this.btnTinyPicOpenMyImages = new System.Windows.Forms.Button();
this.tpFlickr = new System.Windows.Forms.TabPage(); this.tpFlickr = new System.Windows.Forms.TabPage();
this.cbFlickrDirectLink = new System.Windows.Forms.CheckBox(); this.cbFlickrDirectLink = new System.Windows.Forms.CheckBox();
this.oauthFlickr = new ShareX.UploadersLib.OAuthControl();
this.tpPhotobucket = new System.Windows.Forms.TabPage(); this.tpPhotobucket = new System.Windows.Forms.TabPage();
this.gbPhotobucketAlbumPath = new System.Windows.Forms.GroupBox(); this.gbPhotobucketAlbumPath = new System.Windows.Forms.GroupBox();
this.btnPhotobucketAddAlbum = new System.Windows.Forms.Button(); this.btnPhotobucketAddAlbum = new System.Windows.Forms.Button();
@ -692,7 +675,6 @@ private void InitializeComponent()
this.chPicasaName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chPicasaName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.chPicasaDescription = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chPicasaDescription = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.btnPicasaRefreshAlbumList = new System.Windows.Forms.Button(); this.btnPicasaRefreshAlbumList = new System.Windows.Forms.Button();
this.oauth2Picasa = new ShareX.UploadersLib.OAuthControl();
this.tpChevereto = new System.Windows.Forms.TabPage(); this.tpChevereto = new System.Windows.Forms.TabPage();
this.btnCheveretoTestAll = new System.Windows.Forms.Button(); this.btnCheveretoTestAll = new System.Windows.Forms.Button();
this.lblCheveretoUploadURLExample = new System.Windows.Forms.Label(); this.lblCheveretoUploadURLExample = new System.Windows.Forms.Label();
@ -710,7 +692,33 @@ private void InitializeComponent()
this.tcUploaders = new System.Windows.Forms.TabControl(); this.tcUploaders = new System.Windows.Forms.TabControl();
this.lblWidthHint = new System.Windows.Forms.Label(); this.lblWidthHint = new System.Windows.Forms.Label();
this.ttlvMain = new ShareX.HelpersLib.TabToListView(); this.ttlvMain = new ShareX.HelpersLib.TabToListView();
this.tpCustomUploaderData = new System.Windows.Forms.TabPage();
this.pCustomUploaderData = new System.Windows.Forms.Panel();
this.rtbCustomUploaderData = new System.Windows.Forms.RichTextBox();
this.btnCustomUploaderDataBeautify = new System.Windows.Forms.Button();
this.atcImgurAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oauth2Imgur = new ShareX.UploadersLib.OAuthControl();
this.atcTinyPicAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oauthFlickr = new ShareX.UploadersLib.OAuthControl();
this.oauth2Picasa = new ShareX.UploadersLib.OAuthControl();
this.oAuth2Gist = new ShareX.UploadersLib.OAuthControl();
this.oauth2Dropbox = new ShareX.UploadersLib.OAuthControl();
this.oAuth2OneDrive = new ShareX.UploadersLib.OAuthControl();
this.oauth2GoogleDrive = new ShareX.UploadersLib.OAuthControl();
this.oauth2Box = new ShareX.UploadersLib.OAuthControl();
this.oauth2GoogleCloudStorage = new ShareX.UploadersLib.OAuthControl();
this.oauthTwitter = new ShareX.UploadersLib.OAuthControl();
this.oauth2Bitly = new ShareX.UploadersLib.OAuthControl();
this.atcGfycatAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oauth2Gfycat = new ShareX.UploadersLib.OAuthControl();
this.atcSendSpaceAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.oAuthJira = new ShareX.UploadersLib.OAuthControl();
this.oauth2YouTube = new ShareX.UploadersLib.OAuthControl();
this.actRapidShareAccountType = new ShareX.UploadersLib.AccountTypeControl(); this.actRapidShareAccountType = new ShareX.UploadersLib.AccountTypeControl();
this.tpCustomUploaderFile = new System.Windows.Forms.TabPage();
this.lblCustomUploaderRequestFormat = new System.Windows.Forms.Label();
this.cbCustomUploaderRequestFormat = new System.Windows.Forms.ComboBox();
this.btnCustomUploaderDataMinify = new System.Windows.Forms.Button();
this.tpOtherUploaders.SuspendLayout(); this.tpOtherUploaders.SuspendLayout();
this.tcOtherUploaders.SuspendLayout(); this.tcOtherUploaders.SuspendLayout();
this.tpTwitter.SuspendLayout(); this.tpTwitter.SuspendLayout();
@ -810,6 +818,9 @@ private void InitializeComponent()
this.tpChevereto.SuspendLayout(); this.tpChevereto.SuspendLayout();
this.tpVgyme.SuspendLayout(); this.tpVgyme.SuspendLayout();
this.tcUploaders.SuspendLayout(); this.tcUploaders.SuspendLayout();
this.tpCustomUploaderData.SuspendLayout();
this.pCustomUploaderData.SuspendLayout();
this.tpCustomUploaderFile.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// txtRapidSharePremiumUserName // txtRapidSharePremiumUserName
@ -957,15 +968,6 @@ private void InitializeComponent()
this.cbTwitterSkipMessageBox.UseVisualStyleBackColor = true; this.cbTwitterSkipMessageBox.UseVisualStyleBackColor = true;
this.cbTwitterSkipMessageBox.CheckedChanged += new System.EventHandler(this.cbTwitterSkipMessageBox_CheckedChanged); this.cbTwitterSkipMessageBox.CheckedChanged += new System.EventHandler(this.cbTwitterSkipMessageBox_CheckedChanged);
// //
// oauthTwitter
//
resources.ApplyResources(this.oauthTwitter, "oauthTwitter");
this.oauthTwitter.IsRefreshable = false;
this.oauthTwitter.Name = "oauthTwitter";
this.oauthTwitter.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauthTwitter_OpenButtonClicked);
this.oauthTwitter.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauthTwitter_CompleteButtonClicked);
this.oauthTwitter.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauthTwitter_ClearButtonClicked);
//
// txtTwitterDescription // txtTwitterDescription
// //
resources.ApplyResources(this.txtTwitterDescription, "txtTwitterDescription"); resources.ApplyResources(this.txtTwitterDescription, "txtTwitterDescription");
@ -1070,6 +1072,8 @@ private void InitializeComponent()
// //
// pCustomUploader // pCustomUploader
// //
this.pCustomUploader.Controls.Add(this.cbCustomUploaderRequestFormat);
this.pCustomUploader.Controls.Add(this.lblCustomUploaderRequestFormat);
this.pCustomUploader.Controls.Add(this.pCustomUploaderDeletionURL); this.pCustomUploader.Controls.Add(this.pCustomUploaderDeletionURL);
this.pCustomUploader.Controls.Add(this.pCustomUploaderThumbnailURL); this.pCustomUploader.Controls.Add(this.pCustomUploaderThumbnailURL);
this.pCustomUploader.Controls.Add(this.pCustomUploaderURL); this.pCustomUploader.Controls.Add(this.pCustomUploaderURL);
@ -1079,9 +1083,7 @@ private void InitializeComponent()
this.pCustomUploader.Controls.Add(this.tcCustomUploaderResponseParse); this.pCustomUploader.Controls.Add(this.tcCustomUploaderResponseParse);
this.pCustomUploader.Controls.Add(this.lblCustomUploaderURL); this.pCustomUploader.Controls.Add(this.lblCustomUploaderURL);
this.pCustomUploader.Controls.Add(this.tcCustomUploaderArguments); this.pCustomUploader.Controls.Add(this.tcCustomUploaderArguments);
this.pCustomUploader.Controls.Add(this.txtCustomUploaderFileForm);
this.pCustomUploader.Controls.Add(this.lblCustomUploaderRequestType); this.pCustomUploader.Controls.Add(this.lblCustomUploaderRequestType);
this.pCustomUploader.Controls.Add(this.lblCustomUploaderFileForm);
this.pCustomUploader.Controls.Add(this.txtCustomUploaderName); this.pCustomUploader.Controls.Add(this.txtCustomUploaderName);
this.pCustomUploader.Controls.Add(this.lblCustomUploaderThumbnailURL); this.pCustomUploader.Controls.Add(this.lblCustomUploaderThumbnailURL);
this.pCustomUploader.Controls.Add(this.cbCustomUploaderResponseType); this.pCustomUploader.Controls.Add(this.cbCustomUploaderResponseType);
@ -1326,7 +1328,9 @@ private void InitializeComponent()
// //
// tcCustomUploaderArguments // tcCustomUploaderArguments
// //
this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderData);
this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderArguments); this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderArguments);
this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderFile);
this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderHeaders); this.tcCustomUploaderArguments.Controls.Add(this.tpCustomUploaderHeaders);
resources.ApplyResources(this.tcCustomUploaderArguments, "tcCustomUploaderArguments"); resources.ApplyResources(this.tcCustomUploaderArguments, "tcCustomUploaderArguments");
this.tcCustomUploaderArguments.Name = "tcCustomUploaderArguments"; this.tcCustomUploaderArguments.Name = "tcCustomUploaderArguments";
@ -1756,15 +1760,6 @@ private void InitializeComponent()
resources.ApplyResources(this.lblBitlyDomain, "lblBitlyDomain"); resources.ApplyResources(this.lblBitlyDomain, "lblBitlyDomain");
this.lblBitlyDomain.Name = "lblBitlyDomain"; this.lblBitlyDomain.Name = "lblBitlyDomain";
// //
// oauth2Bitly
//
this.oauth2Bitly.IsRefreshable = false;
resources.ApplyResources(this.oauth2Bitly, "oauth2Bitly");
this.oauth2Bitly.Name = "oauth2Bitly";
this.oauth2Bitly.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Bitly_OpenButtonClicked);
this.oauth2Bitly.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Bitly_CompleteButtonClicked);
this.oauth2Bitly.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Bitly_ClearButtonClicked);
//
// tpYourls // tpYourls
// //
this.tpYourls.BackColor = System.Drawing.SystemColors.Window; this.tpYourls.BackColor = System.Drawing.SystemColors.Window;
@ -2521,15 +2516,6 @@ private void InitializeComponent()
this.txtDropboxPath.Name = "txtDropboxPath"; this.txtDropboxPath.Name = "txtDropboxPath";
this.txtDropboxPath.TextChanged += new System.EventHandler(this.txtDropboxPath_TextChanged); this.txtDropboxPath.TextChanged += new System.EventHandler(this.txtDropboxPath_TextChanged);
// //
// oauth2Dropbox
//
this.oauth2Dropbox.IsRefreshable = false;
resources.ApplyResources(this.oauth2Dropbox, "oauth2Dropbox");
this.oauth2Dropbox.Name = "oauth2Dropbox";
this.oauth2Dropbox.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Dropbox_OpenButtonClicked);
this.oauth2Dropbox.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Dropbox_CompleteButtonClicked);
this.oauth2Dropbox.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Dropbox_ClearButtonClicked);
//
// tpOneDrive // tpOneDrive
// //
this.tpOneDrive.BackColor = System.Drawing.SystemColors.Window; this.tpOneDrive.BackColor = System.Drawing.SystemColors.Window;
@ -2559,15 +2545,6 @@ private void InitializeComponent()
this.cbOneDriveCreateShareableLink.UseVisualStyleBackColor = true; this.cbOneDriveCreateShareableLink.UseVisualStyleBackColor = true;
this.cbOneDriveCreateShareableLink.CheckedChanged += new System.EventHandler(this.cbOneDriveCreateShareableLink_CheckedChanged); this.cbOneDriveCreateShareableLink.CheckedChanged += new System.EventHandler(this.cbOneDriveCreateShareableLink_CheckedChanged);
// //
// oAuth2OneDrive
//
resources.ApplyResources(this.oAuth2OneDrive, "oAuth2OneDrive");
this.oAuth2OneDrive.Name = "oAuth2OneDrive";
this.oAuth2OneDrive.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuth2OneDrive_OpenButtonClicked);
this.oAuth2OneDrive.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuth2OneDrive_CompleteButtonClicked);
this.oAuth2OneDrive.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuth2OneDrive_ClearButtonClicked);
this.oAuth2OneDrive.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oAuth2OneDrive_RefreshButtonClicked);
//
// tpGoogleDrive // tpGoogleDrive
// //
this.tpGoogleDrive.BackColor = System.Drawing.SystemColors.Window; this.tpGoogleDrive.BackColor = System.Drawing.SystemColors.Window;
@ -2643,15 +2620,6 @@ private void InitializeComponent()
this.cbGoogleDriveIsPublic.UseVisualStyleBackColor = true; this.cbGoogleDriveIsPublic.UseVisualStyleBackColor = true;
this.cbGoogleDriveIsPublic.CheckedChanged += new System.EventHandler(this.cbGoogleDriveIsPublic_CheckedChanged); this.cbGoogleDriveIsPublic.CheckedChanged += new System.EventHandler(this.cbGoogleDriveIsPublic_CheckedChanged);
// //
// oauth2GoogleDrive
//
resources.ApplyResources(this.oauth2GoogleDrive, "oauth2GoogleDrive");
this.oauth2GoogleDrive.Name = "oauth2GoogleDrive";
this.oauth2GoogleDrive.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2GoogleDrive_OpenButtonClicked);
this.oauth2GoogleDrive.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2GoogleDrive_CompleteButtonClicked);
this.oauth2GoogleDrive.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2GoogleDrive_ClearButtonClicked);
this.oauth2GoogleDrive.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2GoogleDrive_RefreshButtonClicked);
//
// tpPuush // tpPuush
// //
this.tpPuush.BackColor = System.Drawing.SystemColors.Window; this.tpPuush.BackColor = System.Drawing.SystemColors.Window;
@ -2766,15 +2734,6 @@ private void InitializeComponent()
this.btnBoxRefreshFolders.UseVisualStyleBackColor = true; this.btnBoxRefreshFolders.UseVisualStyleBackColor = true;
this.btnBoxRefreshFolders.Click += new System.EventHandler(this.btnBoxRefreshFolders_Click); this.btnBoxRefreshFolders.Click += new System.EventHandler(this.btnBoxRefreshFolders_Click);
// //
// oauth2Box
//
resources.ApplyResources(this.oauth2Box, "oauth2Box");
this.oauth2Box.Name = "oauth2Box";
this.oauth2Box.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Box_OpenButtonClicked);
this.oauth2Box.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Box_CompleteButtonClicked);
this.oauth2Box.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Box_ClearButtonClicked);
this.oauth2Box.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Box_RefreshButtonClicked);
//
// tpAmazonS3 // tpAmazonS3
// //
this.tpAmazonS3.BackColor = System.Drawing.SystemColors.Window; this.tpAmazonS3.BackColor = System.Drawing.SystemColors.Window;
@ -3075,15 +3034,6 @@ private void InitializeComponent()
this.txtGoogleCloudStorageBucket.Name = "txtGoogleCloudStorageBucket"; this.txtGoogleCloudStorageBucket.Name = "txtGoogleCloudStorageBucket";
this.txtGoogleCloudStorageBucket.TextChanged += new System.EventHandler(this.txtGoogleCloudStorageBucket_TextChanged); this.txtGoogleCloudStorageBucket.TextChanged += new System.EventHandler(this.txtGoogleCloudStorageBucket_TextChanged);
// //
// oauth2GoogleCloudStorage
//
resources.ApplyResources(this.oauth2GoogleCloudStorage, "oauth2GoogleCloudStorage");
this.oauth2GoogleCloudStorage.Name = "oauth2GoogleCloudStorage";
this.oauth2GoogleCloudStorage.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2GoogleCloudStorage_OpenButtonClicked);
this.oauth2GoogleCloudStorage.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2GoogleCloudStorage_CompleteButtonClicked);
this.oauth2GoogleCloudStorage.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2GoogleCloudStorage_ClearButtonClicked);
this.oauth2GoogleCloudStorage.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2GoogleCloudStorage_RefreshButtonClicked);
//
// tpAzureStorage // tpAzureStorage
// //
this.tpAzureStorage.BackColor = System.Drawing.SystemColors.Window; this.tpAzureStorage.BackColor = System.Drawing.SystemColors.Window;
@ -3269,22 +3219,6 @@ private void InitializeComponent()
this.cbGfycatIsPublic.UseVisualStyleBackColor = true; this.cbGfycatIsPublic.UseVisualStyleBackColor = true;
this.cbGfycatIsPublic.CheckedChanged += new System.EventHandler(this.cbGfycatIsPublic_CheckedChanged); this.cbGfycatIsPublic.CheckedChanged += new System.EventHandler(this.cbGfycatIsPublic_CheckedChanged);
// //
// atcGfycatAccountType
//
resources.ApplyResources(this.atcGfycatAccountType, "atcGfycatAccountType");
this.atcGfycatAccountType.Name = "atcGfycatAccountType";
this.atcGfycatAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcGfycatAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcGfycatAccountType_AccountTypeChanged);
//
// oauth2Gfycat
//
resources.ApplyResources(this.oauth2Gfycat, "oauth2Gfycat");
this.oauth2Gfycat.Name = "oauth2Gfycat";
this.oauth2Gfycat.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Gfycat_OpenButtonClicked);
this.oauth2Gfycat.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Gfycat_CompleteButtonClicked);
this.oauth2Gfycat.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Gfycat_ClearButtonClicked);
this.oauth2Gfycat.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Gfycat_RefreshButtonClicked);
//
// tpMega // tpMega
// //
this.tpMega.BackColor = System.Drawing.SystemColors.Window; this.tpMega.BackColor = System.Drawing.SystemColors.Window;
@ -3642,13 +3576,6 @@ private void InitializeComponent()
this.txtSendSpaceUserName.Name = "txtSendSpaceUserName"; this.txtSendSpaceUserName.Name = "txtSendSpaceUserName";
this.txtSendSpaceUserName.TextChanged += new System.EventHandler(this.txtSendSpaceUserName_TextChanged); this.txtSendSpaceUserName.TextChanged += new System.EventHandler(this.txtSendSpaceUserName_TextChanged);
// //
// atcSendSpaceAccountType
//
resources.ApplyResources(this.atcSendSpaceAccountType, "atcSendSpaceAccountType");
this.atcSendSpaceAccountType.Name = "atcSendSpaceAccountType";
this.atcSendSpaceAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcSendSpaceAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcSendSpaceAccountType_AccountTypeChanged);
//
// tpGe_tt // tpGe_tt
// //
this.tpGe_tt.BackColor = System.Drawing.SystemColors.Window; this.tpGe_tt.BackColor = System.Drawing.SystemColors.Window;
@ -3783,15 +3710,6 @@ private void InitializeComponent()
resources.ApplyResources(this.lblJiraHost, "lblJiraHost"); resources.ApplyResources(this.lblJiraHost, "lblJiraHost");
this.lblJiraHost.Name = "lblJiraHost"; this.lblJiraHost.Name = "lblJiraHost";
// //
// oAuthJira
//
resources.ApplyResources(this.oAuthJira, "oAuthJira");
this.oAuthJira.Name = "oAuthJira";
this.oAuthJira.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuthJira_OpenButtonClicked);
this.oAuthJira.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuthJira_CompleteButtonClicked);
this.oAuthJira.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuthJira_ClearButtonClicked);
this.oAuthJira.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oAuthJira_RefreshButtonClicked);
//
// tpLambda // tpLambda
// //
this.tpLambda.BackColor = System.Drawing.SystemColors.Window; this.tpLambda.BackColor = System.Drawing.SystemColors.Window;
@ -4501,15 +4419,6 @@ private void InitializeComponent()
resources.ApplyResources(this.lblYouTubePrivacyType, "lblYouTubePrivacyType"); resources.ApplyResources(this.lblYouTubePrivacyType, "lblYouTubePrivacyType");
this.lblYouTubePrivacyType.Name = "lblYouTubePrivacyType"; this.lblYouTubePrivacyType.Name = "lblYouTubePrivacyType";
// //
// oauth2YouTube
//
resources.ApplyResources(this.oauth2YouTube, "oauth2YouTube");
this.oauth2YouTube.Name = "oauth2YouTube";
this.oauth2YouTube.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2YouTube_OpenButtonClicked);
this.oauth2YouTube.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2YouTube_CompleteButtonClicked);
this.oauth2YouTube.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2YouTube_ClearButtonClicked);
this.oauth2YouTube.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2YouTube_RefreshButtonClicked);
//
// tpSharedFolder // tpSharedFolder
// //
this.tpSharedFolder.BackColor = System.Drawing.SystemColors.Window; this.tpSharedFolder.BackColor = System.Drawing.SystemColors.Window;
@ -4942,15 +4851,6 @@ private void InitializeComponent()
this.cbGistPublishPublic.UseVisualStyleBackColor = true; this.cbGistPublishPublic.UseVisualStyleBackColor = true;
this.cbGistPublishPublic.CheckedChanged += new System.EventHandler(this.chkGistPublishPublic_CheckedChanged); this.cbGistPublishPublic.CheckedChanged += new System.EventHandler(this.chkGistPublishPublic_CheckedChanged);
// //
// oAuth2Gist
//
this.oAuth2Gist.IsRefreshable = false;
resources.ApplyResources(this.oAuth2Gist, "oAuth2Gist");
this.oAuth2Gist.Name = "oAuth2Gist";
this.oAuth2Gist.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuth2Gist_OpenButtonClicked);
this.oAuth2Gist.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuth2Gist_CompleteButtonClicked);
this.oAuth2Gist.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuth2Gist_ClearButtonClicked);
//
// tpUpaste // tpUpaste
// //
this.tpUpaste.BackColor = System.Drawing.SystemColors.Window; this.tpUpaste.BackColor = System.Drawing.SystemColors.Window;
@ -5123,22 +5023,6 @@ private void InitializeComponent()
this.cbImgurDirectLink.UseVisualStyleBackColor = true; this.cbImgurDirectLink.UseVisualStyleBackColor = true;
this.cbImgurDirectLink.CheckedChanged += new System.EventHandler(this.cbImgurDirectLink_CheckedChanged); this.cbImgurDirectLink.CheckedChanged += new System.EventHandler(this.cbImgurDirectLink_CheckedChanged);
// //
// atcImgurAccountType
//
resources.ApplyResources(this.atcImgurAccountType, "atcImgurAccountType");
this.atcImgurAccountType.Name = "atcImgurAccountType";
this.atcImgurAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcImgurAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcImgurAccountType_AccountTypeChanged);
//
// oauth2Imgur
//
resources.ApplyResources(this.oauth2Imgur, "oauth2Imgur");
this.oauth2Imgur.Name = "oauth2Imgur";
this.oauth2Imgur.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Imgur_OpenButtonClicked);
this.oauth2Imgur.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Imgur_CompleteButtonClicked);
this.oauth2Imgur.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Imgur_ClearButtonClicked);
this.oauth2Imgur.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Imgur_RefreshButtonClicked);
//
// lvImgurAlbumList // lvImgurAlbumList
// //
this.lvImgurAlbumList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { this.lvImgurAlbumList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
@ -5265,13 +5149,6 @@ private void InitializeComponent()
resources.ApplyResources(this.tpTinyPic, "tpTinyPic"); resources.ApplyResources(this.tpTinyPic, "tpTinyPic");
this.tpTinyPic.Name = "tpTinyPic"; this.tpTinyPic.Name = "tpTinyPic";
// //
// atcTinyPicAccountType
//
resources.ApplyResources(this.atcTinyPicAccountType, "atcTinyPicAccountType");
this.atcTinyPicAccountType.Name = "atcTinyPicAccountType";
this.atcTinyPicAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcTinyPicAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcTinyPicAccountType_AccountTypeChanged);
//
// btnTinyPicLogin // btnTinyPicLogin
// //
resources.ApplyResources(this.btnTinyPicLogin, "btnTinyPicLogin"); resources.ApplyResources(this.btnTinyPicLogin, "btnTinyPicLogin");
@ -5324,15 +5201,6 @@ private void InitializeComponent()
this.cbFlickrDirectLink.UseVisualStyleBackColor = true; this.cbFlickrDirectLink.UseVisualStyleBackColor = true;
this.cbFlickrDirectLink.CheckedChanged += new System.EventHandler(this.cbFlickrDirectLink_CheckedChanged); this.cbFlickrDirectLink.CheckedChanged += new System.EventHandler(this.cbFlickrDirectLink_CheckedChanged);
// //
// oauthFlickr
//
this.oauthFlickr.IsRefreshable = false;
resources.ApplyResources(this.oauthFlickr, "oauthFlickr");
this.oauthFlickr.Name = "oauthFlickr";
this.oauthFlickr.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauthFlickr_OpenButtonClicked);
this.oauthFlickr.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauthFlickr_CompleteButtonClicked);
this.oauthFlickr.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauthFlickr_ClearButtonClicked);
//
// tpPhotobucket // tpPhotobucket
// //
this.tpPhotobucket.BackColor = System.Drawing.SystemColors.Window; this.tpPhotobucket.BackColor = System.Drawing.SystemColors.Window;
@ -5518,15 +5386,6 @@ private void InitializeComponent()
this.btnPicasaRefreshAlbumList.UseVisualStyleBackColor = true; this.btnPicasaRefreshAlbumList.UseVisualStyleBackColor = true;
this.btnPicasaRefreshAlbumList.Click += new System.EventHandler(this.btnPicasaRefreshAlbumList_Click); this.btnPicasaRefreshAlbumList.Click += new System.EventHandler(this.btnPicasaRefreshAlbumList_Click);
// //
// oauth2Picasa
//
resources.ApplyResources(this.oauth2Picasa, "oauth2Picasa");
this.oauth2Picasa.Name = "oauth2Picasa";
this.oauth2Picasa.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Picasa_OpenButtonClicked);
this.oauth2Picasa.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Picasa_CompleteButtonClicked);
this.oauth2Picasa.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Picasa_ClearButtonClicked);
this.oauth2Picasa.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Picasa_RefreshButtonClicked);
//
// tpChevereto // tpChevereto
// //
this.tpChevereto.BackColor = System.Drawing.SystemColors.Window; this.tpChevereto.BackColor = System.Drawing.SystemColors.Window;
@ -5650,12 +5509,225 @@ private void InitializeComponent()
this.ttlvMain.MainTabControl = null; this.ttlvMain.MainTabControl = null;
this.ttlvMain.Name = "ttlvMain"; this.ttlvMain.Name = "ttlvMain";
// //
// tpCustomUploaderData
//
this.tpCustomUploaderData.Controls.Add(this.btnCustomUploaderDataMinify);
this.tpCustomUploaderData.Controls.Add(this.btnCustomUploaderDataBeautify);
this.tpCustomUploaderData.Controls.Add(this.pCustomUploaderData);
resources.ApplyResources(this.tpCustomUploaderData, "tpCustomUploaderData");
this.tpCustomUploaderData.Name = "tpCustomUploaderData";
this.tpCustomUploaderData.UseVisualStyleBackColor = true;
//
// pCustomUploaderData
//
this.pCustomUploaderData.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.pCustomUploaderData.Controls.Add(this.rtbCustomUploaderData);
resources.ApplyResources(this.pCustomUploaderData, "pCustomUploaderData");
this.pCustomUploaderData.Name = "pCustomUploaderData";
//
// rtbCustomUploaderData
//
this.rtbCustomUploaderData.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.rtbCustomUploaderData.DetectUrls = false;
resources.ApplyResources(this.rtbCustomUploaderData, "rtbCustomUploaderData");
this.rtbCustomUploaderData.Name = "rtbCustomUploaderData";
this.rtbCustomUploaderData.TextChanged += new System.EventHandler(this.rtbCustomUploaderData_TextChanged);
//
// btnCustomUploaderDataBeautify
//
resources.ApplyResources(this.btnCustomUploaderDataBeautify, "btnCustomUploaderDataBeautify");
this.btnCustomUploaderDataBeautify.Name = "btnCustomUploaderDataBeautify";
this.btnCustomUploaderDataBeautify.UseVisualStyleBackColor = true;
this.btnCustomUploaderDataBeautify.Click += new System.EventHandler(this.btnCustomUploaderDataBeautify_Click);
//
// atcImgurAccountType
//
resources.ApplyResources(this.atcImgurAccountType, "atcImgurAccountType");
this.atcImgurAccountType.Name = "atcImgurAccountType";
this.atcImgurAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcImgurAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcImgurAccountType_AccountTypeChanged);
//
// oauth2Imgur
//
resources.ApplyResources(this.oauth2Imgur, "oauth2Imgur");
this.oauth2Imgur.Name = "oauth2Imgur";
this.oauth2Imgur.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Imgur_OpenButtonClicked);
this.oauth2Imgur.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Imgur_CompleteButtonClicked);
this.oauth2Imgur.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Imgur_ClearButtonClicked);
this.oauth2Imgur.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Imgur_RefreshButtonClicked);
//
// atcTinyPicAccountType
//
resources.ApplyResources(this.atcTinyPicAccountType, "atcTinyPicAccountType");
this.atcTinyPicAccountType.Name = "atcTinyPicAccountType";
this.atcTinyPicAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcTinyPicAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcTinyPicAccountType_AccountTypeChanged);
//
// oauthFlickr
//
this.oauthFlickr.IsRefreshable = false;
resources.ApplyResources(this.oauthFlickr, "oauthFlickr");
this.oauthFlickr.Name = "oauthFlickr";
this.oauthFlickr.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauthFlickr_OpenButtonClicked);
this.oauthFlickr.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauthFlickr_CompleteButtonClicked);
this.oauthFlickr.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauthFlickr_ClearButtonClicked);
//
// oauth2Picasa
//
resources.ApplyResources(this.oauth2Picasa, "oauth2Picasa");
this.oauth2Picasa.Name = "oauth2Picasa";
this.oauth2Picasa.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Picasa_OpenButtonClicked);
this.oauth2Picasa.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Picasa_CompleteButtonClicked);
this.oauth2Picasa.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Picasa_ClearButtonClicked);
this.oauth2Picasa.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Picasa_RefreshButtonClicked);
//
// oAuth2Gist
//
this.oAuth2Gist.IsRefreshable = false;
resources.ApplyResources(this.oAuth2Gist, "oAuth2Gist");
this.oAuth2Gist.Name = "oAuth2Gist";
this.oAuth2Gist.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuth2Gist_OpenButtonClicked);
this.oAuth2Gist.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuth2Gist_CompleteButtonClicked);
this.oAuth2Gist.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuth2Gist_ClearButtonClicked);
//
// oauth2Dropbox
//
this.oauth2Dropbox.IsRefreshable = false;
resources.ApplyResources(this.oauth2Dropbox, "oauth2Dropbox");
this.oauth2Dropbox.Name = "oauth2Dropbox";
this.oauth2Dropbox.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Dropbox_OpenButtonClicked);
this.oauth2Dropbox.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Dropbox_CompleteButtonClicked);
this.oauth2Dropbox.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Dropbox_ClearButtonClicked);
//
// oAuth2OneDrive
//
resources.ApplyResources(this.oAuth2OneDrive, "oAuth2OneDrive");
this.oAuth2OneDrive.Name = "oAuth2OneDrive";
this.oAuth2OneDrive.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuth2OneDrive_OpenButtonClicked);
this.oAuth2OneDrive.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuth2OneDrive_CompleteButtonClicked);
this.oAuth2OneDrive.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuth2OneDrive_ClearButtonClicked);
this.oAuth2OneDrive.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oAuth2OneDrive_RefreshButtonClicked);
//
// oauth2GoogleDrive
//
resources.ApplyResources(this.oauth2GoogleDrive, "oauth2GoogleDrive");
this.oauth2GoogleDrive.Name = "oauth2GoogleDrive";
this.oauth2GoogleDrive.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2GoogleDrive_OpenButtonClicked);
this.oauth2GoogleDrive.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2GoogleDrive_CompleteButtonClicked);
this.oauth2GoogleDrive.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2GoogleDrive_ClearButtonClicked);
this.oauth2GoogleDrive.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2GoogleDrive_RefreshButtonClicked);
//
// oauth2Box
//
resources.ApplyResources(this.oauth2Box, "oauth2Box");
this.oauth2Box.Name = "oauth2Box";
this.oauth2Box.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Box_OpenButtonClicked);
this.oauth2Box.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Box_CompleteButtonClicked);
this.oauth2Box.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Box_ClearButtonClicked);
this.oauth2Box.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Box_RefreshButtonClicked);
//
// oauth2GoogleCloudStorage
//
resources.ApplyResources(this.oauth2GoogleCloudStorage, "oauth2GoogleCloudStorage");
this.oauth2GoogleCloudStorage.Name = "oauth2GoogleCloudStorage";
this.oauth2GoogleCloudStorage.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2GoogleCloudStorage_OpenButtonClicked);
this.oauth2GoogleCloudStorage.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2GoogleCloudStorage_CompleteButtonClicked);
this.oauth2GoogleCloudStorage.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2GoogleCloudStorage_ClearButtonClicked);
this.oauth2GoogleCloudStorage.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2GoogleCloudStorage_RefreshButtonClicked);
//
// oauthTwitter
//
resources.ApplyResources(this.oauthTwitter, "oauthTwitter");
this.oauthTwitter.IsRefreshable = false;
this.oauthTwitter.Name = "oauthTwitter";
this.oauthTwitter.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauthTwitter_OpenButtonClicked);
this.oauthTwitter.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauthTwitter_CompleteButtonClicked);
this.oauthTwitter.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauthTwitter_ClearButtonClicked);
//
// oauth2Bitly
//
this.oauth2Bitly.IsRefreshable = false;
resources.ApplyResources(this.oauth2Bitly, "oauth2Bitly");
this.oauth2Bitly.Name = "oauth2Bitly";
this.oauth2Bitly.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Bitly_OpenButtonClicked);
this.oauth2Bitly.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Bitly_CompleteButtonClicked);
this.oauth2Bitly.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Bitly_ClearButtonClicked);
//
// atcGfycatAccountType
//
resources.ApplyResources(this.atcGfycatAccountType, "atcGfycatAccountType");
this.atcGfycatAccountType.Name = "atcGfycatAccountType";
this.atcGfycatAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcGfycatAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcGfycatAccountType_AccountTypeChanged);
//
// oauth2Gfycat
//
resources.ApplyResources(this.oauth2Gfycat, "oauth2Gfycat");
this.oauth2Gfycat.Name = "oauth2Gfycat";
this.oauth2Gfycat.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2Gfycat_OpenButtonClicked);
this.oauth2Gfycat.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2Gfycat_CompleteButtonClicked);
this.oauth2Gfycat.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2Gfycat_ClearButtonClicked);
this.oauth2Gfycat.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2Gfycat_RefreshButtonClicked);
//
// atcSendSpaceAccountType
//
resources.ApplyResources(this.atcSendSpaceAccountType, "atcSendSpaceAccountType");
this.atcSendSpaceAccountType.Name = "atcSendSpaceAccountType";
this.atcSendSpaceAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
this.atcSendSpaceAccountType.AccountTypeChanged += new ShareX.UploadersLib.AccountTypeControl.AccountTypeChangedEventHandler(this.atcSendSpaceAccountType_AccountTypeChanged);
//
// oAuthJira
//
resources.ApplyResources(this.oAuthJira, "oAuthJira");
this.oAuthJira.Name = "oAuthJira";
this.oAuthJira.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oAuthJira_OpenButtonClicked);
this.oAuthJira.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oAuthJira_CompleteButtonClicked);
this.oAuthJira.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oAuthJira_ClearButtonClicked);
this.oAuthJira.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oAuthJira_RefreshButtonClicked);
//
// oauth2YouTube
//
resources.ApplyResources(this.oauth2YouTube, "oauth2YouTube");
this.oauth2YouTube.Name = "oauth2YouTube";
this.oauth2YouTube.OpenButtonClicked += new ShareX.UploadersLib.OAuthControl.OpenButtonClickedEventHandler(this.oauth2YouTube_OpenButtonClicked);
this.oauth2YouTube.CompleteButtonClicked += new ShareX.UploadersLib.OAuthControl.CompleteButtonClickedEventHandler(this.oauth2YouTube_CompleteButtonClicked);
this.oauth2YouTube.ClearButtonClicked += new ShareX.UploadersLib.OAuthControl.ClearButtonclickedEventHandler(this.oauth2YouTube_ClearButtonClicked);
this.oauth2YouTube.RefreshButtonClicked += new ShareX.UploadersLib.OAuthControl.RefreshButtonClickedEventHandler(this.oauth2YouTube_RefreshButtonClicked);
//
// actRapidShareAccountType // actRapidShareAccountType
// //
resources.ApplyResources(this.actRapidShareAccountType, "actRapidShareAccountType"); resources.ApplyResources(this.actRapidShareAccountType, "actRapidShareAccountType");
this.actRapidShareAccountType.Name = "actRapidShareAccountType"; this.actRapidShareAccountType.Name = "actRapidShareAccountType";
this.actRapidShareAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous; this.actRapidShareAccountType.SelectedAccountType = ShareX.UploadersLib.AccountType.Anonymous;
// //
// tpCustomUploaderFile
//
this.tpCustomUploaderFile.Controls.Add(this.lblCustomUploaderFileForm);
this.tpCustomUploaderFile.Controls.Add(this.txtCustomUploaderFileForm);
resources.ApplyResources(this.tpCustomUploaderFile, "tpCustomUploaderFile");
this.tpCustomUploaderFile.Name = "tpCustomUploaderFile";
this.tpCustomUploaderFile.UseVisualStyleBackColor = true;
//
// lblCustomUploaderRequestFormat
//
resources.ApplyResources(this.lblCustomUploaderRequestFormat, "lblCustomUploaderRequestFormat");
this.lblCustomUploaderRequestFormat.Name = "lblCustomUploaderRequestFormat";
//
// cbCustomUploaderRequestFormat
//
this.cbCustomUploaderRequestFormat.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cbCustomUploaderRequestFormat.FormattingEnabled = true;
resources.ApplyResources(this.cbCustomUploaderRequestFormat, "cbCustomUploaderRequestFormat");
this.cbCustomUploaderRequestFormat.Name = "cbCustomUploaderRequestFormat";
this.cbCustomUploaderRequestFormat.SelectedIndexChanged += new System.EventHandler(this.cbCustomUploaderRequestFormat_SelectedIndexChanged);
//
// btnCustomUploaderDataMinify
//
resources.ApplyResources(this.btnCustomUploaderDataMinify, "btnCustomUploaderDataMinify");
this.btnCustomUploaderDataMinify.Name = "btnCustomUploaderDataMinify";
this.btnCustomUploaderDataMinify.UseVisualStyleBackColor = true;
this.btnCustomUploaderDataMinify.Click += new System.EventHandler(this.btnCustomUploaderDataMinify_Click);
//
// UploadersConfigForm // UploadersConfigForm
// //
resources.ApplyResources(this, "$this"); resources.ApplyResources(this, "$this");
@ -5840,6 +5912,10 @@ private void InitializeComponent()
this.tpVgyme.ResumeLayout(false); this.tpVgyme.ResumeLayout(false);
this.tpVgyme.PerformLayout(); this.tpVgyme.PerformLayout();
this.tcUploaders.ResumeLayout(false); this.tcUploaders.ResumeLayout(false);
this.tpCustomUploaderData.ResumeLayout(false);
this.pCustomUploaderData.ResumeLayout(false);
this.tpCustomUploaderFile.ResumeLayout(false);
this.tpCustomUploaderFile.PerformLayout();
this.ResumeLayout(false); this.ResumeLayout(false);
} }
@ -6503,5 +6579,13 @@ private void InitializeComponent()
private System.Windows.Forms.RichTextBox rtbCustomUploaderArgValue; private System.Windows.Forms.RichTextBox rtbCustomUploaderArgValue;
private System.Windows.Forms.Panel pCustomUploaderHeaderValue; private System.Windows.Forms.Panel pCustomUploaderHeaderValue;
private System.Windows.Forms.RichTextBox rtbCustomUploaderHeaderValue; private System.Windows.Forms.RichTextBox rtbCustomUploaderHeaderValue;
private System.Windows.Forms.TabPage tpCustomUploaderData;
private System.Windows.Forms.Panel pCustomUploaderData;
private System.Windows.Forms.Button btnCustomUploaderDataBeautify;
private System.Windows.Forms.RichTextBox rtbCustomUploaderData;
private System.Windows.Forms.ComboBox cbCustomUploaderRequestFormat;
private System.Windows.Forms.Label lblCustomUploaderRequestFormat;
private System.Windows.Forms.TabPage tpCustomUploaderFile;
private System.Windows.Forms.Button btnCustomUploaderDataMinify;
} }
} }

View file

@ -24,6 +24,7 @@
#endregion License Information (GPL v3) #endregion License Information (GPL v3)
using CG.Web.MegaApiClient; using CG.Web.MegaApiClient;
using Newtonsoft.Json;
using ShareX.HelpersLib; using ShareX.HelpersLib;
using ShareX.UploadersLib.FileUploaders; using ShareX.UploadersLib.FileUploaders;
using ShareX.UploadersLib.ImageUploaders; using ShareX.UploadersLib.ImageUploaders;
@ -119,6 +120,7 @@ private void InitializeControls()
// Custom uploader // Custom uploader
rtbCustomUploaderRequestURL.AddContextMenu(); rtbCustomUploaderRequestURL.AddContextMenu();
rtbCustomUploaderData.AddContextMenu();
rtbCustomUploaderArgValue.AddContextMenu(); rtbCustomUploaderArgValue.AddContextMenu();
rtbCustomUploaderHeaderValue.AddContextMenu(); rtbCustomUploaderHeaderValue.AddContextMenu();
rtbCustomUploaderURL.AddContextMenu(); rtbCustomUploaderURL.AddContextMenu();
@ -128,6 +130,7 @@ private void InitializeControls()
eiCustomUploaders.ObjectType = typeof(CustomUploaderItem); eiCustomUploaders.ObjectType = typeof(CustomUploaderItem);
CustomUploaderAddDestinationTypes(); CustomUploaderAddDestinationTypes();
cbCustomUploaderRequestType.Items.AddRange(Enum.GetNames(typeof(CustomUploaderRequestMethod))); cbCustomUploaderRequestType.Items.AddRange(Enum.GetNames(typeof(CustomUploaderRequestMethod)));
cbCustomUploaderRequestFormat.Items.AddRange(Enum.GetNames(typeof(CustomUploaderRequestFormat)));
cbCustomUploaderResponseType.Items.AddRange(Helpers.GetLocalizedEnumDescriptions<ResponseType>()); cbCustomUploaderResponseType.Items.AddRange(Helpers.GetLocalizedEnumDescriptions<ResponseType>());
// Backblaze B2 // Backblaze B2
@ -3493,8 +3496,6 @@ private void cbCustomUploaderRequestType_SelectedIndexChanged(object sender, Eve
{ {
CustomUploaderItem uploader = CustomUploaderGetSelected(); CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.RequestType = (CustomUploaderRequestMethod)cbCustomUploaderRequestType.SelectedIndex; if (uploader != null) uploader.RequestType = (CustomUploaderRequestMethod)cbCustomUploaderRequestType.SelectedIndex;
CustomUploaderUpdateRequestState();
} }
private void rtbCustomUploaderRequestURL_TextChanged(object sender, EventArgs e) private void rtbCustomUploaderRequestURL_TextChanged(object sender, EventArgs e)
@ -3506,6 +3507,32 @@ private void rtbCustomUploaderRequestURL_TextChanged(object sender, EventArgs e)
CustomUploaderRefreshNames(); CustomUploaderRefreshNames();
} }
private void cbCustomUploaderRequestFormat_SelectedIndexChanged(object sender, EventArgs e)
{
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.RequestFormat = (CustomUploaderRequestFormat)cbCustomUploaderRequestFormat.SelectedIndex;
CustomUploaderUpdateRequestFormatState();
}
private void rtbCustomUploaderData_TextChanged(object sender, EventArgs e)
{
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.Data = rtbCustomUploaderData.Text;
CustomUploaderSyntaxHighlight(rtbCustomUploaderData);
}
private void btnCustomUploaderDataBeautify_Click(object sender, EventArgs e)
{
CustomUploaderFormatJsonData(Formatting.Indented);
}
private void btnCustomUploaderDataMinify_Click(object sender, EventArgs e)
{
CustomUploaderFormatJsonData(Formatting.None);
}
private void txtCustomUploaderFileForm_TextChanged(object sender, EventArgs e) private void txtCustomUploaderFileForm_TextChanged(object sender, EventArgs e)
{ {
CustomUploaderItem uploader = CustomUploaderGetSelected(); CustomUploaderItem uploader = CustomUploaderGetSelected();

File diff suppressed because it is too large Load diff

View file

@ -23,6 +23,8 @@
#endregion License Information (GPL v3) #endregion License Information (GPL v3)
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using ShareX.HelpersLib; using ShareX.HelpersLib;
using ShareX.UploadersLib.FileUploaders; using ShareX.UploadersLib.FileUploaders;
using ShareX.UploadersLib.ImageUploaders; using ShareX.UploadersLib.ImageUploaders;
@ -958,8 +960,9 @@ private void CustomUploaderLoad(CustomUploaderItem uploader)
cbCustomUploaderRequestType.SelectedIndex = (int)uploader.RequestType; cbCustomUploaderRequestType.SelectedIndex = (int)uploader.RequestType;
rtbCustomUploaderRequestURL.Text = uploader.RequestURL ?? ""; rtbCustomUploaderRequestURL.Text = uploader.RequestURL ?? "";
txtCustomUploaderFileForm.Text = uploader.FileFormName ?? ""; cbCustomUploaderRequestFormat.SelectedIndex = (int)uploader.RequestFormat;
txtCustomUploaderFileForm.Enabled = uploader.RequestType == CustomUploaderRequestMethod.POST;
rtbCustomUploaderData.Text = uploader.Data ?? "";
txtCustomUploaderArgName.Text = ""; txtCustomUploaderArgName.Text = "";
rtbCustomUploaderArgValue.Text = ""; rtbCustomUploaderArgValue.Text = "";
@ -972,6 +975,8 @@ private void CustomUploaderLoad(CustomUploaderItem uploader)
} }
} }
txtCustomUploaderFileForm.Text = uploader.FileFormName ?? "";
txtCustomUploaderHeaderName.Text = ""; txtCustomUploaderHeaderName.Text = "";
rtbCustomUploaderHeaderValue.Text = ""; rtbCustomUploaderHeaderValue.Text = "";
lvCustomUploaderHeaders.Items.Clear(); lvCustomUploaderHeaders.Items.Clear();
@ -1012,7 +1017,7 @@ private void CustomUploaderUpdateStates()
if (isSelected) if (isSelected)
{ {
CustomUploaderUpdateRequestState(); CustomUploaderUpdateRequestFormatState();
CustomUploaderUpdateArgumentsState(); CustomUploaderUpdateArgumentsState();
CustomUploaderUpdateHeadersState(); CustomUploaderUpdateHeadersState();
CustomUploaderUpdateResponseState(); CustomUploaderUpdateResponseState();
@ -1025,9 +1030,36 @@ private void CustomUploaderUpdateStates()
lbCustomUploaderList.Items.Count > 0; lbCustomUploaderList.Items.Count > 0;
} }
private void CustomUploaderUpdateRequestState() private void CustomUploaderUpdateRequestFormatState()
{ {
txtCustomUploaderFileForm.Enabled = (CustomUploaderRequestMethod)cbCustomUploaderRequestType.SelectedIndex == CustomUploaderRequestMethod.POST; CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null)
{
if (uploader.RequestFormat == CustomUploaderRequestFormat.JSON)
{
if (!tcCustomUploaderArguments.TabPages.Contains(tpCustomUploaderData))
{
tcCustomUploaderArguments.TabPages.Insert(0, tpCustomUploaderData);
}
}
else if (tcCustomUploaderArguments.TabPages.Contains(tpCustomUploaderData))
{
tcCustomUploaderArguments.TabPages.Remove(tpCustomUploaderData);
}
if ((uploader.RequestFormat == CustomUploaderRequestFormat.Automatic && uploader.RequestType == CustomUploaderRequestMethod.POST) ||
uploader.RequestFormat == CustomUploaderRequestFormat.FormData)
{
if (!tcCustomUploaderArguments.TabPages.Contains(tpCustomUploaderFile))
{
tcCustomUploaderArguments.TabPages.Insert(1, tpCustomUploaderFile);
}
}
else if (tcCustomUploaderArguments.TabPages.Contains(tpCustomUploaderFile))
{
tcCustomUploaderArguments.TabPages.Remove(tpCustomUploaderFile);
}
}
} }
private void CustomUploaderUpdateArgumentsState() private void CustomUploaderUpdateArgumentsState()
@ -1135,6 +1167,7 @@ private void CustomUploaderLoadTab(bool selectLastItem = false)
} }
CustomUploaderSyntaxHighlight(rtbCustomUploaderRequestURL); CustomUploaderSyntaxHighlight(rtbCustomUploaderRequestURL);
CustomUploaderSyntaxHighlight(rtbCustomUploaderData);
CustomUploaderSyntaxHighlight(rtbCustomUploaderURL); CustomUploaderSyntaxHighlight(rtbCustomUploaderURL);
CustomUploaderSyntaxHighlight(rtbCustomUploaderThumbnailURL); CustomUploaderSyntaxHighlight(rtbCustomUploaderThumbnailURL);
CustomUploaderSyntaxHighlight(rtbCustomUploaderDeletionURL); CustomUploaderSyntaxHighlight(rtbCustomUploaderDeletionURL);
@ -1412,6 +1445,23 @@ private void CustomUploaderSyntaxHighlight(RichTextBox rtb)
} }
} }
private void CustomUploaderFormatJsonData(Formatting formatting)
{
string json = rtbCustomUploaderData.Text;
if (!string.IsNullOrEmpty(json))
{
try
{
rtbCustomUploaderData.Text = JToken.Parse(json).ToString(formatting);
}
catch (Exception e)
{
MessageBox.Show(e.Message, "ShareX - Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
#endregion Custom uploader #endregion Custom uploader
#region Jira #region Jira

View file

@ -38,7 +38,7 @@ public CustomUploaderArgumentInput(string filename, string input)
Input = input; Input = input;
} }
public string Parse(string arg) public string Parse(string arg, bool jsonEncode = false)
{ {
NameParser nameParser = new NameParser(NameParserType.Text); NameParser nameParser = new NameParser(NameParserType.Text);
EscapeHelper escapeHelper = new EscapeHelper(); EscapeHelper escapeHelper = new EscapeHelper();
@ -46,6 +46,7 @@ public string Parse(string arg)
arg = escapeHelper.Parse(arg, nameParser.Parse); arg = escapeHelper.Parse(arg, nameParser.Parse);
CustomUploaderParser customUploaderParser = new CustomUploaderParser(Filename, Input); CustomUploaderParser customUploaderParser = new CustomUploaderParser(Filename, Input);
customUploaderParser.JsonEncode = jsonEncode;
arg = customUploaderParser.Parse(arg); arg = customUploaderParser.Parse(arg);
return arg; return arg;

View file

@ -48,9 +48,15 @@ public class CustomUploaderItem
[DefaultValue("")] [DefaultValue("")]
public string RequestURL { get; set; } public string RequestURL { get; set; }
[DefaultValue(CustomUploaderRequestFormat.Automatic)]
public CustomUploaderRequestFormat RequestFormat { get; set; }
[DefaultValue("")] [DefaultValue("")]
public string FileFormName { get; set; } public string FileFormName { get; set; }
[DefaultValue("")]
public string Data { get; set; }
[DefaultValue(null)] [DefaultValue(null)]
public Dictionary<string, string> Arguments { get; set; } public Dictionary<string, string> Arguments { get; set; }
@ -134,6 +140,37 @@ public string GetRequestURL()
return URLHelpers.FixPrefix(url); return URLHelpers.FixPrefix(url);
} }
public CustomUploaderRequestFormat GetRequestFormat(CustomUploaderDestinationType destinationType)
{
if (RequestFormat == CustomUploaderRequestFormat.Automatic)
{
switch (destinationType)
{
case CustomUploaderDestinationType.ImageUploader:
case CustomUploaderDestinationType.FileUploader:
return CustomUploaderRequestFormat.FormData;
case CustomUploaderDestinationType.TextUploader:
case CustomUploaderDestinationType.URLShortener:
case CustomUploaderDestinationType.URLSharingService:
if (RequestType == CustomUploaderRequestMethod.POST)
{
return CustomUploaderRequestFormat.FormData;
}
else
{
return CustomUploaderRequestFormat.URLQuery;
}
}
}
return RequestFormat;
}
public string GetData(CustomUploaderArgumentInput input)
{
return input.Parse(Data, RequestFormat == CustomUploaderRequestFormat.JSON);
}
public string GetFileFormName() public string GetFileFormName()
{ {
if (string.IsNullOrEmpty(FileFormName)) if (string.IsNullOrEmpty(FileFormName))

View file

@ -23,6 +23,7 @@
#endregion License Information (GPL v3) #endregion License Information (GPL v3)
using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using ShareX.HelpersLib; using ShareX.HelpersLib;
using System; using System;
@ -47,6 +48,7 @@ public class CustomUploaderParser
public string Input { get; private set; } public string Input { get; private set; }
public string Response { get; private set; } public string Response { get; private set; }
public List<Match> RegexMatches { get; private set; } public List<Match> RegexMatches { get; private set; }
public bool JsonEncode { get; set; }
public bool SkipSyntaxParse { get; set; } public bool SkipSyntaxParse { get; set; }
public List<CustomUploaderSyntaxInfo> SyntaxInfoList { get; private set; } public List<CustomUploaderSyntaxInfo> SyntaxInfoList { get; private set; }
@ -123,6 +125,12 @@ public string Parse(string text, bool isOutput)
if (!string.IsNullOrEmpty(syntaxResult)) if (!string.IsNullOrEmpty(syntaxResult))
{ {
if (JsonEncode)
{
syntaxResult = JsonConvert.ToString(syntaxResult);
syntaxResult = syntaxResult.Substring(1, syntaxResult.Length - 2);
}
sbResult.Append(syntaxResult); sbResult.Append(syntaxResult);
} }
} }

View file

@ -68,33 +68,42 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer
public sealed class CustomImageUploader : ImageUploader public sealed class CustomImageUploader : ImageUploader
{ {
private CustomUploaderItem customUploader; private CustomUploaderItem uploader;
public CustomImageUploader(CustomUploaderItem customUploaderItem) public CustomImageUploader(CustomUploaderItem customUploaderItem)
{ {
customUploader = customUploaderItem; uploader = customUploaderItem;
} }
public override UploadResult Upload(Stream stream, string fileName) public override UploadResult Upload(Stream stream, string fileName)
{ {
CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, ""); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, "");
UploadResult result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.ImageUploader);
customUploader.GetArguments(input), customUploader.GetHeaders(input), null, customUploader.ResponseType, customUploader.GetHttpMethod());
if (result.IsSuccess) if (requestFormat == CustomUploaderRequestFormat.FormData)
{ {
try UploadResult result = SendRequestFile(uploader.GetRequestURL(), stream, fileName, uploader.GetFileFormName(),
{ uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod());
customUploader.ParseResponse(result);
}
catch (Exception e)
{
Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e);
}
}
return result; if (result.IsSuccess)
{
try
{
uploader.ParseResponse(result);
}
catch (Exception e)
{
Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e);
}
}
return result;
}
else
{
throw new Exception("Unsupported request format.");
}
} }
} }
} }

View file

@ -65,31 +65,38 @@ public override URLSharer CreateSharer(UploadersConfig config, TaskReferenceHelp
public sealed class CustomURLSharer : URLSharer public sealed class CustomURLSharer : URLSharer
{ {
private CustomUploaderItem customUploader; private CustomUploaderItem uploader;
public CustomURLSharer(CustomUploaderItem customUploaderItem) public CustomURLSharer(CustomUploaderItem customUploaderItem)
{ {
customUploader = customUploaderItem; uploader = customUploaderItem;
} }
public override UploadResult ShareURL(string url) public override UploadResult ShareURL(string url)
{ {
if ((customUploader.Arguments == null || !customUploader.Arguments.Any(x => x.Value.Contains("$input$"))) &&
(customUploader.Headers == null || !customUploader.Headers.Any(x => x.Value.Contains("$input$"))))
throw new Exception("At least one \"$input$\" required for argument or header value.");
UploadResult result = new UploadResult { URL = url, IsURLExpected = false }; UploadResult result = new UploadResult { URL = url, IsURLExpected = false };
CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url);
if (customUploader.RequestType == CustomUploaderRequestMethod.POST) CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.URLSharingService);
if (requestFormat == CustomUploaderRequestFormat.FormData)
{ {
result.Response = SendRequestMultiPart(customUploader.GetRequestURL(), customUploader.GetArguments(input), customUploader.GetHeaders(input), null, result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null,
customUploader.ResponseType, customUploader.GetHttpMethod()); uploader.ResponseType, uploader.GetHttpMethod());
}
else if (requestFormat == CustomUploaderRequestFormat.URLQuery)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetArguments(input),
uploader.GetHeaders(input), null, uploader.ResponseType);
}
else if (requestFormat == CustomUploaderRequestFormat.JSON)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON,
uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType);
} }
else else
{ {
result.Response = SendRequest(customUploader.GetHttpMethod(), customUploader.GetRequestURL(), customUploader.GetArguments(input), throw new Exception("Unsupported request format.");
customUploader.GetHeaders(input), null, customUploader.ResponseType);
} }
return result; return result;

View file

@ -71,49 +71,55 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer
public sealed class CustomTextUploader : TextUploader public sealed class CustomTextUploader : TextUploader
{ {
private CustomUploaderItem customUploader; private CustomUploaderItem uploader;
public CustomTextUploader(CustomUploaderItem customUploaderItem) public CustomTextUploader(CustomUploaderItem customUploaderItem)
{ {
customUploader = customUploaderItem; uploader = customUploaderItem;
} }
public override UploadResult UploadText(string text, string fileName) public override UploadResult UploadText(string text, string fileName)
{ {
if ((customUploader.RequestType != CustomUploaderRequestMethod.POST || string.IsNullOrEmpty(customUploader.FileFormName)) &&
(customUploader.Arguments == null || !customUploader.Arguments.Any(x => x.Value.Contains("$input$"))) &&
(customUploader.Headers == null || !customUploader.Headers.Any(x => x.Value.Contains("$input$"))))
throw new Exception("At least one \"$input$\" required for argument or header value.");
UploadResult result = new UploadResult(); UploadResult result = new UploadResult();
CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, text); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, text);
if (customUploader.RequestType == CustomUploaderRequestMethod.POST) CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.TextUploader);
if (requestFormat == CustomUploaderRequestFormat.FormData)
{ {
if (string.IsNullOrEmpty(customUploader.FileFormName)) if (string.IsNullOrEmpty(uploader.FileFormName))
{ {
result.Response = SendRequestMultiPart(customUploader.GetRequestURL(), customUploader.GetArguments(input), result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input),
customUploader.GetHeaders(input), null, customUploader.ResponseType, customUploader.GetHttpMethod()); uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod());
} }
else else
{ {
byte[] bytes = Encoding.UTF8.GetBytes(text); byte[] bytes = Encoding.UTF8.GetBytes(text);
using (MemoryStream stream = new MemoryStream(bytes)) using (MemoryStream stream = new MemoryStream(bytes))
{ {
result = SendRequestFile(customUploader.GetRequestURL(), stream, fileName, customUploader.GetFileFormName(), result = SendRequestFile(uploader.GetRequestURL(), stream, fileName, uploader.GetFileFormName(),
customUploader.GetArguments(input), customUploader.GetHeaders(input), null, customUploader.ResponseType, customUploader.GetHttpMethod()); uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod());
} }
} }
} }
else if (requestFormat == CustomUploaderRequestFormat.URLQuery)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetArguments(input),
uploader.GetHeaders(input), null, uploader.ResponseType);
}
else if (requestFormat == CustomUploaderRequestFormat.JSON)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON,
uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType);
}
else else
{ {
result.Response = SendRequest(customUploader.GetHttpMethod(), customUploader.GetRequestURL(), customUploader.GetArguments(input), throw new Exception("Unsupported request format.");
customUploader.GetHeaders(input), null, customUploader.ResponseType);
} }
try try
{ {
customUploader.ParseResponse(result); uploader.ParseResponse(result);
} }
catch (Exception e) catch (Exception e)
{ {

View file

@ -66,36 +66,43 @@ public override URLShortener CreateShortener(UploadersConfig config, TaskReferen
public sealed class CustomURLShortener : URLShortener public sealed class CustomURLShortener : URLShortener
{ {
private CustomUploaderItem customUploader; private CustomUploaderItem uploader;
public CustomURLShortener(CustomUploaderItem customUploaderItem) public CustomURLShortener(CustomUploaderItem customUploaderItem)
{ {
customUploader = customUploaderItem; uploader = customUploaderItem;
} }
public override UploadResult ShortenURL(string url) public override UploadResult ShortenURL(string url)
{ {
if ((customUploader.Arguments == null || !customUploader.Arguments.Any(x => x.Value.Contains("$input$"))) &&
(customUploader.Headers == null || !customUploader.Headers.Any(x => x.Value.Contains("$input$"))))
throw new Exception("At least one \"$input$\" required for argument or header value.");
UploadResult result = new UploadResult { URL = url }; UploadResult result = new UploadResult { URL = url };
CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url);
if (customUploader.RequestType == CustomUploaderRequestMethod.POST) CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.URLShortener);
if (requestFormat == CustomUploaderRequestFormat.FormData)
{ {
result.Response = SendRequestMultiPart(customUploader.GetRequestURL(), customUploader.GetArguments(input), customUploader.GetHeaders(input), null, result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null,
customUploader.ResponseType, customUploader.GetHttpMethod()); uploader.ResponseType, uploader.GetHttpMethod());
}
else if (requestFormat == CustomUploaderRequestFormat.URLQuery)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetArguments(input),
uploader.GetHeaders(input), null, uploader.ResponseType);
}
else if (requestFormat == CustomUploaderRequestFormat.JSON)
{
result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON,
uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType);
} }
else else
{ {
result.Response = SendRequest(customUploader.GetHttpMethod(), customUploader.GetRequestURL(), customUploader.GetArguments(input), throw new Exception("Unsupported request format.");
customUploader.GetHeaders(input), null, customUploader.ResponseType);
} }
try try
{ {
customUploader.ParseResponse(result, true); uploader.ParseResponse(result, true);
} }
catch (Exception e) catch (Exception e)
{ {