From 92ad3cff56847ecd4b765c5de334cfc00d209702 Mon Sep 17 00:00:00 2001 From: Jonathan Donaldson Date: Mon, 10 Sep 2018 17:55:07 +0100 Subject: [PATCH 01/12] Added auto expiring of shared links --- ShareX.UploadersLib/FileUploaders/OwnCloud.cs | 31 +- .../Forms/UploadersConfigForm.Designer.cs | 388 +++++++++-------- .../Forms/UploadersConfigForm.cs | 14 + .../Forms/UploadersConfigForm.resx | 406 ++++++++++-------- ShareX.UploadersLib/UploadersConfig.cs | 2 + 5 files changed, 479 insertions(+), 362 deletions(-) diff --git a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs index 2ebd89b2b..25f65669a 100644 --- a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs +++ b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs @@ -55,7 +55,10 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer CreateShare = config.OwnCloudCreateShare, DirectLink = config.OwnCloudDirectLink, PreviewLink = config.OwnCloudUsePreviewLinks, - IsCompatibility81 = config.OwnCloud81Compatibility + IsCompatibility81 = config.OwnCloud81Compatibility, + AutoEpxireTime = config.OwnCloudExpiryTime, + AutoExpire = config.OwnCloudAutoExpire + }; } @@ -68,10 +71,12 @@ public sealed class OwnCloud : FileUploader public string Username { get; set; } public string Password { get; set; } public string Path { get; set; } + public string AutoEpxireTime { get; set; } public bool CreateShare { get; set; } public bool DirectLink { get; set; } public bool PreviewLink { get; set; } public bool IsCompatibility81 { get; set; } + public bool AutoExpire { get; set; } public OwnCloud(string host, string username, string password) { @@ -128,7 +133,7 @@ public override UploadResult Upload(Stream stream, string fileName) return result; } - // http://doc.owncloud.org/server/7.0/developer_manual/core/ocs-share-api.html#create-a-new-share + // https://doc.owncloud.org/server/10.0/developer_manual/core/ocs-share-api.html#create-a-new-share public string ShareFile(string path) { Dictionary args = new Dictionary(); @@ -139,6 +144,28 @@ public string ShareFile(string path) // args.Add("password", ""); // password to protect public link Share with args.Add("permissions", "1"); // 1 = read; 2 = update; 4 = create; 8 = delete; 16 = share; 31 = all (default: 31, for public shares: 1) + if (AutoExpire) + { + if (string.IsNullOrEmpty(AutoEpxireTime)) + { + throw new Exception("ownCloud Auto Epxire Time is empty."); + } + else + { + try + { + int days = int.Parse(AutoEpxireTime); + DateTime expireTime = DateTime.UtcNow.AddDays(days); + args.Add("expireDate", $"{expireTime.Year}-{expireTime.Month}-{expireTime.Day}"); + } + catch + { + throw new Exception("ownCloud Auto Expire time is invalid"); + } + } + + } + string url = URLHelpers.CombineURL(Host, "ocs/v1.php/apps/files_sharing/api/v1/shares?format=json"); url = URLHelpers.FixPrefix(url); diff --git a/ShareX.UploadersLib/Forms/UploadersConfigForm.Designer.cs b/ShareX.UploadersLib/Forms/UploadersConfigForm.Designer.cs index 7bc9ce088..3c75b1156 100644 --- a/ShareX.UploadersLib/Forms/UploadersConfigForm.Designer.cs +++ b/ShareX.UploadersLib/Forms/UploadersConfigForm.Designer.cs @@ -43,7 +43,6 @@ private void InitializeComponent() this.lblTwitterDefaultMessage = new System.Windows.Forms.Label(); this.txtTwitterDefaultMessage = new System.Windows.Forms.TextBox(); this.cbTwitterSkipMessageBox = new System.Windows.Forms.CheckBox(); - this.oauthTwitter = new ShareX.UploadersLib.OAuthControl(); this.txtTwitterDescription = new System.Windows.Forms.TextBox(); this.lblTwitterDescription = new System.Windows.Forms.Label(); this.btnTwitterRemove = new System.Windows.Forms.Button(); @@ -140,7 +139,6 @@ private void InitializeComponent() this.tpBitly = new System.Windows.Forms.TabPage(); this.txtBitlyDomain = new System.Windows.Forms.TextBox(); this.lblBitlyDomain = new System.Windows.Forms.Label(); - this.oauth2Bitly = new ShareX.UploadersLib.OAuthControl(); this.tpYourls = new System.Windows.Forms.TabPage(); this.txtYourlsPassword = new System.Windows.Forms.TextBox(); this.txtYourlsUsername = new System.Windows.Forms.TextBox(); @@ -234,12 +232,10 @@ private void InitializeComponent() this.cbDropboxAutoCreateShareableLink = new System.Windows.Forms.CheckBox(); this.lblDropboxPath = new System.Windows.Forms.Label(); this.txtDropboxPath = new System.Windows.Forms.TextBox(); - this.oauth2Dropbox = new ShareX.UploadersLib.OAuthControl(); this.tpOneDrive = new System.Windows.Forms.TabPage(); this.tvOneDrive = new System.Windows.Forms.TreeView(); this.lblOneDriveFolderID = new System.Windows.Forms.Label(); this.cbOneDriveCreateShareableLink = new System.Windows.Forms.CheckBox(); - this.oAuth2OneDrive = new ShareX.UploadersLib.OAuthControl(); this.tpGoogleDrive = new System.Windows.Forms.TabPage(); this.cbGoogleDriveDirectLink = new System.Windows.Forms.CheckBox(); this.cbGoogleDriveUseFolder = new System.Windows.Forms.CheckBox(); @@ -250,7 +246,6 @@ private void InitializeComponent() this.chGoogleDriveDescription = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.btnGoogleDriveRefreshFolders = new System.Windows.Forms.Button(); this.cbGoogleDriveIsPublic = new System.Windows.Forms.CheckBox(); - this.oauth2GoogleDrive = new ShareX.UploadersLib.OAuthControl(); this.tpPuush = new System.Windows.Forms.TabPage(); this.lblPuushAPIKey = new System.Windows.Forms.Label(); this.txtPuushAPIKey = new System.Windows.Forms.TextBox(); @@ -267,7 +262,6 @@ private void InitializeComponent() this.chBoxFoldersName = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.lblBoxFolderID = new System.Windows.Forms.Label(); this.btnBoxRefreshFolders = new System.Windows.Forms.Button(); - this.oauth2Box = new ShareX.UploadersLib.OAuthControl(); this.tpAmazonS3 = new System.Windows.Forms.TabPage(); this.gbAmazonS3Advanced = new System.Windows.Forms.GroupBox(); this.lblAmazonS3StripExtension = new System.Windows.Forms.Label(); @@ -307,7 +301,6 @@ private void InitializeComponent() this.txtGoogleCloudStorageDomain = new System.Windows.Forms.TextBox(); this.lblGoogleCloudStorageBucket = new System.Windows.Forms.Label(); this.txtGoogleCloudStorageBucket = new System.Windows.Forms.TextBox(); - this.oauth2GoogleCloudStorage = new ShareX.UploadersLib.OAuthControl(); this.tpAzureStorage = new System.Windows.Forms.TabPage(); this.lblAzureStorageURLPreview = new System.Windows.Forms.Label(); this.lblAzureStorageURLPreviewLabel = new System.Windows.Forms.Label(); @@ -326,8 +319,6 @@ private void InitializeComponent() this.lblAzureStorageCustomDomain = new System.Windows.Forms.Label(); this.tpGfycat = new System.Windows.Forms.TabPage(); 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.btnMegaRefreshFolders = new System.Windows.Forms.Button(); this.lblMegaStatus = new System.Windows.Forms.Label(); @@ -341,6 +332,9 @@ private void InitializeComponent() this.txtMegaPassword = new System.Windows.Forms.TextBox(); this.lblMegaPassword = new System.Windows.Forms.Label(); this.tpOwnCloud = new System.Windows.Forms.TabPage(); + this.txtOwnCloudExpiryTime = new System.Windows.Forms.NumericUpDown(); + this.cbOwnCloudAutoExpire = new System.Windows.Forms.CheckBox(); + this.lblOwnCloudExpiryTime = new System.Windows.Forms.Label(); this.cbOwnCloudUsePreviewLinks = new System.Windows.Forms.CheckBox(); this.lblOwnCloudHostExample = new System.Windows.Forms.Label(); this.cbOwnCloud81Compatibility = new System.Windows.Forms.CheckBox(); @@ -374,7 +368,6 @@ private void InitializeComponent() this.lblSendSpaceUsername = new System.Windows.Forms.Label(); this.txtSendSpacePassword = 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.lblGe_ttStatus = new System.Windows.Forms.Label(); this.lblGe_ttPassword = new System.Windows.Forms.Label(); @@ -395,7 +388,6 @@ private void InitializeComponent() this.txtJiraConfigHelp = new System.Windows.Forms.TextBox(); this.txtJiraHost = new System.Windows.Forms.TextBox(); this.lblJiraHost = new System.Windows.Forms.Label(); - this.oAuthJira = new ShareX.UploadersLib.OAuthControl(); this.tpLambda = new System.Windows.Forms.TabPage(); this.lblLambdaInfo = new System.Windows.Forms.Label(); this.lblLambdaApiKey = new System.Windows.Forms.Label(); @@ -492,7 +484,6 @@ private void InitializeComponent() this.cbYouTubeUseShortenedLink = new System.Windows.Forms.CheckBox(); this.cbYouTubePrivacyType = new System.Windows.Forms.ComboBox(); this.lblYouTubePrivacyType = new System.Windows.Forms.Label(); - this.oauth2YouTube = new ShareX.UploadersLib.OAuthControl(); this.tpSharedFolder = new System.Windows.Forms.TabPage(); this.lbSharedFolderAccounts = new System.Windows.Forms.ListBox(); this.pgSharedFolderAccount = new System.Windows.Forms.PropertyGrid(); @@ -552,7 +543,6 @@ private void InitializeComponent() this.txtGistCustomURL = new System.Windows.Forms.TextBox(); this.cbGistUseRawURL = 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.cbUpasteIsPublic = new System.Windows.Forms.CheckBox(); this.lblUpasteUserKey = new System.Windows.Forms.Label(); @@ -576,8 +566,6 @@ private void InitializeComponent() this.cbImgurUseGIFV = new System.Windows.Forms.CheckBox(); this.cbImgurUploadSelectedAlbum = 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.chImgurID = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.chImgurTitle = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); @@ -595,7 +583,6 @@ private void InitializeComponent() this.txtImageShackPassword = new System.Windows.Forms.TextBox(); this.lblImageShackPassword = new System.Windows.Forms.Label(); this.tpTinyPic = new System.Windows.Forms.TabPage(); - this.atcTinyPicAccountType = new ShareX.UploadersLib.AccountTypeControl(); this.btnTinyPicLogin = new System.Windows.Forms.Button(); this.txtTinyPicPassword = new System.Windows.Forms.TextBox(); this.lblTinyPicPassword = new System.Windows.Forms.Label(); @@ -604,7 +591,6 @@ private void InitializeComponent() this.btnTinyPicOpenMyImages = new System.Windows.Forms.Button(); this.tpFlickr = new System.Windows.Forms.TabPage(); this.cbFlickrDirectLink = new System.Windows.Forms.CheckBox(); - this.oauthFlickr = new ShareX.UploadersLib.OAuthControl(); this.tpPhotobucket = new System.Windows.Forms.TabPage(); this.gbPhotobucketAlbumPath = new System.Windows.Forms.GroupBox(); this.btnPhotobucketAddAlbum = new System.Windows.Forms.Button(); @@ -632,7 +618,6 @@ private void InitializeComponent() this.chPicasaName = ((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.oauth2Picasa = new ShareX.UploadersLib.OAuthControl(); this.tpChevereto = new System.Windows.Forms.TabPage(); this.btnCheveretoTestAll = new System.Windows.Forms.Button(); this.lblCheveretoUploadURLExample = new System.Windows.Forms.Label(); @@ -650,6 +635,24 @@ private void InitializeComponent() this.tcUploaders = new System.Windows.Forms.TabControl(); this.lblWidthHint = new System.Windows.Forms.Label(); this.ttlvMain = new ShareX.HelpersLib.TabToListView(); + 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.tpOtherUploaders.SuspendLayout(); this.tcOtherUploaders.SuspendLayout(); @@ -692,6 +695,7 @@ private void InitializeComponent() this.tpGfycat.SuspendLayout(); this.tpMega.SuspendLayout(); this.tpOwnCloud.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.txtOwnCloudExpiryTime)).BeginInit(); this.tpMediaFire.SuspendLayout(); this.tpPushbullet.SuspendLayout(); this.tpSendSpace.SuspendLayout(); @@ -843,15 +847,6 @@ private void InitializeComponent() this.cbTwitterSkipMessageBox.UseVisualStyleBackColor = true; 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 // resources.ApplyResources(this.txtTwitterDescription, "txtTwitterDescription"); @@ -1577,15 +1572,6 @@ private void InitializeComponent() resources.ApplyResources(this.lblBitlyDomain, "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 // this.tpYourls.BackColor = System.Drawing.SystemColors.Window; @@ -2287,15 +2273,6 @@ private void InitializeComponent() this.txtDropboxPath.Name = "txtDropboxPath"; 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 // this.tpOneDrive.BackColor = System.Drawing.SystemColors.Window; @@ -2325,15 +2302,6 @@ private void InitializeComponent() this.cbOneDriveCreateShareableLink.UseVisualStyleBackColor = true; 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 // this.tpGoogleDrive.BackColor = System.Drawing.SystemColors.Window; @@ -2409,15 +2377,6 @@ private void InitializeComponent() this.cbGoogleDriveIsPublic.UseVisualStyleBackColor = true; 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 // this.tpPuush.BackColor = System.Drawing.SystemColors.Window; @@ -2532,15 +2491,6 @@ private void InitializeComponent() this.btnBoxRefreshFolders.UseVisualStyleBackColor = true; 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 // this.tpAmazonS3.BackColor = System.Drawing.SystemColors.Window; @@ -2811,15 +2761,6 @@ private void InitializeComponent() this.txtGoogleCloudStorageBucket.Name = "txtGoogleCloudStorageBucket"; 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 // this.tpAzureStorage.BackColor = System.Drawing.SystemColors.Window; @@ -2947,22 +2888,6 @@ private void InitializeComponent() this.cbGfycatIsPublic.UseVisualStyleBackColor = true; 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 // this.tpMega.BackColor = System.Drawing.SystemColors.Window; @@ -3050,6 +2975,9 @@ private void InitializeComponent() // tpOwnCloud // this.tpOwnCloud.BackColor = System.Drawing.SystemColors.Window; + this.tpOwnCloud.Controls.Add(this.txtOwnCloudExpiryTime); + this.tpOwnCloud.Controls.Add(this.cbOwnCloudAutoExpire); + this.tpOwnCloud.Controls.Add(this.lblOwnCloudExpiryTime); this.tpOwnCloud.Controls.Add(this.cbOwnCloudUsePreviewLinks); this.tpOwnCloud.Controls.Add(this.lblOwnCloudHostExample); this.tpOwnCloud.Controls.Add(this.cbOwnCloud81Compatibility); @@ -3066,6 +2994,39 @@ private void InitializeComponent() resources.ApplyResources(this.tpOwnCloud, "tpOwnCloud"); this.tpOwnCloud.Name = "tpOwnCloud"; // + // txtOwnCloudExpiryTime + // + resources.ApplyResources(this.txtOwnCloudExpiryTime, "txtOwnCloudExpiryTime"); + this.txtOwnCloudExpiryTime.Maximum = new decimal(new int[] { + 1410065407, + 2, + 0, + 0}); + this.txtOwnCloudExpiryTime.Minimum = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.txtOwnCloudExpiryTime.Name = "txtOwnCloudExpiryTime"; + this.txtOwnCloudExpiryTime.Value = new decimal(new int[] { + 1, + 0, + 0, + 0}); + this.txtOwnCloudExpiryTime.ValueChanged += new System.EventHandler(this.txtOwnExpiryTime_TextChanged); + // + // cbOwnCloudAutoExpire + // + resources.ApplyResources(this.cbOwnCloudAutoExpire, "cbOwnCloudAutoExpire"); + this.cbOwnCloudAutoExpire.Name = "cbOwnCloudAutoExpire"; + this.cbOwnCloudAutoExpire.UseVisualStyleBackColor = true; + this.cbOwnCloudAutoExpire.CheckedChanged += new System.EventHandler(this.cbOwnCloudAutoExpire_CheckedChanged); + // + // lblOwnCloudExpiryTime + // + resources.ApplyResources(this.lblOwnCloudExpiryTime, "lblOwnCloudExpiryTime"); + this.lblOwnCloudExpiryTime.Name = "lblOwnCloudExpiryTime"; + // // cbOwnCloudUsePreviewLinks // resources.ApplyResources(this.cbOwnCloudUsePreviewLinks, "cbOwnCloudUsePreviewLinks"); @@ -3284,13 +3245,6 @@ private void InitializeComponent() this.txtSendSpaceUserName.Name = "txtSendSpaceUserName"; 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 // this.tpGe_tt.BackColor = System.Drawing.SystemColors.Window; @@ -3425,15 +3379,6 @@ private void InitializeComponent() resources.ApplyResources(this.lblJiraHost, "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 // this.tpLambda.BackColor = System.Drawing.SystemColors.Window; @@ -4143,15 +4088,6 @@ private void InitializeComponent() resources.ApplyResources(this.lblYouTubePrivacyType, "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 // this.tpSharedFolder.BackColor = System.Drawing.SystemColors.Window; @@ -4584,15 +4520,6 @@ private void InitializeComponent() this.cbGistPublishPublic.UseVisualStyleBackColor = true; 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 // this.tpUpaste.BackColor = System.Drawing.SystemColors.Window; @@ -4765,22 +4692,6 @@ private void InitializeComponent() this.cbImgurDirectLink.UseVisualStyleBackColor = true; 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 // this.lvImgurAlbumList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { @@ -4907,13 +4818,6 @@ private void InitializeComponent() resources.ApplyResources(this.tpTinyPic, "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 // resources.ApplyResources(this.btnTinyPicLogin, "btnTinyPicLogin"); @@ -4966,15 +4870,6 @@ private void InitializeComponent() this.cbFlickrDirectLink.UseVisualStyleBackColor = true; 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 // this.tpPhotobucket.BackColor = System.Drawing.SystemColors.Window; @@ -5160,15 +5055,6 @@ private void InitializeComponent() this.btnPicasaRefreshAlbumList.UseVisualStyleBackColor = true; 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 // this.tpChevereto.BackColor = System.Drawing.SystemColors.Window; @@ -5292,6 +5178,160 @@ private void InitializeComponent() this.ttlvMain.MainTabControl = null; this.ttlvMain.Name = "ttlvMain"; // + // 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 // resources.ApplyResources(this.actRapidShareAccountType, "actRapidShareAccountType"); @@ -5384,6 +5424,7 @@ private void InitializeComponent() this.tpMega.PerformLayout(); this.tpOwnCloud.ResumeLayout(false); this.tpOwnCloud.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.txtOwnCloudExpiryTime)).EndInit(); this.tpMediaFire.ResumeLayout(false); this.tpMediaFire.PerformLayout(); this.tpPushbullet.ResumeLayout(false); @@ -6097,5 +6138,8 @@ private void InitializeComponent() private System.Windows.Forms.Label lblAzureStorageURLPreview; private System.Windows.Forms.Label lblAzureStorageURLPreviewLabel; private System.Windows.Forms.Label lblFirebaseDomainExample; + private System.Windows.Forms.Label lblOwnCloudExpiryTime; + private System.Windows.Forms.CheckBox cbOwnCloudAutoExpire; + private System.Windows.Forms.NumericUpDown txtOwnCloudExpiryTime; } } diff --git a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs index 6c8ce2e56..d5adebd68 100644 --- a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs +++ b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs @@ -589,10 +589,12 @@ public void LoadSettings() txtOwnCloudUsername.Text = Config.OwnCloudUsername; txtOwnCloudPassword.Text = Config.OwnCloudPassword; txtOwnCloudPath.Text = Config.OwnCloudPath; + txtOwnCloudExpiryTime.Text = Config.OwnCloudExpiryTime; cbOwnCloudCreateShare.Checked = Config.OwnCloudCreateShare; cbOwnCloudDirectLink.Checked = Config.OwnCloudDirectLink; cbOwnCloud81Compatibility.Checked = Config.OwnCloud81Compatibility; cbOwnCloudUsePreviewLinks.Checked = Config.OwnCloudUsePreviewLinks; + cbOwnCloudAutoExpire.Checked = Config.OwnCloudAutoExpire; #endregion ownCloud / Nextcloud @@ -2306,6 +2308,11 @@ private void txtOwnCloudPath_TextChanged(object sender, EventArgs e) Config.OwnCloudPath = txtOwnCloudPath.Text; } + private void txtOwnExpiryTime_TextChanged(object sender, EventArgs e) + { + Config.OwnCloudExpiryTime =txtOwnCloudExpiryTime.Value.ToString(); + } + private void cbOwnCloudCreateShare_CheckedChanged(object sender, EventArgs e) { Config.OwnCloudCreateShare = cbOwnCloudCreateShare.Checked; @@ -2325,6 +2332,12 @@ private void cbOwnCloudUsePreviewLinks_CheckedChanged(object sender, EventArgs e { Config.OwnCloudUsePreviewLinks = cbOwnCloudUsePreviewLinks.Checked; } + private void cbOwnCloudAutoExpire_CheckedChanged(object sender, EventArgs e) + { + Config.OwnCloudAutoExpire = cbOwnCloudAutoExpire.Checked; + } + + #endregion ownCloud / Nextcloud @@ -3850,5 +3863,6 @@ private void btnCustomUploaderHelp_Click(object sender, EventArgs e) #endregion Custom uploaders #endregion Other uploaders + } } \ No newline at end of file diff --git a/ShareX.UploadersLib/Forms/UploadersConfigForm.resx b/ShareX.UploadersLib/Forms/UploadersConfigForm.resx index 191ce6710..a2c62ca6e 100644 --- a/ShareX.UploadersLib/Forms/UploadersConfigForm.resx +++ b/ShareX.UploadersLib/Forms/UploadersConfigForm.resx @@ -210,7 +210,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/ mbCustomUploaderDestinationType - ShareX.HelpersLib.MenuButton, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MenuButton, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null pCustomUploader @@ -369,7 +369,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/ oauthTwitter - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpTwitter @@ -496,7 +496,6 @@ For example, if your bucket is called bucket.example.com then URL will be http:/ Twitter - @Invariant tpTwitter @@ -680,7 +679,6 @@ For example, if your bucket is called bucket.example.com then URL will be http:/ ? - @Invariant btnCustomUploadJsonPathHelp @@ -744,7 +742,6 @@ store.book[0].title JsonPath: - @Invariant lblCustomUploaderJsonPath @@ -793,7 +790,6 @@ store.book[0].title JSON - @Invariant tpCustomUploaderJsonParse @@ -848,7 +844,6 @@ store.book[0].title ? - @Invariant btnCustomUploaderXPathHelp @@ -912,7 +907,6 @@ store.book[0].title XPath: - @Invariant lblCustomUploaderXPath @@ -961,7 +955,6 @@ store.book[0].title XML - @Invariant tpCustomUploaderXmlParse @@ -989,7 +982,6 @@ store.book[0].title ? - @Invariant btnCustomUploaderRegexHelp @@ -1148,7 +1140,7 @@ store.book[0].title lvCustomUploaderRegexps - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpCustomUploaderRegexParse @@ -1170,7 +1162,6 @@ store.book[0].title Regex - @Invariant tpCustomUploaderRegexParse @@ -1383,7 +1374,7 @@ store.book[0].title lvCustomUploaderArguments - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpCustomUploaderArguments @@ -1566,7 +1557,7 @@ store.book[0].title lvCustomUploaderHeaders - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpCustomUploaderHeaders @@ -2337,7 +2328,7 @@ store.book[0].title eiCustomUploaders - ShareX.HelpersLib.ExportImportControl, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.ExportImportControl, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null gbCustomUploaders @@ -2612,6 +2603,9 @@ store.book[0].title 30 + + + txtCustomUploaderLog @@ -2631,7 +2625,7 @@ store.book[0].title 3, 3, 3, 3 - 178, 42 + 972, 537 5 @@ -2766,7 +2760,7 @@ store.book[0].title oauth2Bitly - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpBitly @@ -2788,7 +2782,6 @@ store.book[0].title bit.ly - @Invariant tpBitly @@ -3043,14 +3036,13 @@ store.book[0].title 3, 3, 3, 3 - 178, 42 + 972, 537 2 YOURLS - @Invariant tpYourls @@ -3203,14 +3195,13 @@ store.book[0].title 3, 3, 3, 3 - 178, 42 + 972, 537 3 adf.ly - @Invariant tpAdFly @@ -3390,14 +3381,13 @@ store.book[0].title 4, 22 - 178, 42 + 972, 537 6 Polr - @Invariant tpPolr @@ -3414,6 +3404,9 @@ store.book[0].title True + + NoControl + 368, 84 @@ -3441,6 +3434,9 @@ store.book[0].title True + + NoControl + 13, 64 @@ -3574,7 +3570,7 @@ store.book[0].title 3, 3, 3, 3 - 178, 42 + 972, 537 7 @@ -3680,7 +3676,6 @@ store.book[0].title ... - @Invariant btnSFTPKeyLocationBrowse @@ -3786,7 +3781,6 @@ store.book[0].title SFTP - @Invariant gbSFTP @@ -4011,7 +4005,7 @@ store.book[0].title eiFTP - ShareX.HelpersLib.ExportImportControl, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.ExportImportControl, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null gbFTPAccount @@ -4171,7 +4165,6 @@ store.book[0].title FTP - @Invariant rbFTPProtocolFTP @@ -4202,7 +4195,6 @@ store.book[0].title FTPS - @Invariant rbFTPProtocolFTPS @@ -4233,7 +4225,6 @@ store.book[0].title SFTP - @Invariant rbFTPProtocolSFTP @@ -4648,7 +4639,6 @@ store.book[0].title ... - @Invariant btnFTPSCertificateLocationBrowse @@ -4775,7 +4765,6 @@ store.book[0].title FTPS - @Invariant gbFTPS @@ -5099,20 +5088,19 @@ store.book[0].title 11 - 4, 40 + 4, 22 3, 3, 3, 3 - 972, 519 + 972, 537 4 FTP / FTPS / SFTP - @Invariant tpFTP @@ -5250,7 +5238,7 @@ store.book[0].title oauth2Dropbox - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpDropbox @@ -5259,20 +5247,19 @@ store.book[0].title 4 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 0 Dropbox - @Invariant tpDropbox @@ -5383,7 +5370,7 @@ store.book[0].title oAuth2OneDrive - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpOneDrive @@ -5392,20 +5379,19 @@ store.book[0].title 3 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 17 OneDrive - @Invariant tpOneDrive @@ -5555,7 +5541,7 @@ store.book[0].title lvGoogleDriveFoldersList - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGoogleDrive @@ -5636,7 +5622,7 @@ store.book[0].title oauth2GoogleDrive - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGoogleDrive @@ -5645,20 +5631,19 @@ store.book[0].title 7 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 1 Google Drive - @Invariant tpGoogleDrive @@ -5883,20 +5868,19 @@ store.book[0].title 7 - 4, 40 + 4, 22 3, 3, 3, 3 - 972, 519 + 972, 537 26 puush - @Invariant tpPuush @@ -5989,7 +5973,7 @@ store.book[0].title lvBoxFolders - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpBox @@ -6070,7 +6054,7 @@ store.book[0].title oauth2Box - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpBox @@ -6079,20 +6063,19 @@ store.book[0].title 5 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 2 Box - @Invariant tpBox @@ -6321,7 +6304,6 @@ store.book[0].title ? - @Invariant btnAmazonS3StorageClassHelp @@ -6586,7 +6568,6 @@ store.book[0].title ... - @Invariant btnAmazonS3BucketNameOpen @@ -6614,7 +6595,6 @@ store.book[0].title ... - @Invariant btnAmazonS3AccessKeyOpen @@ -6884,20 +6864,19 @@ store.book[0].title 20 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 13 Amazon S3 - @Invariant tpAmazonS3 @@ -6914,6 +6893,9 @@ store.book[0].title True + + NoControl + 13, 420 @@ -6941,6 +6923,9 @@ store.book[0].title True + + NoControl + 13, 399 @@ -7131,7 +7116,7 @@ store.book[0].title oauth2GoogleCloudStorage - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGoogleCloudStorage @@ -7140,20 +7125,19 @@ store.book[0].title 8 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 32 Google Cloud Storage - @Invariant tpGoogleCloudStorage @@ -7280,19 +7264,15 @@ store.book[0].title blob.core.windows.net - @Invariant blob.core.usgovcloudapi.net - @Invariant blob.core.chinacloudapi.cn - @Invariant blob.core.cloudapi.de - @Invariant 16, 173 @@ -7359,7 +7339,6 @@ store.book[0].title ... - @Invariant btnAzureStoragePortal @@ -7584,20 +7563,19 @@ store.book[0].title 14 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 28 Azure Storage - @Invariant tpAzureStorage @@ -7654,7 +7632,7 @@ store.book[0].title atcGfycatAccountType - ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGfycat @@ -7675,7 +7653,7 @@ store.book[0].title oauth2Gfycat - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGfycat @@ -7684,20 +7662,19 @@ store.book[0].title 2 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 30 Gfycat - @Invariant tpGfycat @@ -8006,17 +7983,16 @@ store.book[0].title 10 - 4, 202 + 4, 22 - 178, 0 + 972, 537 12 Mega - @Invariant tpMega @@ -8030,6 +8006,87 @@ store.book[0].title 10 + + 16, 224 + + + 248, 20 + + + 20 + + + txtOwnCloudExpiryTime + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tpOwnCloud + + + 0 + + + True + + + NoControl + + + 16, 334 + + + 138, 17 + + + 18 + + + Auto expire shared links + + + cbOwnCloudAutoExpire + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tpOwnCloud + + + 1 + + + True + + + NoControl + + + 13, 208 + + + 95, 13 + + + 15 + + + Expiry Time (days): + + + lblOwnCloudExpiryTime + + + System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + tpOwnCloud + + + 2 + True @@ -8037,7 +8094,7 @@ store.book[0].title NoControl - 16, 279 + 16, 357 189, 17 @@ -8058,7 +8115,7 @@ store.book[0].title tpOwnCloud - 0 + 3 True @@ -8088,7 +8145,7 @@ store.book[0].title tpOwnCloud - 1 + 4 True @@ -8097,7 +8154,7 @@ store.book[0].title NoControl - 16, 256 + 16, 311 157, 17 @@ -8118,7 +8175,7 @@ store.book[0].title tpOwnCloud - 2 + 5 True @@ -8127,7 +8184,7 @@ store.book[0].title NoControl - 16, 232 + 16, 287 73, 17 @@ -8148,7 +8205,7 @@ store.book[0].title tpOwnCloud - 3 + 6 True @@ -8157,7 +8214,7 @@ store.book[0].title NoControl - 16, 208 + 16, 263 131, 17 @@ -8178,7 +8235,7 @@ store.book[0].title tpOwnCloud - 4 + 7 16, 176 @@ -8199,7 +8256,7 @@ store.book[0].title tpOwnCloud - 5 + 8 16, 128 @@ -8220,7 +8277,7 @@ store.book[0].title tpOwnCloud - 6 + 9 16, 80 @@ -8241,7 +8298,7 @@ store.book[0].title tpOwnCloud - 7 + 10 16, 32 @@ -8262,7 +8319,7 @@ store.book[0].title tpOwnCloud - 8 + 11 True @@ -8292,7 +8349,7 @@ store.book[0].title tpOwnCloud - 9 + 12 True @@ -8322,7 +8379,7 @@ store.book[0].title tpOwnCloud - 10 + 13 True @@ -8352,7 +8409,7 @@ store.book[0].title tpOwnCloud - 11 + 14 True @@ -8382,23 +8439,22 @@ store.book[0].title tpOwnCloud - 12 + 15 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 15 ownCloud / Nextcloud - @Invariant tpOwnCloud @@ -8596,20 +8652,19 @@ store.book[0].title 6 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 16 MediaFire - @Invariant tpMediaFire @@ -8759,20 +8814,19 @@ store.book[0].title 4 - 4, 202 + 4, 22 3, 3, 3, 3 - 178, 0 + 972, 537 14 Pushbullet - @Invariant tpPushbullet @@ -8928,7 +8982,7 @@ store.book[0].title atcSendSpaceAccountType - ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpSendSpace @@ -8937,20 +8991,19 @@ store.book[0].title 5 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 6 SendSpace - @Invariant tpSendSpace @@ -9124,20 +9177,19 @@ store.book[0].title 5 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 7 Ge.tt - @Invariant tpGe_tt @@ -9284,20 +9336,19 @@ store.book[0].title 4 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 8 Hostr - @Invariant tpHostr @@ -9322,7 +9373,6 @@ store.book[0].title PROJECT- - @Invariant txtJiraIssuePrefix @@ -9407,7 +9457,6 @@ store.book[0].title http:// - @Invariant txtJiraHost @@ -9488,7 +9537,7 @@ store.book[0].title oAuthJira - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpJira @@ -9497,17 +9546,16 @@ store.book[0].title 3 - 4, 202 + 4, 40 - 178, 0 + 972, 519 11 Atlassian Jira - @Invariant tpJira @@ -9654,20 +9702,19 @@ store.book[0].title 4 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 20 Lambda - @Invariant tpLambda @@ -9865,20 +9912,19 @@ store.book[0].title 6 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 22 Pomf - @Invariant tpPomf @@ -9894,11 +9940,9 @@ store.book[0].title https://seacloud.cc/api2/ - @Invariant https://cloud.mein-seafile.de/api2/ - @Invariant 16, 32 @@ -10153,7 +10197,7 @@ store.book[0].title lvSeafileLibraries - ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpSeafile @@ -10829,20 +10873,19 @@ Using an encrypted library disables sharing. 20 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 23 Seafile - @Invariant tpSeafile @@ -11034,17 +11077,16 @@ Using an encrypted library disables sharing. 5 - 4, 202 + 4, 40 - 178, 0 + 972, 519 24 Streamable - @Invariant tpStreamable @@ -11137,20 +11179,19 @@ Using an encrypted library disables sharing. 2 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 25 s-ul - @Invariant tpSul @@ -11372,20 +11413,19 @@ Using an encrypted library disables sharing. 7 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 20 Lithiio - @Invariant tpLithiio @@ -11880,20 +11920,19 @@ Using an encrypted library disables sharing. 1 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 29 Plik - @Invariant tpPlik @@ -12001,7 +12040,7 @@ Using an encrypted library disables sharing. oauth2YouTube - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpYouTube @@ -12010,17 +12049,16 @@ Using an encrypted library disables sharing. 3 - 4, 202 + 4, 40 - 178, 0 + 972, 519 31 YouTube - @Invariant tpYouTube @@ -12079,6 +12117,9 @@ Using an encrypted library disables sharing. 1 + + NoControl + 192, 48 @@ -12103,6 +12144,9 @@ Using an encrypted library disables sharing. 2 + + NoControl + 104, 48 @@ -12127,6 +12171,9 @@ Using an encrypted library disables sharing. 3 + + NoControl + 16, 48 @@ -12305,13 +12352,13 @@ Using an encrypted library disables sharing. 10 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 9 @@ -12725,13 +12772,13 @@ Using an encrypted library disables sharing. 14 - 4, 202 + 4, 40 3, 3, 3, 3 - 178, 0 + 972, 519 10 @@ -13254,7 +13301,6 @@ Using an encrypted library disables sharing. Pastebin - @Invariant tpPastebin @@ -13353,14 +13399,13 @@ Using an encrypted library disables sharing. 3, 3, 3, 3 - 178, 42 + 972, 537 1 Paste.ee - @Invariant tpPaste_ee @@ -13558,7 +13603,7 @@ Using an encrypted library disables sharing. oAuth2Gist - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGist @@ -13570,14 +13615,13 @@ Using an encrypted library disables sharing. 4, 22 - 178, 42 + 972, 537 2 GitHub Gist - @Invariant tpGist @@ -13679,14 +13723,13 @@ Using an encrypted library disables sharing. 3, 3, 3, 3 - 178, 42 + 972, 537 3 uPaste - @Invariant tpUpaste @@ -13839,14 +13882,13 @@ Using an encrypted library disables sharing. 3, 3, 3, 3 - 178, 42 + 972, 537 4 Hastebin - @Invariant tpHastebin @@ -13969,14 +14011,13 @@ Using an encrypted library disables sharing. 3, 3, 3, 3 - 178, 42 + 972, 537 5 OneTimeSecret - @Invariant tpOneTimeSecret @@ -14027,14 +14068,13 @@ Using an encrypted library disables sharing. 3, 3, 3, 3 - 178, 42 + 972, 537 6 Pastie - @Invariant tpPastie @@ -14202,7 +14242,7 @@ Using an encrypted library disables sharing. atcImgurAccountType - ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpImgur @@ -14223,7 +14263,7 @@ Using an encrypted library disables sharing. oauth2Imgur - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpImgur @@ -14233,7 +14273,6 @@ Using an encrypted library disables sharing. ID - Title @@ -14363,7 +14402,6 @@ Using an encrypted library disables sharing. Imgur - @Invariant tpImgur @@ -14604,7 +14642,6 @@ Using an encrypted library disables sharing. ImageShack - @Invariant tpImageShack @@ -14631,7 +14668,7 @@ Using an encrypted library disables sharing. atcTinyPicAccountType - ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpTinyPic @@ -14809,7 +14846,6 @@ Using an encrypted library disables sharing. TinyPic - @Invariant tpTinyPic @@ -14866,7 +14902,7 @@ Using an encrypted library disables sharing. oauthFlickr - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpFlickr @@ -14888,7 +14924,6 @@ Using an encrypted library disables sharing. Flickr - @Invariant tpFlickr @@ -15381,7 +15416,6 @@ Using an encrypted library disables sharing. Photobucket - @Invariant tpPhotobucket @@ -15448,7 +15482,6 @@ Using an encrypted library disables sharing. ID - 135 @@ -15529,7 +15562,7 @@ Using an encrypted library disables sharing. oauth2Picasa - ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.OAuthControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null tpGooglePhotos @@ -15551,7 +15584,6 @@ Using an encrypted library disables sharing. Google Photos - @Invariant tpGooglePhotos @@ -15822,7 +15854,6 @@ Using an encrypted library disables sharing. Chevereto - @Invariant tpChevereto @@ -15931,7 +15962,6 @@ Using an encrypted library disables sharing. vgy.me - @Invariant tpVgyme @@ -16072,7 +16102,7 @@ Using an encrypted library disables sharing. ttlvMain - ShareX.HelpersLib.TabToListView, ShareX.HelpersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.HelpersLib.TabToListView, ShareX.HelpersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null $this @@ -16093,7 +16123,7 @@ Using an encrypted library disables sharing. actRapidShareAccountType - ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.2.0.0, Culture=neutral, PublicKeyToken=null + ShareX.UploadersLib.AccountTypeControl, ShareX.UploadersLib, Version=12.3.0.0, Culture=neutral, PublicKeyToken=null True diff --git a/ShareX.UploadersLib/UploadersConfig.cs b/ShareX.UploadersLib/UploadersConfig.cs index 992371a7f..cd2889354 100644 --- a/ShareX.UploadersLib/UploadersConfig.cs +++ b/ShareX.UploadersLib/UploadersConfig.cs @@ -293,10 +293,12 @@ public class UploadersConfig : SettingsBase public string OwnCloudUsername = ""; public string OwnCloudPassword = ""; public string OwnCloudPath = "/"; + public string OwnCloudExpiryTime = "7"; public bool OwnCloudCreateShare = true; public bool OwnCloudDirectLink = false; public bool OwnCloud81Compatibility = true; public bool OwnCloudUsePreviewLinks = false; + public bool OwnCloudAutoExpire = false; #endregion ownCloud / Nextcloud From 334650d2347f442fd939eaf02502761d69e5c755 Mon Sep 17 00:00:00 2001 From: Jonathan Donaldson Date: Mon, 10 Sep 2018 18:07:45 +0100 Subject: [PATCH 02/12] Fixed styling issues --- ShareX.UploadersLib/FileUploaders/OwnCloud.cs | 2 -- ShareX.UploadersLib/Forms/UploadersConfigForm.cs | 3 --- 2 files changed, 5 deletions(-) diff --git a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs index 25f65669a..32d167eb9 100644 --- a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs +++ b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs @@ -58,7 +58,6 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer IsCompatibility81 = config.OwnCloud81Compatibility, AutoEpxireTime = config.OwnCloudExpiryTime, AutoExpire = config.OwnCloudAutoExpire - }; } @@ -163,7 +162,6 @@ public string ShareFile(string path) throw new Exception("ownCloud Auto Expire time is invalid"); } } - } string url = URLHelpers.CombineURL(Host, "ocs/v1.php/apps/files_sharing/api/v1/shares?format=json"); diff --git a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs index d5adebd68..f89293145 100644 --- a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs +++ b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs @@ -2337,8 +2337,6 @@ private void cbOwnCloudAutoExpire_CheckedChanged(object sender, EventArgs e) Config.OwnCloudAutoExpire = cbOwnCloudAutoExpire.Checked; } - - #endregion ownCloud / Nextcloud #region Pushbullet @@ -3863,6 +3861,5 @@ private void btnCustomUploaderHelp_Click(object sender, EventArgs e) #endregion Custom uploaders #endregion Other uploaders - } } \ No newline at end of file From bfc9352300c0240fcc24c90f66659329bbc9f68d Mon Sep 17 00:00:00 2001 From: Jonathan Donaldson Date: Mon, 10 Sep 2018 22:14:32 +0100 Subject: [PATCH 03/12] Fixed typo and changed OwnCloudExpiryTime to int --- ShareX.UploadersLib/FileUploaders/OwnCloud.cs | 11 +++++------ ShareX.UploadersLib/Forms/UploadersConfigForm.cs | 4 ++-- ShareX.UploadersLib/UploadersConfig.cs | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs index 32d167eb9..986af4e40 100644 --- a/ShareX.UploadersLib/FileUploaders/OwnCloud.cs +++ b/ShareX.UploadersLib/FileUploaders/OwnCloud.cs @@ -56,7 +56,7 @@ public override GenericUploader CreateUploader(UploadersConfig config, TaskRefer DirectLink = config.OwnCloudDirectLink, PreviewLink = config.OwnCloudUsePreviewLinks, IsCompatibility81 = config.OwnCloud81Compatibility, - AutoEpxireTime = config.OwnCloudExpiryTime, + AutoExpireTime = config.OwnCloudExpiryTime, AutoExpire = config.OwnCloudAutoExpire }; } @@ -70,7 +70,7 @@ public sealed class OwnCloud : FileUploader public string Username { get; set; } public string Password { get; set; } public string Path { get; set; } - public string AutoEpxireTime { get; set; } + public int AutoExpireTime { get; set; } public bool CreateShare { get; set; } public bool DirectLink { get; set; } public bool PreviewLink { get; set; } @@ -145,16 +145,15 @@ public string ShareFile(string path) if (AutoExpire) { - if (string.IsNullOrEmpty(AutoEpxireTime)) + if (AutoExpireTime == 0) { - throw new Exception("ownCloud Auto Epxire Time is empty."); + throw new Exception("ownCloud Auto Epxire Time is not valid."); } else { try { - int days = int.Parse(AutoEpxireTime); - DateTime expireTime = DateTime.UtcNow.AddDays(days); + DateTime expireTime = DateTime.UtcNow.AddDays(AutoExpireTime); args.Add("expireDate", $"{expireTime.Year}-{expireTime.Month}-{expireTime.Day}"); } catch diff --git a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs index f89293145..a3901a863 100644 --- a/ShareX.UploadersLib/Forms/UploadersConfigForm.cs +++ b/ShareX.UploadersLib/Forms/UploadersConfigForm.cs @@ -589,7 +589,7 @@ public void LoadSettings() txtOwnCloudUsername.Text = Config.OwnCloudUsername; txtOwnCloudPassword.Text = Config.OwnCloudPassword; txtOwnCloudPath.Text = Config.OwnCloudPath; - txtOwnCloudExpiryTime.Text = Config.OwnCloudExpiryTime; + txtOwnCloudExpiryTime.Value = Config.OwnCloudExpiryTime; cbOwnCloudCreateShare.Checked = Config.OwnCloudCreateShare; cbOwnCloudDirectLink.Checked = Config.OwnCloudDirectLink; cbOwnCloud81Compatibility.Checked = Config.OwnCloud81Compatibility; @@ -2310,7 +2310,7 @@ private void txtOwnCloudPath_TextChanged(object sender, EventArgs e) private void txtOwnExpiryTime_TextChanged(object sender, EventArgs e) { - Config.OwnCloudExpiryTime =txtOwnCloudExpiryTime.Value.ToString(); + Config.OwnCloudExpiryTime = Convert.ToInt32(txtOwnCloudExpiryTime.Value); } private void cbOwnCloudCreateShare_CheckedChanged(object sender, EventArgs e) diff --git a/ShareX.UploadersLib/UploadersConfig.cs b/ShareX.UploadersLib/UploadersConfig.cs index cd2889354..979d009f5 100644 --- a/ShareX.UploadersLib/UploadersConfig.cs +++ b/ShareX.UploadersLib/UploadersConfig.cs @@ -293,7 +293,7 @@ public class UploadersConfig : SettingsBase public string OwnCloudUsername = ""; public string OwnCloudPassword = ""; public string OwnCloudPath = "/"; - public string OwnCloudExpiryTime = "7"; + public int OwnCloudExpiryTime = 7; public bool OwnCloudCreateShare = true; public bool OwnCloudDirectLink = false; public bool OwnCloud81Compatibility = true; From 227dc9f44afe07f8f64f758c23d0fb249214c669 Mon Sep 17 00:00:00 2001 From: Jaex Date: Fri, 14 Sep 2018 00:47:58 +0300 Subject: [PATCH 04/12] In name parser replace spaces in process name with underscore --- ShareX.HelpersLib/NameParser/NameParser.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ShareX.HelpersLib/NameParser/NameParser.cs b/ShareX.HelpersLib/NameParser/NameParser.cs index 828d80716..908922599 100644 --- a/ShareX.HelpersLib/NameParser/NameParser.cs +++ b/ShareX.HelpersLib/NameParser/NameParser.cs @@ -93,7 +93,8 @@ public string Parse(string pattern) if (ProcessName != null) { - sb.Replace(CodeMenuEntryFilename.pn.ToPrefixString(), ProcessName); + string processName = ProcessName.Trim().Replace(' ', '_'); + sb.Replace(CodeMenuEntryFilename.pn.ToPrefixString(), processName); } string width = "", height = ""; From d4ff34aa8e39668ed15c2b3c27915d7371def9fe Mon Sep 17 00:00:00 2001 From: Jaex Date: Sun, 16 Sep 2018 21:44:46 +0300 Subject: [PATCH 05/12] Change default blur and pixelate values --- ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs index 61a48c88b..59943f481 100644 --- a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs +++ b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs @@ -94,10 +94,10 @@ public class AnnotationOptions public string LastStickerPath { get; set; } // Blur effect - public int BlurRadius { get; set; } = 15; + public int BlurRadius { get; set; } = 35; // Pixelate effect - public int PixelateSize { get; set; } = 8; + public int PixelateSize { get; set; } = 15; // Highlight effect public Color HighlightColor { get; set; } = Color.Yellow; From b952f3d6541274382c9e7794f6c8d12ab386d442 Mon Sep 17 00:00:00 2001 From: Fyers Date: Mon, 17 Sep 2018 20:05:09 +0200 Subject: [PATCH 06/12] added StartingStepNumber option for AnnotationOptions --- .../Properties/Resources.Designer.cs | 9 +++++++++ ShareX.ScreenCaptureLib/Properties/Resources.resx | 3 +++ ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs | 1 + ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs | 2 +- ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs | 13 ++++++++++++- 5 files changed, 26 insertions(+), 2 deletions(-) diff --git a/ShareX.ScreenCaptureLib/Properties/Resources.Designer.cs b/ShareX.ScreenCaptureLib/Properties/Resources.Designer.cs index d9e341176..22956155b 100644 --- a/ShareX.ScreenCaptureLib/Properties/Resources.Designer.cs +++ b/ShareX.ScreenCaptureLib/Properties/Resources.Designer.cs @@ -1559,6 +1559,15 @@ internal class Resources { return ResourceManager.GetString("ShapeManager_CreateToolbar_ShapeOptions", resourceCulture); } } + + /// + /// Looks up a localized string similar Value of first step options. + /// + internal static string ShapeManager_CreateToolbar_StartingStepValue { + get { + return ResourceManager.GetString("ShapeManager_CreateToolbar_StartingStepValue", resourceCulture); + } + } /// /// Looks up a localized string similar to Undo. diff --git a/ShareX.ScreenCaptureLib/Properties/Resources.resx b/ShareX.ScreenCaptureLib/Properties/Resources.resx index 4ba885d85..18625d696 100644 --- a/ShareX.ScreenCaptureLib/Properties/Resources.resx +++ b/ShareX.ScreenCaptureLib/Properties/Resources.resx @@ -165,6 +165,9 @@ Distance: {6:0.00} px / Angle: {7:0.00}° Use letters + + Value of first step + Image size... diff --git a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs index 61a48c88b..5a78a1e28 100644 --- a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs +++ b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs @@ -83,6 +83,7 @@ public class AnnotationOptions public Color StepFillColor { get; set; } = PrimaryColor; public int StepFontSize { get; set; } = 18; public bool StepUseLetters { get; set; } = false; + public int StartingStepNumber { get; set; } = 1; // Sticker drawing public List StickerPacks = new List() diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs index c7e4e0a94..75535b48e 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs @@ -1474,7 +1474,7 @@ private void UpdateNodes() public void OrderStepShapes() { - int i = 1; + int i = AnnotationOptions.StartingStepNumber; foreach (StepDrawingShape shape in Shapes.OfType()) { diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs index 39c29842b..756326c0c 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs @@ -52,7 +52,7 @@ internal partial class ShapeManager private ToolStripMenuItem tsmiArrowHeadsBothSide, tsmiShadow, tsmiShadowColor, tsmiStepUseLetters, tsmiUndo, tsmiDelete, tsmiDeleteAll, tsmiMoveTop, tsmiMoveUp, tsmiMoveDown, tsmiMoveBottom, tsmiRegionCapture, tsmiQuickCrop, tsmiShowMagnifier, tsmiImageEditorBackgroundColor; private ToolStripLabeledNumericUpDown tslnudBorderSize, tslnudCornerRadius, tslnudCenterPoints, tslnudBlurRadius, tslnudPixelateSize, tslnudStepFontSize, - tslnudMagnifierPixelCount; + tslnudMagnifierPixelCount, tslnudStartingStepValue; private ToolStripLabel tslDragLeft, tslDragRight; private ToolStripLabeledComboBox tscbImageInterpolationMode, tscbCursorTypes; @@ -546,6 +546,17 @@ internal void CreateToolbar() }; tsddbShapeOptions.DropDownItems.Add(tslnudStepFontSize); + tslnudStartingStepValue = new ToolStripLabeledNumericUpDown(Resources.ShapeManager_CreateToolbar_StartingStepValue); + tslnudStartingStepValue.Content.Minimum = 1; + tslnudStartingStepValue.Content.Maximum = 10000; + tslnudStartingStepValue.Content.ValueChanged = (sender, e) => + { + AnnotationOptions.StartingStepNumber = (int)tslnudStartingStepValue.Content.Value; + UpdateCurrentShape(); + }; + tsddbShapeOptions.DropDownItems.Add(tslnudStartingStepValue); + AnnotationOptions.StartingStepNumber = 1; + tsmiStepUseLetters = new ToolStripMenuItem(Resources.ShapeManager_CreateToolbar_UseLetters); tsmiStepUseLetters.Checked = false; tsmiStepUseLetters.CheckOnClick = true; From 48155ff42c8176049814403c255d8d5d131f7a62 Mon Sep 17 00:00:00 2001 From: Fyers Date: Mon, 17 Sep 2018 20:27:22 +0200 Subject: [PATCH 07/12] only show StartingStepNumber on DrawingStep --- ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs index 756326c0c..ee6244010 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs @@ -1315,6 +1315,7 @@ private void UpdateMenu() tsbHighlightColor.Image = ImageHelpers.CreateColorPickerIcon(AnnotationOptions.HighlightColor, new Rectangle(0, 0, 16, 16)); tslnudStepFontSize.Content.Value = AnnotationOptions.StepFontSize; + tslnudStartingStepValue.Content.Value = AnnotationOptions.StartingStepNumber; tsmiStepUseLetters.Checked = AnnotationOptions.StepUseLetters; tsmiShadow.Checked = AnnotationOptions.Shadow; @@ -1406,6 +1407,7 @@ private void UpdateMenu() tslnudCenterPoints.Visible = shapeType == ShapeType.DrawingLine || shapeType == ShapeType.DrawingArrow; tsmiArrowHeadsBothSide.Visible = shapeType == ShapeType.DrawingArrow; tscbImageInterpolationMode.Visible = shapeType == ShapeType.DrawingImage || shapeType == ShapeType.DrawingImageScreen; + tslnudStartingStepValue.Visible = shapeType == ShapeType.DrawingStep; tslnudStepFontSize.Visible = tsmiStepUseLetters.Visible = shapeType == ShapeType.DrawingStep; tscbCursorTypes.Visible = shapeType == ShapeType.DrawingCursor; tslnudBlurRadius.Visible = shapeType == ShapeType.EffectBlur; From 62eb62a9c22ff8b38e3fc1751d5f99bf6702f5f7 Mon Sep 17 00:00:00 2001 From: Fyers Date: Wed, 19 Sep 2018 18:35:58 +0200 Subject: [PATCH 08/12] moved StartingStepNumber from AnnotationOptions to ShapeManager --- ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs | 1 - ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs | 3 ++- ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs index 5a78a1e28..61a48c88b 100644 --- a/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs +++ b/ShareX.ScreenCaptureLib/Shapes/AnnotationOptions.cs @@ -83,7 +83,6 @@ public class AnnotationOptions public Color StepFillColor { get; set; } = PrimaryColor; public int StepFontSize { get; set; } = 18; public bool StepUseLetters { get; set; } = false; - public int StartingStepNumber { get; set; } = 1; // Sticker drawing public List StickerPacks = new List() diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs index 75535b48e..755c82820 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManager.cs @@ -152,6 +152,7 @@ private set public bool IsCurrentHoverShapeValid => CurrentHoverShape != null && CurrentHoverShape.IsValidShape; public bool IsCurrentShapeTypeRegion => IsShapeTypeRegion(CurrentTool); + public int StartingStepNumber { get; set; } = 1; public bool IsCreating { get; set; } public bool IsMoving { get; set; } @@ -1474,7 +1475,7 @@ private void UpdateNodes() public void OrderStepShapes() { - int i = AnnotationOptions.StartingStepNumber; + int i = StartingStepNumber; foreach (StepDrawingShape shape in Shapes.OfType()) { diff --git a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs index ee6244010..48aa3ace5 100644 --- a/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs +++ b/ShareX.ScreenCaptureLib/Shapes/ShapeManagerMenu.cs @@ -551,11 +551,10 @@ internal void CreateToolbar() tslnudStartingStepValue.Content.Maximum = 10000; tslnudStartingStepValue.Content.ValueChanged = (sender, e) => { - AnnotationOptions.StartingStepNumber = (int)tslnudStartingStepValue.Content.Value; + StartingStepNumber = (int)tslnudStartingStepValue.Content.Value; UpdateCurrentShape(); }; tsddbShapeOptions.DropDownItems.Add(tslnudStartingStepValue); - AnnotationOptions.StartingStepNumber = 1; tsmiStepUseLetters = new ToolStripMenuItem(Resources.ShapeManager_CreateToolbar_UseLetters); tsmiStepUseLetters.Checked = false; @@ -1315,7 +1314,7 @@ private void UpdateMenu() tsbHighlightColor.Image = ImageHelpers.CreateColorPickerIcon(AnnotationOptions.HighlightColor, new Rectangle(0, 0, 16, 16)); tslnudStepFontSize.Content.Value = AnnotationOptions.StepFontSize; - tslnudStartingStepValue.Content.Value = AnnotationOptions.StartingStepNumber; + tslnudStartingStepValue.Content.Value = StartingStepNumber; tsmiStepUseLetters.Checked = AnnotationOptions.StepUseLetters; tsmiShadow.Checked = AnnotationOptions.Shadow; From ff09ec2616e2f8989976d55f91b6caa2f6ff04ab Mon Sep 17 00:00:00 2001 From: Fyers Date: Fri, 21 Sep 2018 22:51:33 +0200 Subject: [PATCH 09/12] added some more german translations --- .../Colors/ColorPickerForm.de.resx | 43 ++++++ ShareX.HistoryLib/Forms/HistoryForm.de.resx | 6 + .../Forms/ImageThumbnailerForm.de.resx | 144 ++++++++++++++++++ ShareX.MediaLib/ShareX.MediaLib.csproj | 3 + .../Controls/OAuthControl.de.resx | 3 + .../FTPClient/FTPClientForm.de.resx | 29 +++- .../Forms/OCRSpaceForm.de.resx | 3 + .../Properties/Resources.de.resx | 15 ++ ShareX/Forms/ApplicationSettingsForm.de.resx | 15 ++ ShareX/Forms/MainForm.de.resx | 47 +++++- ShareX/Forms/QRCodeForm.de.resx | 21 +++ ShareX/Forms/QuickTaskInfoEditForm.de.resx | 3 + ShareX/Properties/Resources.de.resx | 18 +++ 13 files changed, 348 insertions(+), 2 deletions(-) create mode 100644 ShareX.MediaLib/Forms/ImageThumbnailerForm.de.resx diff --git a/ShareX.HelpersLib/Colors/ColorPickerForm.de.resx b/ShareX.HelpersLib/Colors/ColorPickerForm.de.resx index 52eac5ee8..ecc01a4a4 100644 --- a/ShareX.HelpersLib/Colors/ColorPickerForm.de.resx +++ b/ShareX.HelpersLib/Colors/ColorPickerForm.de.resx @@ -1,3 +1,4 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Hinzufügen... + + + Entfernen + + + Breite: + + + Höhe: + + + Thumbnails generieren + + + Ausgabe-Ordner + + + ShareX - Bild Thumbnailer + + + Ausgabe-Dateiname + + \ No newline at end of file diff --git a/ShareX.MediaLib/ShareX.MediaLib.csproj b/ShareX.MediaLib/ShareX.MediaLib.csproj index b56a58024..353d7f744 100644 --- a/ShareX.MediaLib/ShareX.MediaLib.csproj +++ b/ShareX.MediaLib/ShareX.MediaLib.csproj @@ -166,6 +166,9 @@ ImageCombinerForm.cs + + ImageThumbnailerForm.cs + ImageThumbnailerForm.cs diff --git a/ShareX.UploadersLib/Controls/OAuthControl.de.resx b/ShareX.UploadersLib/Controls/OAuthControl.de.resx index 35a30dd01..a90b672ea 100644 --- a/ShareX.UploadersLib/Controls/OAuthControl.de.resx +++ b/ShareX.UploadersLib/Controls/OAuthControl.de.resx @@ -135,4 +135,7 @@ Verifikationscode (Hole den Code von der Autorisierungsseite): + + Status: + \ No newline at end of file diff --git a/ShareX.UploadersLib/FTPClient/FTPClientForm.de.resx b/ShareX.UploadersLib/FTPClient/FTPClientForm.de.resx index 62ab2a0fb..4db109e92 100644 --- a/ShareX.UploadersLib/FTPClient/FTPClientForm.de.resx +++ b/ShareX.UploadersLib/FTPClient/FTPClientForm.de.resx @@ -1,4 +1,4 @@ - +