Merge pull request #1 from JooHyungByun/CommentModify

Comment modify
This commit is contained in:
JooHyungByun 2018-05-20 00:04:35 +09:00 committed by GitHub
commit 693e5562ae
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
28 changed files with 905 additions and 1839 deletions

File diff suppressed because it is too large Load diff

View file

@ -46,7 +46,7 @@ public partial class HistoryForm : Form
private HistoryItem[] allHistoryItems;
private string defaultTitle;
public HistoryForm(string historyPath, int maxItemCount, int splitterDistance = 0)
public HistoryForm(string historyPath, int maxItemCount, int splitterDistance = 0, Action<string> uploadFile = null, Action<string> editImage = null)
{
HistoryPath = historyPath;
MaxItemCount = maxItemCount;
@ -67,7 +67,7 @@ public HistoryForm(string historyPath, int maxItemCount, int splitterDistance =
il.Images.Add(Resources.globe);
lvHistory.SmallImageList = il;
him = new HistoryItemManager();
him = new HistoryItemManager(uploadFile, editImage);
him.GetHistoryItems += him_GetHistoryItems;
pbThumbnail.Reset();

View file

@ -24,6 +24,7 @@ You should have received a copy of the GNU General Public License
#endregion License Information (GPL v3)
using ShareX.HelpersLib;
using System;
using System.IO;
using System.Linq;
@ -48,9 +49,14 @@ public partial class HistoryItemManager
public bool IsImageFile { get; private set; }
public bool IsTextFile { get; private set; }
public HistoryItemManager()
private Action<string> uploadFile, editImage;
public HistoryItemManager(Action<string> uploadFile, Action<string> editImage)
{
InitializeComponent();
this.uploadFile = uploadFile;
this.editImage = editImage;
}
public HistoryRefreshInfoResult RefreshInfo()
@ -303,5 +309,15 @@ public void ShowMoreInfo()
{
new HistoryItemInfoForm(HistoryItem).Show();
}
public void UploadFile()
{
if (uploadFile != null && HistoryItem != null && IsFileExist) uploadFile(HistoryItem.Filepath);
}
public void EditImage()
{
if (editImage != null && HistoryItem != null && IsImageFile) editImage(HistoryItem.Filepath);
}
}
}

View file

@ -71,6 +71,8 @@ public partial class HistoryItemManager
private ToolStripMenuItem tsmiShow;
private ToolStripMenuItem tsmiShowImagePreview;
private ToolStripMenuItem tsmiShowMoreInfo;
private ToolStripMenuItem tsmiUploadFile;
private ToolStripMenuItem tsmiEditImage;
private void InitializeComponent()
{
@ -112,6 +114,8 @@ private void InitializeComponent()
tsmiShow = new ToolStripMenuItem();
tsmiShowImagePreview = new ToolStripMenuItem();
tsmiShowMoreInfo = new ToolStripMenuItem();
tsmiUploadFile = new ToolStripMenuItem();
tsmiEditImage = new ToolStripMenuItem();
cmsHistory.SuspendLayout();
//
@ -121,7 +125,9 @@ private void InitializeComponent()
{
tsmiOpen,
tsmiCopy,
tsmiShow
tsmiShow,
tsmiUploadFile,
tsmiEditImage
});
cmsHistory.Name = "cmsHistory";
cmsHistory.ShowImageMargin = false;
@ -410,6 +416,20 @@ private void InitializeComponent()
tsmiShowMoreInfo.Size = new Size(127, 22);
tsmiShowMoreInfo.Text = Resources.HistoryItemManager_InitializeComponent_More_info;
tsmiShowMoreInfo.Click += tsmiShowMoreInfo_Click;
//
// tsmiUploadFile
//
tsmiUploadFile.Name = "tsmiUploadFile";
tsmiUploadFile.Size = new Size(127, 22);
tsmiUploadFile.Text = "Upload file"; // TODO: Translate
tsmiUploadFile.Click += tsmiUploadFile_Click;
//
// tsmiEditImage
//
tsmiEditImage.Name = "tsmiEditImage";
tsmiEditImage.Size = new Size(127, 22);
tsmiEditImage.Text = "Edit image..."; // TODO: Translate
tsmiEditImage.Click += tsmiEditImage_Click;
cmsHistory.ResumeLayout(false);
}
@ -468,6 +488,12 @@ public void UpdateButtons()
// Show
tsmiShowImagePreview.Enabled = IsImageFile;
// Upload file
tsmiUploadFile.Enabled = IsFileExist;
// Edit image
tsmiEditImage.Enabled = IsImageFile;
cmsHistory.ResumeLayout();
}
@ -610,5 +636,15 @@ private void tsmiShowMoreInfo_Click(object sender, EventArgs e)
{
ShowMoreInfo();
}
private void tsmiUploadFile_Click(object sender, EventArgs e)
{
UploadFile();
}
private void tsmiEditImage_Click(object sender, EventArgs e)
{
EditImage();
}
}
}

View file

@ -46,7 +46,7 @@ public partial class ImageHistoryForm : Form
private HistoryItemManager him;
private HistoryItem[] historyItems;
public ImageHistoryForm(string historyPath, int viewMode, Size thumbnailSize, int maxItemCount)
public ImageHistoryForm(string historyPath, int viewMode, Size thumbnailSize, int maxItemCount, Action<string> uploadFile = null, Action<string> editImage = null)
{
InitializeComponent();
Icon = ShareXResources.Icon;
@ -112,7 +112,7 @@ public ImageHistoryForm(string historyPath, int viewMode, Size thumbnailSize, in
tsmiMaxImageLimit1000.RadioCheck();
}
him = new HistoryItemManager();
him = new HistoryItemManager(uploadFile, editImage);
him.GetHistoryItems += him_GetHistoryItems;
}

View file

@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
@ -13,12 +13,12 @@ namespace ShareX.HistoryLib.Properties {
/// <summary>
/// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
// 클래스에서 자동으로 생성되었습니다.
// 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
// 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
@ -33,7 +33,7 @@ internal Resources() {
}
/// <summary>
/// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
@ -47,8 +47,8 @@ internal Resources() {
}
/// <summary>
/// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대한 현재 스레드의 CurrentUICulture
/// 속성을 재정의합니다.
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
@ -61,7 +61,7 @@ internal Resources() {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap application_block {
get {
@ -71,7 +71,7 @@ internal static System.Drawing.Bitmap application_block {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap globe {
get {
@ -81,7 +81,7 @@ internal static System.Drawing.Bitmap globe {
}
/// <summary>
/// Filtered: {0}과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Filtered: {0}.
/// </summary>
internal static string HistoryForm_UpdateItemCount___Filtered___0_ {
get {
@ -90,7 +90,7 @@ internal static string HistoryForm_UpdateItemCount___Filtered___0_ {
}
/// <summary>
/// Total: {0}과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Total: {0}.
/// </summary>
internal static string HistoryForm_UpdateItemCount_Total___0_ {
get {
@ -99,7 +99,7 @@ internal static string HistoryForm_UpdateItemCount_Total___0_ {
}
/// <summary>
/// Copy과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Copy.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Copy {
get {
@ -108,7 +108,7 @@ internal static string HistoryItemManager_InitializeComponent_Copy {
}
/// <summary>
/// Deletion URL과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Deletion URL.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Deletion_URL {
get {
@ -117,7 +117,7 @@ internal static string HistoryItemManager_InitializeComponent_Deletion_URL {
}
/// <summary>
/// File과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to File.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_File {
get {
@ -126,7 +126,7 @@ internal static string HistoryItemManager_InitializeComponent_File {
}
/// <summary>
/// File name과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to File name.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_File_name {
get {
@ -135,7 +135,7 @@ internal static string HistoryItemManager_InitializeComponent_File_name {
}
/// <summary>
/// File name with extension과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to File name with extension.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_File_name_with_extension {
get {
@ -144,7 +144,7 @@ internal static string HistoryItemManager_InitializeComponent_File_name_with_ext
}
/// <summary>
/// File path과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to File path.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_File_path {
get {
@ -153,7 +153,7 @@ internal static string HistoryItemManager_InitializeComponent_File_path {
}
/// <summary>
/// Folder과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Folder.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Folder {
get {
@ -162,7 +162,7 @@ internal static string HistoryItemManager_InitializeComponent_Folder {
}
/// <summary>
/// Forum (BBCode) image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Forum (BBCode) image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__image {
get {
@ -171,7 +171,7 @@ internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__ima
}
/// <summary>
/// Forum (BBCode) link과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Forum (BBCode) link.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__link {
get {
@ -180,7 +180,7 @@ internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__lin
}
/// <summary>
/// Forum (BBCode) linked image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Forum (BBCode) linked image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__linked_image {
get {
@ -189,7 +189,7 @@ internal static string HistoryItemManager_InitializeComponent_Forum__BBCode__lin
}
/// <summary>
/// HTML image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to HTML image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_HTML_image {
get {
@ -198,7 +198,7 @@ internal static string HistoryItemManager_InitializeComponent_HTML_image {
}
/// <summary>
/// HTML link과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to HTML link.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_HTML_link {
get {
@ -207,7 +207,7 @@ internal static string HistoryItemManager_InitializeComponent_HTML_link {
}
/// <summary>
/// HTML linked image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to HTML linked image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_HTML_linked_image {
get {
@ -216,7 +216,7 @@ internal static string HistoryItemManager_InitializeComponent_HTML_linked_image
}
/// <summary>
/// Image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Image {
get {
@ -225,7 +225,7 @@ internal static string HistoryItemManager_InitializeComponent_Image {
}
/// <summary>
/// Image preview과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Image preview.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Image_preview {
get {
@ -234,7 +234,7 @@ internal static string HistoryItemManager_InitializeComponent_Image_preview {
}
/// <summary>
/// Markdown image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Markdown image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Markdown__image {
get {
@ -243,7 +243,7 @@ internal static string HistoryItemManager_InitializeComponent_Markdown__image {
}
/// <summary>
/// Markdown link과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Markdown link.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Markdown__link {
get {
@ -252,7 +252,7 @@ internal static string HistoryItemManager_InitializeComponent_Markdown__link {
}
/// <summary>
/// Markdown linked image과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Markdown linked image.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Markdown__linked_image {
get {
@ -261,7 +261,7 @@ internal static string HistoryItemManager_InitializeComponent_Markdown__linked_i
}
/// <summary>
/// More info과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to More info.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_More_info {
get {
@ -270,7 +270,7 @@ internal static string HistoryItemManager_InitializeComponent_More_info {
}
/// <summary>
/// Open과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Open.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Open {
get {
@ -279,7 +279,7 @@ internal static string HistoryItemManager_InitializeComponent_Open {
}
/// <summary>
/// Shortened URL과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Shortened URL.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Shortened_URL {
get {
@ -288,7 +288,7 @@ internal static string HistoryItemManager_InitializeComponent_Shortened_URL {
}
/// <summary>
/// Show과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Show.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Show {
get {
@ -297,7 +297,7 @@ internal static string HistoryItemManager_InitializeComponent_Show {
}
/// <summary>
/// Text과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Text.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Text {
get {
@ -306,7 +306,7 @@ internal static string HistoryItemManager_InitializeComponent_Text {
}
/// <summary>
/// Thumbnail URL과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Thumbnail URL.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_Thumbnail_URL {
get {
@ -315,7 +315,7 @@ internal static string HistoryItemManager_InitializeComponent_Thumbnail_URL {
}
/// <summary>
/// URL과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to URL.
/// </summary>
internal static string HistoryItemManager_InitializeComponent_URL {
get {
@ -324,7 +324,7 @@ internal static string HistoryItemManager_InitializeComponent_URL {
}
/// <summary>
/// HTML link ({0})과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to HTML link ({0}).
/// </summary>
internal static string HistoryItemManager_UpdateTexts_HTML_link___0__ {
get {
@ -333,7 +333,7 @@ internal static string HistoryItemManager_UpdateTexts_HTML_link___0__ {
}
/// <summary>
/// URLs ({0})과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to URLs ({0}).
/// </summary>
internal static string HistoryItemManager_UpdateTexts_URLs___0__ {
get {
@ -342,7 +342,7 @@ internal static string HistoryItemManager_UpdateTexts_URLs___0__ {
}
/// <summary>
/// Error과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Error.
/// </summary>
internal static string HistoryManager_GetHistoryItems_Error {
get {
@ -351,7 +351,7 @@ internal static string HistoryManager_GetHistoryItems_Error {
}
/// <summary>
/// Error occured while reading XML file: {0}과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Error occured while reading XML file: {0}.
/// </summary>
internal static string HistoryManager_GetHistoryItems_Error_occured_while_reading_XML_file___0_ {
get {
@ -360,7 +360,7 @@ internal static string HistoryManager_GetHistoryItems_Error_occured_while_readin
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap image {
get {
@ -370,7 +370,7 @@ internal static System.Drawing.Bitmap image {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap notebook {
get {
@ -380,7 +380,7 @@ internal static System.Drawing.Bitmap notebook {
}
/// <summary>
/// Copy name과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Copy name.
/// </summary>
internal static string ObjectListView_ObjectListView_Copy_name {
get {
@ -389,7 +389,7 @@ internal static string ObjectListView_ObjectListView_Copy_name {
}
/// <summary>
/// Copy value과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Copy value.
/// </summary>
internal static string ObjectListView_ObjectListView_Copy_value {
get {
@ -398,7 +398,7 @@ internal static string ObjectListView_ObjectListView_Copy_value {
}
/// <summary>
/// Name과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Name.
/// </summary>
internal static string ObjectListView_ObjectListView_Name {
get {
@ -407,7 +407,7 @@ internal static string ObjectListView_ObjectListView_Name {
}
/// <summary>
/// Value과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Value.
/// </summary>
internal static string ObjectListView_ObjectListView_Value {
get {

View file

@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
@ -13,12 +13,12 @@ namespace ShareX.ImageEffectsLib.Properties {
/// <summary>
/// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
// 클래스에서 자동으로 생성되었습니다.
// 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
// 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
@ -33,7 +33,7 @@ internal Resources() {
}
/// <summary>
/// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
@ -47,8 +47,8 @@ internal Resources() {
}
/// <summary>
/// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대한 현재 스레드의 CurrentUICulture
/// 속성을 재정의합니다.
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
@ -61,7 +61,7 @@ internal Resources() {
}
/// <summary>
/// Adjustments과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Adjustments.
/// </summary>
internal static string ImageEffectsForm_AddAllEffectsToTreeView_Adjustments {
get {
@ -70,7 +70,7 @@ internal static string ImageEffectsForm_AddAllEffectsToTreeView_Adjustments {
}
/// <summary>
/// Drawings과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Drawings.
/// </summary>
internal static string ImageEffectsForm_AddAllEffectsToTreeView_Drawings {
get {
@ -79,7 +79,7 @@ internal static string ImageEffectsForm_AddAllEffectsToTreeView_Drawings {
}
/// <summary>
/// Filters과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Filters.
/// </summary>
internal static string ImageEffectsForm_AddAllEffectsToTreeView_Filters {
get {
@ -88,7 +88,7 @@ internal static string ImageEffectsForm_AddAllEffectsToTreeView_Filters {
}
/// <summary>
/// Manipulations과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Manipulations.
/// </summary>
internal static string ImageEffectsForm_AddAllEffectsToTreeView_Manipulations {
get {
@ -97,7 +97,7 @@ internal static string ImageEffectsForm_AddAllEffectsToTreeView_Manipulations {
}
/// <summary>
/// Cancel과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Cancel.
/// </summary>
internal static string ImageEffectsForm_EditorMode_Cancel {
get {
@ -106,7 +106,7 @@ internal static string ImageEffectsForm_EditorMode_Cancel {
}
/// <summary>
/// Image effects - Width: {0}, Height: {1}, Render time: {2} ms과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Image effects - Width: {0}, Height: {1}, Render time: {2} ms.
/// </summary>
internal static string ImageEffectsForm_UpdatePreview_Image_effects___Width___0___Height___1___Render_time___2__ms {
get {

File diff suppressed because it is too large Load diff

View file

@ -1,22 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.23107.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShareX.Steam", "ShareX.Steam\ShareX.Steam.csproj", "{7F6ADFC5-2563-4A5F-B202-93B553578719}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{7F6ADFC5-2563-4A5F-B202-93B553578719}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7F6ADFC5-2563-4A5F-B202-93B553578719}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7F6ADFC5-2563-4A5F-B202-93B553578719}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7F6ADFC5-2563-4A5F-B202-93B553578719}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View file

@ -62,8 +62,6 @@ public enum TextDestination
Paste2,
[Description("Slexy")]
Slexy,
[Description("Pastee.org")]
Pastee,
[Description("Paste.ee")]
Paste_ee,
[Description("GitHub Gist")]
@ -127,8 +125,6 @@ public enum FileDestination
Pomf,
[Description("Uguu")]
Uguu,
[Description("Dropfile")]
Dropfile,
[Description("Seafile")]
Seafile,
[Description("Streamable")]
@ -165,8 +161,6 @@ public enum UrlShortenerType
YOURLS,
[Description("adf.ly")]
AdFly,
[Description("coinurl.com")]
CoinURL,
[Description("qr.net")]
QRnet,
[Description("vurl.com")]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -1,70 +0,0 @@
#region License Information (GPL v3)
/*
ShareX - A program that allows you to take screenshots and share any file type
Copyright (c) 2007-2018 ShareX Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Optionally you can also view the license at <http://www.gnu.org/licenses/>.
*/
#endregion License Information (GPL v3)
using Newtonsoft.Json;
using System.IO;
namespace ShareX.UploadersLib.FileUploaders
{
public class DropfileFileUploaderService : FileUploaderService
{
public override FileDestination EnumValue { get; } = FileDestination.Dropfile;
public override bool CheckConfig(UploadersConfig config) => true;
public override GenericUploader CreateUploader(UploadersConfig config, TaskReferenceHelper taskInfo)
{
return new Dropfile();
}
}
public sealed class Dropfile : FileUploader
{
public override UploadResult Upload(Stream stream, string fileName)
{
UploadResult result = SendRequestFile("https://d1.dropfile.to/upload", stream, fileName);
if (result.IsSuccess)
{
DropfileResponse response = JsonConvert.DeserializeObject<DropfileResponse>(result.Response);
if (response != null && response.Status == 0)
{
result.URL = response.URL;
result.DeletionURL = response.URL + "+" + response.Access_key;
}
}
return result;
}
private class DropfileResponse
{
public int Status { get; set; }
public string URL { get; set; }
public string Access_key { get; set; }
}
}
}

View file

@ -157,9 +157,6 @@ private void InitializeComponent()
this.lblAdflyAPIUID = new System.Windows.Forms.Label();
this.txtAdflyAPIKEY = new System.Windows.Forms.TextBox();
this.lblAdflyAPIKEY = new System.Windows.Forms.Label();
this.tpCoinURL = new System.Windows.Forms.TabPage();
this.txtCoinURLUUID = new System.Windows.Forms.TextBox();
this.lblCoinURLUUID = new System.Windows.Forms.Label();
this.tpPolr = new System.Windows.Forms.TabPage();
this.cbPolrUseAPIv1 = new System.Windows.Forms.CheckBox();
this.cbPolrIsSecret = new System.Windows.Forms.CheckBox();
@ -669,7 +666,6 @@ private void InitializeComponent()
this.tpBitly.SuspendLayout();
this.tpYourls.SuspendLayout();
this.tpAdFly.SuspendLayout();
this.tpCoinURL.SuspendLayout();
this.tpPolr.SuspendLayout();
this.tpFirebaseDynamicLinks.SuspendLayout();
this.tpFileUploaders.SuspendLayout();
@ -1554,7 +1550,6 @@ private void InitializeComponent()
this.tcURLShorteners.Controls.Add(this.tpBitly);
this.tcURLShorteners.Controls.Add(this.tpYourls);
this.tcURLShorteners.Controls.Add(this.tpAdFly);
this.tcURLShorteners.Controls.Add(this.tpCoinURL);
this.tcURLShorteners.Controls.Add(this.tpPolr);
this.tcURLShorteners.Controls.Add(this.tpFirebaseDynamicLinks);
resources.ApplyResources(this.tcURLShorteners, "tcURLShorteners");
@ -1697,26 +1692,6 @@ private void InitializeComponent()
resources.ApplyResources(this.lblAdflyAPIKEY, "lblAdflyAPIKEY");
this.lblAdflyAPIKEY.Name = "lblAdflyAPIKEY";
//
// tpCoinURL
//
this.tpCoinURL.BackColor = System.Drawing.SystemColors.Window;
this.tpCoinURL.Controls.Add(this.txtCoinURLUUID);
this.tpCoinURL.Controls.Add(this.lblCoinURLUUID);
resources.ApplyResources(this.tpCoinURL, "tpCoinURL");
this.tpCoinURL.Name = "tpCoinURL";
//
// txtCoinURLUUID
//
resources.ApplyResources(this.txtCoinURLUUID, "txtCoinURLUUID");
this.txtCoinURLUUID.Name = "txtCoinURLUUID";
this.txtCoinURLUUID.UseSystemPasswordChar = true;
this.txtCoinURLUUID.TextChanged += new System.EventHandler(this.txtCoinURLUUID_TextChanged);
//
// lblCoinURLUUID
//
resources.ApplyResources(this.lblCoinURLUUID, "lblCoinURLUUID");
this.lblCoinURLUUID.Name = "lblCoinURLUUID";
//
// tpPolr
//
this.tpPolr.BackColor = System.Drawing.SystemColors.Window;
@ -5353,8 +5328,6 @@ private void InitializeComponent()
this.tpYourls.PerformLayout();
this.tpAdFly.ResumeLayout(false);
this.tpAdFly.PerformLayout();
this.tpCoinURL.ResumeLayout(false);
this.tpCoinURL.PerformLayout();
this.tpPolr.ResumeLayout(false);
this.tpPolr.PerformLayout();
this.tpFirebaseDynamicLinks.ResumeLayout(false);
@ -5801,8 +5774,6 @@ private void InitializeComponent()
private System.Windows.Forms.Label lblTwitterDefaultMessage;
private System.Windows.Forms.TextBox txtTwitterDefaultMessage;
private System.Windows.Forms.CheckBox cbTwitterSkipMessageBox;
private System.Windows.Forms.TextBox txtCoinURLUUID;
private System.Windows.Forms.Label lblCoinURLUUID;
private System.Windows.Forms.CheckBox cbOwnCloud81Compatibility;
private System.Windows.Forms.Button btnCustomUploaderClearUploaders;
private System.Windows.Forms.Label lblOneTimeSecretAPIKey;
@ -5944,7 +5915,6 @@ private void InitializeComponent()
internal System.Windows.Forms.TabPage tpBitly;
internal System.Windows.Forms.TabPage tpYourls;
internal System.Windows.Forms.TabPage tpAdFly;
internal System.Windows.Forms.TabPage tpCoinURL;
internal System.Windows.Forms.TabPage tpPolr;
internal System.Windows.Forms.TabPage tpTwitter;
internal System.Windows.Forms.TabPage tpCustomUploaders;

View file

@ -29,6 +29,7 @@ You should have received a copy of the GNU General Public License
using ShareX.UploadersLib.ImageUploaders;
using ShareX.UploadersLib.Properties;
using ShareX.UploadersLib.TextUploaders;
using ShareX.UploadersLib.URLShorteners;
using System;
using System.Collections.Generic;
using System.Diagnostics;
@ -762,12 +763,6 @@ public void LoadSettings()
#endregion adf.ly
#region coinurl.com
txtCoinURLUUID.Text = Config.CoinURLUUID;
#endregion coinurl.com
#region Polr
txtPolrAPIHostname.Text = Config.PolrAPIHostname;
@ -831,12 +826,13 @@ private void atcImgurAccountType_AccountTypeChanged(AccountType accountType)
private void oauth2Imgur_OpenButtonClicked()
{
ImgurAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.ImgurClientID, APIKeys.ImgurClientSecret);
Config.ImgurOAuth2Info = OAuth2Open(new Imgur(oauth));
}
private void oauth2Imgur_CompleteButtonClicked(string code)
{
ImgurAuthComplete(code);
btnImgurRefreshAlbumList.Enabled = OAuth2Complete(new Imgur(Config.ImgurOAuth2Info), code, oauth2Imgur);
}
private void oauth2Imgur_ClearButtonClicked()
@ -846,7 +842,7 @@ private void oauth2Imgur_ClearButtonClicked()
private void oauth2Imgur_RefreshButtonClicked()
{
ImgurAuthRefresh();
btnImgurRefreshAlbumList.Enabled = OAuth2Refresh(new Imgur(Config.ImgurOAuth2Info), oauth2Imgur);
}
private void cbImgurDirectLink_CheckedChanged(object sender, EventArgs e)
@ -1078,12 +1074,13 @@ private void btnPhotobucketRemoveAlbum_Click(object sender, EventArgs e)
private void oauth2Picasa_OpenButtonClicked()
{
GooglePhotosAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.GoogleClientID, APIKeys.GoogleClientSecret);
Config.PicasaOAuth2Info = OAuth2Open(new GooglePhotos(oauth));
}
private void oauth2Picasa_CompleteButtonClicked(string code)
{
GooglePhotosAuthComplete(code);
btnPicasaRefreshAlbumList.Enabled = OAuth2Complete(new GooglePhotos(Config.PicasaOAuth2Info), code, oauth2Picasa);
}
private void oauth2Picasa_ClearButtonClicked()
@ -1093,7 +1090,7 @@ private void oauth2Picasa_ClearButtonClicked()
private void oauth2Picasa_RefreshButtonClicked()
{
GooglePhotosAuthRefresh();
btnPicasaRefreshAlbumList.Enabled = OAuth2Refresh(new GooglePhotos(Config.PicasaOAuth2Info), oauth2Picasa);
}
private void txtPicasaAlbumID_TextChanged(object sender, EventArgs e)
@ -1264,12 +1261,13 @@ private void txtPaste_eeUserAPIKey_TextChanged(object sender, EventArgs e)
private void oAuth2Gist_OpenButtonClicked()
{
GistAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.GitHubID, APIKeys.GitHubSecret);
Config.GistOAuth2Info = OAuth2Open(new GitHubGist(oauth));
}
private void oAuth2Gist_CompleteButtonClicked(string code)
{
GistAuthComplete(code);
OAuth2Complete(new GitHubGist(Config.GistOAuth2Info), code, oAuth2Gist);
}
private void oAuth2Gist_ClearButtonClicked()
@ -1686,12 +1684,13 @@ private void pbDropboxLogo_Click(object sender, EventArgs e)
private void oauth2Dropbox_OpenButtonClicked()
{
DropboxAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.DropboxConsumerKey, APIKeys.DropboxConsumerSecret);
Config.DropboxOAuth2Info = OAuth2Open(new Dropbox(oauth));
}
private void oauth2Dropbox_CompleteButtonClicked(string code)
{
DropboxAuthComplete(code);
OAuth2Complete(new Dropbox(Config.DropboxOAuth2Info), code, oauth2Dropbox);
}
private void oauth2Dropbox_ClearButtonClicked()
@ -1721,17 +1720,19 @@ private void cbDropboxUseDirectLink_CheckedChanged(object sender, EventArgs e)
private void oAuth2OneDrive_OpenButtonClicked()
{
OneDriveAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.OneDriveClientID, APIKeys.OneDriveClientSecret);
oauth.Proof = new OAuth2ProofKey(OAuth2ChallengeMethod.SHA256);
Config.OneDriveV2OAuth2Info = OAuth2Open(new OneDrive(oauth));
}
private void oAuth2OneDrive_CompleteButtonClicked(string code)
{
OneDriveAuthComplete(code);
tvOneDrive.Enabled = OAuth2Complete(new OneDrive(Config.OneDriveV2OAuth2Info), code, oAuth2OneDrive);
}
private void oAuth2OneDrive_RefreshButtonClicked()
{
OneDriveAuthRefresh();
tvOneDrive.Enabled = OAuth2Refresh(new OneDrive(Config.OneDriveV2OAuth2Info), oAuth2OneDrive);
}
private void oAuth2OneDrive_ClearButtonClicked()
@ -1898,17 +1899,18 @@ private void txtPuushAPIKey_TextChanged(object sender, EventArgs e)
private void oauth2Box_OpenButtonClicked()
{
BoxAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.BoxClientID, APIKeys.BoxClientSecret);
Config.BoxOAuth2Info = OAuth2Open(new Box(oauth));
}
private void oauth2Box_CompleteButtonClicked(string code)
{
BoxAuthComplete(code);
btnBoxRefreshFolders.Enabled = OAuth2Complete(new Box(Config.BoxOAuth2Info), code, oauth2Box);
}
private void oauth2Box_RefreshButtonClicked()
{
BoxAuthRefresh();
btnBoxRefreshFolders.Enabled = OAuth2Refresh(new Box(Config.BoxOAuth2Info), oauth2Box);
}
private void oauth2Box_ClearButtonClicked()
@ -2948,12 +2950,13 @@ private void atcGfycatAccountType_AccountTypeChanged(AccountType accountType)
private void oauth2Gfycat_OpenButtonClicked()
{
GfycatAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.GfycatClientID, APIKeys.GfycatClientSecret);
Config.GfycatOAuth2Info = OAuth2Open(new GfycatUploader(oauth));
}
private void oauth2Gfycat_CompleteButtonClicked(string code)
{
GfycatAuthComplete(code);
OAuth2Complete(new GfycatUploader(Config.GfycatOAuth2Info), code, oauth2Gfycat);
}
private void oauth2Gfycat_ClearButtonClicked()
@ -2963,7 +2966,7 @@ private void oauth2Gfycat_ClearButtonClicked()
private void oauth2Gfycat_RefreshButtonClicked()
{
GfycatAuthRefresh();
OAuth2Refresh(new GfycatUploader(Config.GfycatOAuth2Info), oauth2Gfycat);
}
private void cbGfycatIsPublic_CheckedChanged(object sender, EventArgs e)
@ -3059,12 +3062,13 @@ private void txtGoogleCloudStorageObjectPrefix_TextChanged(object sender, EventA
private void oauth2Bitly_OpenButtonClicked()
{
BitlyAuthOpen();
OAuth2Info oauth = new OAuth2Info(APIKeys.BitlyClientID, APIKeys.BitlyClientSecret);
Config.BitlyOAuth2Info = OAuth2Open(new BitlyURLShortener(oauth));
}
private void oauth2Bitly_CompleteButtonClicked(string code)
{
BitlyAuthComplete(code);
OAuth2Complete(new BitlyURLShortener(Config.BitlyOAuth2Info), code, oauth2Bitly);
}
private void oauth2Bitly_ClearButtonClicked()
@ -3123,15 +3127,6 @@ private void llAdflyLink_LinkClicked(object sender, LinkLabelLinkClickedEventArg
#endregion adf.ly
#region CoinURL
private void txtCoinURLUUID_TextChanged(object sender, EventArgs e)
{
Config.CoinURLUUID = txtCoinURLUUID.Text;
}
#endregion CoinURL
#region Polr
private void txtPolrAPIHostname_TextChanged(object sender, EventArgs e)

View file

@ -496,7 +496,7 @@ For example, if your bucket is called bucket.example.com then URL will be http:/
</data>
<data name="tpTwitter.Text" xml:space="preserve">
<value>Twitter</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpTwitter.Name" xml:space="preserve">
<value>tpTwitter</value>
</data>
@ -2782,7 +2782,7 @@ store.book[0].title</value>
</data>
<data name="tpBitly.Text" xml:space="preserve">
<value>bit.ly</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpBitly.Name" xml:space="preserve">
<value>tpBitly</value>
</data>
@ -3043,7 +3043,7 @@ store.book[0].title</value>
</data>
<data name="tpYourls.Text" xml:space="preserve">
<value>YOURLS</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpYourls.Name" xml:space="preserve">
<value>tpYourls</value>
</data>
@ -3202,7 +3202,7 @@ store.book[0].title</value>
</data>
<data name="tpAdFly.Text" xml:space="preserve">
<value>adf.ly</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpAdFly.Name" xml:space="preserve">
<value>tpAdFly</value>
</data>
@ -3215,81 +3215,6 @@ store.book[0].title</value>
<data name="&gt;&gt;tpAdFly.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="txtCoinURLUUID.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 32</value>
</data>
<data name="txtCoinURLUUID.Size" type="System.Drawing.Size, System.Drawing">
<value>224, 20</value>
</data>
<data name="txtCoinURLUUID.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
</data>
<data name="&gt;&gt;txtCoinURLUUID.Name" xml:space="preserve">
<value>txtCoinURLUUID</value>
</data>
<data name="&gt;&gt;txtCoinURLUUID.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtCoinURLUUID.Parent" xml:space="preserve">
<value>tpCoinURL</value>
</data>
<data name="&gt;&gt;txtCoinURLUUID.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="lblCoinURLUUID.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="lblCoinURLUUID.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="lblCoinURLUUID.Location" type="System.Drawing.Point, System.Drawing">
<value>13, 16</value>
</data>
<data name="lblCoinURLUUID.Size" type="System.Drawing.Size, System.Drawing">
<value>37, 13</value>
</data>
<data name="lblCoinURLUUID.TabIndex" type="System.Int32, mscorlib">
<value>8</value>
</data>
<data name="lblCoinURLUUID.Text" xml:space="preserve">
<value>UUID:</value>
</data>
<data name="&gt;&gt;lblCoinURLUUID.Name" xml:space="preserve">
<value>lblCoinURLUUID</value>
</data>
<data name="&gt;&gt;lblCoinURLUUID.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lblCoinURLUUID.Parent" xml:space="preserve">
<value>tpCoinURL</value>
</data>
<data name="&gt;&gt;lblCoinURLUUID.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="tpCoinURL.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 22</value>
</data>
<data name="tpCoinURL.Size" type="System.Drawing.Size, System.Drawing">
<value>178, 42</value>
</data>
<data name="tpCoinURL.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="tpCoinURL.Text" xml:space="preserve">
<value>CoinURL</value>
<comment>@Invariant</comment></data>
<data name="&gt;&gt;tpCoinURL.Name" xml:space="preserve">
<value>tpCoinURL</value>
</data>
<data name="&gt;&gt;tpCoinURL.Type" xml:space="preserve">
<value>System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tpCoinURL.Parent" xml:space="preserve">
<value>tcURLShorteners</value>
</data>
<data name="&gt;&gt;tpCoinURL.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="cbPolrUseAPIv1.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@ -3463,7 +3388,7 @@ store.book[0].title</value>
</data>
<data name="tpPolr.Text" xml:space="preserve">
<value>Polr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPolr.Name" xml:space="preserve">
<value>tpPolr</value>
</data>
@ -3474,7 +3399,7 @@ store.book[0].title</value>
<value>tcURLShorteners</value>
</data>
<data name="&gt;&gt;tpPolr.ZOrder" xml:space="preserve">
<value>4</value>
<value>3</value>
</data>
<data name="cbFirebaseIsShort.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -3633,7 +3558,7 @@ store.book[0].title</value>
<value>tcURLShorteners</value>
</data>
<data name="&gt;&gt;tpFirebaseDynamicLinks.ZOrder" xml:space="preserve">
<value>5</value>
<value>4</value>
</data>
<data name="tcURLShorteners.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
@ -5146,7 +5071,7 @@ store.book[0].title</value>
</data>
<data name="tpFTP.Text" xml:space="preserve">
<value>FTP / FTPS / SFTP</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpFTP.Name" xml:space="preserve">
<value>tpFTP</value>
</data>
@ -5445,7 +5370,7 @@ store.book[0].title</value>
</data>
<data name="tpDropbox.Text" xml:space="preserve">
<value>Dropbox</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpDropbox.Name" xml:space="preserve">
<value>tpDropbox</value>
</data>
@ -5577,7 +5502,7 @@ store.book[0].title</value>
</data>
<data name="tpOneDrive.Text" xml:space="preserve">
<value>OneDrive</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOneDrive.Name" xml:space="preserve">
<value>tpOneDrive</value>
</data>
@ -5829,7 +5754,7 @@ store.book[0].title</value>
</data>
<data name="tpGoogleDrive.Text" xml:space="preserve">
<value>Google Drive</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGoogleDrive.Name" xml:space="preserve">
<value>tpGoogleDrive</value>
</data>
@ -6093,7 +6018,7 @@ store.book[0].title</value>
</data>
<data name="tpPuush.Text" xml:space="preserve">
<value>puush</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPuush.Name" xml:space="preserve">
<value>tpPuush</value>
</data>
@ -6288,7 +6213,7 @@ store.book[0].title</value>
</data>
<data name="tpBox.Text" xml:space="preserve">
<value>Box</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpBox.Name" xml:space="preserve">
<value>tpBox</value>
</data>
@ -7089,7 +7014,7 @@ store.book[0].title</value>
</data>
<data name="tpAmazonS3.Text" xml:space="preserve">
<value>Amazon S3</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpAmazonS3.Name" xml:space="preserve">
<value>tpAmazonS3</value>
</data>
@ -7331,20 +7256,20 @@ store.book[0].title</value>
<value>8</value>
</data>
<data name="tpGoogleCloudStorage.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 40</value>
<value>4, 202</value>
</data>
<data name="tpGoogleCloudStorage.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 3</value>
</data>
<data name="tpGoogleCloudStorage.Size" type="System.Drawing.Size, System.Drawing">
<value>972, 519</value>
<value>178, 0</value>
</data>
<data name="tpGoogleCloudStorage.TabIndex" type="System.Int32, mscorlib">
<value>32</value>
</data>
<data name="tpGoogleCloudStorage.Text" xml:space="preserve">
<value>Google Cloud Storage</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGoogleCloudStorage.Name" xml:space="preserve">
<value>tpGoogleCloudStorage</value>
</data>
@ -7668,7 +7593,7 @@ store.book[0].title</value>
</data>
<data name="tpAzureStorage.Text" xml:space="preserve">
<value>Azure Storage</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpAzureStorage.Name" xml:space="preserve">
<value>tpAzureStorage</value>
</data>
@ -7767,7 +7692,7 @@ store.book[0].title</value>
</data>
<data name="tpGfycat.Text" xml:space="preserve">
<value>Gfycat</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGfycat.Name" xml:space="preserve">
<value>tpGfycat</value>
</data>
@ -8085,7 +8010,7 @@ store.book[0].title</value>
</data>
<data name="tpMega.Text" xml:space="preserve">
<value>Mega</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpMega.Name" xml:space="preserve">
<value>tpMega</value>
</data>
@ -8466,7 +8391,7 @@ store.book[0].title</value>
</data>
<data name="tpOwnCloud.Text" xml:space="preserve">
<value>ownCloud / Nextcloud</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOwnCloud.Name" xml:space="preserve">
<value>tpOwnCloud</value>
</data>
@ -8676,7 +8601,7 @@ store.book[0].title</value>
</data>
<data name="tpMediaFire.Text" xml:space="preserve">
<value>MediaFire</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpMediaFire.Name" xml:space="preserve">
<value>tpMediaFire</value>
</data>
@ -8838,7 +8763,7 @@ store.book[0].title</value>
</data>
<data name="tpPushbullet.Text" xml:space="preserve">
<value>Pushbullet</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPushbullet.Name" xml:space="preserve">
<value>tpPushbullet</value>
</data>
@ -9015,7 +8940,7 @@ store.book[0].title</value>
</data>
<data name="tpSendSpace.Text" xml:space="preserve">
<value>SendSpace</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpSendSpace.Name" xml:space="preserve">
<value>tpSendSpace</value>
</data>
@ -9201,7 +9126,7 @@ store.book[0].title</value>
</data>
<data name="tpGe_tt.Text" xml:space="preserve">
<value>Ge.tt</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGe_tt.Name" xml:space="preserve">
<value>tpGe_tt</value>
</data>
@ -9360,7 +9285,7 @@ store.book[0].title</value>
</data>
<data name="tpHostr.Text" xml:space="preserve">
<value>Hostr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpHostr.Name" xml:space="preserve">
<value>tpHostr</value>
</data>
@ -9567,7 +9492,7 @@ store.book[0].title</value>
</data>
<data name="tpJira.Text" xml:space="preserve">
<value>Atlassian Jira</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpJira.Name" xml:space="preserve">
<value>tpJira</value>
</data>
@ -9726,7 +9651,7 @@ store.book[0].title</value>
</data>
<data name="tpLambda.Text" xml:space="preserve">
<value>Lambda</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpLambda.Name" xml:space="preserve">
<value>tpLambda</value>
</data>
@ -9936,7 +9861,7 @@ store.book[0].title</value>
</data>
<data name="tpPomf.Text" xml:space="preserve">
<value>Pomf</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPomf.Name" xml:space="preserve">
<value>tpPomf</value>
</data>
@ -10897,7 +10822,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpSeafile.Text" xml:space="preserve">
<value>Seafile</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpSeafile.Name" xml:space="preserve">
<value>tpSeafile</value>
</data>
@ -11098,7 +11023,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpStreamable.Text" xml:space="preserve">
<value>Streamable</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpStreamable.Name" xml:space="preserve">
<value>tpStreamable</value>
</data>
@ -11203,7 +11128,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpSul.Text" xml:space="preserve">
<value>s-ul</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpSul.Name" xml:space="preserve">
<value>tpSul</value>
</data>
@ -11437,7 +11362,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpLithiio.Text" xml:space="preserve">
<value>Lithiio</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpLithiio.Name" xml:space="preserve">
<value>tpLithiio</value>
</data>
@ -11944,7 +11869,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPlik.Text" xml:space="preserve">
<value>Plik</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPlik.Name" xml:space="preserve">
<value>tpPlik</value>
</data>
@ -12070,7 +11995,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpYouTube.Text" xml:space="preserve">
<value>YouTube</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpYouTube.Name" xml:space="preserve">
<value>tpYouTube</value>
</data>
@ -13303,7 +13228,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPastebin.Text" xml:space="preserve">
<value>Pastebin</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPastebin.Name" xml:space="preserve">
<value>tpPastebin</value>
</data>
@ -13408,7 +13333,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPaste_ee.Text" xml:space="preserve">
<value>Paste.ee</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPaste_ee.Name" xml:space="preserve">
<value>tpPaste_ee</value>
</data>
@ -13624,7 +13549,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpGist.Text" xml:space="preserve">
<value>GitHub Gist</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGist.Name" xml:space="preserve">
<value>tpGist</value>
</data>
@ -13732,7 +13657,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpUpaste.Text" xml:space="preserve">
<value>uPaste</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpUpaste.Name" xml:space="preserve">
<value>tpUpaste</value>
</data>
@ -13891,7 +13816,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpHastebin.Text" xml:space="preserve">
<value>Hastebin</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpHastebin.Name" xml:space="preserve">
<value>tpHastebin</value>
</data>
@ -14020,7 +13945,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpOneTimeSecret.Text" xml:space="preserve">
<value>OneTimeSecret</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpOneTimeSecret.Name" xml:space="preserve">
<value>tpOneTimeSecret</value>
</data>
@ -14404,7 +14329,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpImgur.Text" xml:space="preserve">
<value>Imgur</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpImgur.Name" xml:space="preserve">
<value>tpImgur</value>
</data>
@ -14644,7 +14569,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpImageShack.Text" xml:space="preserve">
<value>ImageShack</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpImageShack.Name" xml:space="preserve">
<value>tpImageShack</value>
</data>
@ -14848,7 +14773,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpTinyPic.Text" xml:space="preserve">
<value>TinyPic</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpTinyPic.Name" xml:space="preserve">
<value>tpTinyPic</value>
</data>
@ -14926,7 +14851,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpFlickr.Text" xml:space="preserve">
<value>Flickr</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpFlickr.Name" xml:space="preserve">
<value>tpFlickr</value>
</data>
@ -15418,7 +15343,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpPhotobucket.Text" xml:space="preserve">
<value>Photobucket</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpPhotobucket.Name" xml:space="preserve">
<value>tpPhotobucket</value>
</data>
@ -15586,7 +15511,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpGooglePhotos.Text" xml:space="preserve">
<value>Google Photos</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpGooglePhotos.Name" xml:space="preserve">
<value>tpGooglePhotos</value>
</data>
@ -15856,7 +15781,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpChevereto.Text" xml:space="preserve">
<value>Chevereto</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpChevereto.Name" xml:space="preserve">
<value>tpChevereto</value>
</data>
@ -15964,7 +15889,7 @@ Using an encrypted library disables sharing.</value>
</data>
<data name="tpVgyme.Text" xml:space="preserve">
<value>vgy.me</value>
<comment>@Invariant</comment></data>
</data>
<data name="&gt;&gt;tpVgyme.Name" xml:space="preserve">
<value>tpVgyme</value>
</data>

View file

@ -43,88 +43,6 @@ public partial class UploadersConfigForm
{
#region Imgur
private void ImgurAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.ImgurClientID, APIKeys.ImgurClientSecret);
string url = new Imgur(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.ImgurOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("ImgurAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("ImgurAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
private void ImgurAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.ImgurOAuth2Info != null)
{
bool result = new Imgur(Config.ImgurOAuth2Info).GetAccessToken(code);
if (result)
{
oauth2Imgur.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Imgur.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
btnImgurRefreshAlbumList.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
private void ImgurAuthRefresh()
{
try
{
if (OAuth2Info.CheckOAuth(Config.ImgurOAuth2Info))
{
bool result = new Imgur(Config.ImgurOAuth2Info).RefreshAccessToken();
if (result)
{
oauth2Imgur.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Imgur.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
atcImgurAccountType.SelectedAccountType = AccountType.Anonymous;
}
btnImgurRefreshAlbumList.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
private void ImgurRefreshAlbumList()
{
try
@ -292,87 +210,6 @@ public void PhotobucketCreateAlbum()
#region Google Photos
public void GooglePhotosAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.GoogleClientID, APIKeys.GoogleClientSecret);
string url = new GooglePhotos(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.PicasaOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("GooglePhotosAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("GooglePhotosAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void GooglePhotosAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.PicasaOAuth2Info != null)
{
bool result = new GoogleDrive(Config.PicasaOAuth2Info).GetAccessToken(code);
if (result)
{
oauth2Picasa.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Picasa.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
btnPicasaRefreshAlbumList.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void GooglePhotosAuthRefresh()
{
try
{
if (OAuth2Info.CheckOAuth(Config.PicasaOAuth2Info))
{
bool result = new GoogleDrive(Config.PicasaOAuth2Info).RefreshAccessToken();
if (result)
{
oauth2Picasa.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Picasa.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
btnPicasaRefreshAlbumList.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void GooglePhotosRefreshAlbumList()
{
try
@ -404,64 +241,6 @@ public void GooglePhotosRefreshAlbumList()
#endregion Google Photos
#region Dropbox
public void DropboxAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.DropboxConsumerKey, APIKeys.DropboxConsumerSecret);
string url = new Dropbox(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.DropboxOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("DropboxAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("DropboxAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void DropboxAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.DropboxOAuth2Info != null)
{
Dropbox dropbox = new Dropbox(Config.DropboxOAuth2Info);
bool result = dropbox.GetAccessToken(code);
if (result)
{
oauth2Dropbox.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else
{
oauth2Dropbox.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
catch (Exception ex)
{
DebugHelper.WriteException(ex);
ex.ShowError();
}
}
#endregion Dropbox
#region Amazon S3
private void UpdateAmazonS3Status()
@ -521,87 +300,6 @@ private void GoogleDriveRefreshFolders()
#region Box
public void BoxAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.BoxClientID, APIKeys.BoxClientSecret);
string url = new Box(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.BoxOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("BoxAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("BoxAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void BoxAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.BoxOAuth2Info != null)
{
bool result = new Box(Config.BoxOAuth2Info).GetAccessToken(code);
if (result)
{
oauth2Box.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Box.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
btnBoxRefreshFolders.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void BoxAuthRefresh()
{
try
{
if (OAuth2Info.CheckOAuth(Config.BoxOAuth2Info))
{
bool result = new Box(Config.BoxOAuth2Info).RefreshAccessToken();
if (result)
{
oauth2Box.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Box.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
btnBoxRefreshFolders.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void BoxListFolders()
{
lvBoxFolders.Items.Clear();
@ -641,88 +339,6 @@ private void BoxAddFolder(BoxFileEntry folder)
#region OneDrive
public void OneDriveAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.OneDriveClientID, APIKeys.OneDriveClientSecret);
oauth.Proof = new OAuth2ProofKey(OAuth2ChallengeMethod.SHA256);
string url = new OneDrive(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.OneDriveV2OAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("OneDriveAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("OneDriveAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void OneDriveAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.OneDriveV2OAuth2Info != null)
{
bool result = new OneDrive(Config.OneDriveV2OAuth2Info).GetAccessToken(code);
if (result)
{
oAuth2OneDrive.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oAuth2OneDrive.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
tvOneDrive.Enabled = result;
}
}
catch (Exception ex)
{
DebugHelper.WriteException(ex);
ex.ShowError();
}
}
public void OneDriveAuthRefresh()
{
try
{
if (OAuth2Info.CheckOAuth(Config.OneDriveV2OAuth2Info))
{
bool result = new OneDrive(Config.OneDriveV2OAuth2Info).RefreshAccessToken();
if (result)
{
oAuth2OneDrive.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oAuth2OneDrive.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
tvOneDrive.Enabled = result;
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void OneDriveListFolders(OneDriveFileInfo fileEntry, TreeNode tnParent)
{
Application.DoEvents();
@ -1248,61 +864,6 @@ private void TwitterAuthClear()
#endregion Twitter
#region bit.ly
public void BitlyAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.BitlyClientID, APIKeys.BitlyClientSecret);
string url = new BitlyURLShortener(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.BitlyOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("BitlyAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("BitlyAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void BitlyAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.BitlyOAuth2Info != null)
{
bool result = new BitlyURLShortener(Config.BitlyOAuth2Info).GetAccessToken(code);
if (result)
{
oauth2Bitly.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Bitly.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
#endregion bit.ly
#region Custom uploader
private bool CustomUploaderCheck(int index)
@ -1825,137 +1386,6 @@ public void JiraAuthComplete(string code)
#endregion Jira
#region Gist
public void GistAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.GitHubID, APIKeys.GitHubSecret);
string url = new GitHubGist(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.GistOAuth2Info = oauth;
URLHelpers.OpenURL(url);
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
public void GistAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.GistOAuth2Info != null)
{
bool result = new GitHubGist(Config.GistOAuth2Info).GetAccessToken(code);
if (result)
{
oAuth2Gist.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oAuth2Gist.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
#endregion Gist
#region Gfycat
private void GfycatAuthOpen()
{
try
{
OAuth2Info oauth = new OAuth2Info(APIKeys.GfycatClientID, APIKeys.GfycatClientSecret);
string url = new GfycatUploader(oauth).GetAuthorizationURL();
if (!string.IsNullOrEmpty(url))
{
Config.GfycatOAuth2Info = oauth;
URLHelpers.OpenURL(url);
DebugHelper.WriteLine("GfycatAuthOpen - Authorization URL is opened: " + url);
}
else
{
DebugHelper.WriteLine("GfycatAuthOpen - Authorization URL is empty.");
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
private void GfycatAuthComplete(string code)
{
try
{
if (!string.IsNullOrEmpty(code) && Config.GfycatOAuth2Info != null)
{
bool result = new GfycatUploader(Config.GfycatOAuth2Info).GetAccessToken(code);
if (result)
{
oauth2Gfycat.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Gfycat.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
private void GfycatAuthRefresh()
{
try
{
if (OAuth2Info.CheckOAuth(Config.GfycatOAuth2Info))
{
bool result = new GfycatUploader(Config.GfycatOAuth2Info).RefreshAccessToken();
if (result)
{
oauth2Gfycat.Status = OAuthLoginStatus.LoginSuccessful;
MessageBox.Show(Resources.UploadersConfigForm_Login_successful, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
oauth2Gfycat.Status = OAuthLoginStatus.LoginFailed;
MessageBox.Show(Resources.UploadersConfigForm_Login_failed, "ShareX", MessageBoxButtons.OK, MessageBoxIcon.Error);
atcGfycatAccountType.SelectedAccountType = AccountType.Anonymous;
}
}
}
catch (Exception ex)
{
ex.ShowError();
}
}
#endregion Gfycat
#region Shared folder
private void SharedFolderUpdateControls()
@ -2029,7 +1459,7 @@ private bool SharedFolderRemoveItem(int index)
#region Generic OAuth2
private OAuth2Info OAuth2Open(IOAuth2 uploader)
private OAuth2Info OAuth2Open(IOAuth2Basic uploader)
{
try
{
@ -2054,7 +1484,7 @@ private OAuth2Info OAuth2Open(IOAuth2 uploader)
return null;
}
private bool OAuth2Complete(IOAuth2 uploader, string code, OAuthControl control)
private bool OAuth2Complete(IOAuth2Basic uploader, string code, OAuthControl control)
{
try
{

View file

@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 이 코드는 도구를 사용하여 생성되었습니다.
// 런타임 버전:4.0.30319.42000
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
// 이러한 변경 내용이 손실됩니다.
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
@ -13,12 +13,12 @@ namespace ShareX.UploadersLib.Properties {
/// <summary>
/// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
// 클래스에서 자동으로 생성되었습니다.
// 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여 ResGen을
// 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
@ -33,7 +33,7 @@ internal Resources() {
}
/// <summary>
/// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
@ -47,8 +47,8 @@ internal Resources() {
}
/// <summary>
/// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대한 현재 스레드의 CurrentUICulture
/// 속성을 재정의합니다.
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
@ -61,7 +61,7 @@ internal Resources() {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon AdFly {
get {
@ -71,7 +71,7 @@ internal static System.Drawing.Icon AdFly {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon AmazonS3 {
get {
@ -81,7 +81,7 @@ internal static System.Drawing.Icon AmazonS3 {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap AzureStorage {
get {
@ -91,7 +91,7 @@ internal static System.Drawing.Bitmap AzureStorage {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Bitly {
get {
@ -101,7 +101,7 @@ internal static System.Drawing.Icon Bitly {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Box {
get {
@ -111,7 +111,7 @@ internal static System.Drawing.Icon Box {
}
/// <summary>
/// Browse for a certificate file...과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Browse for a certificate file....
/// </summary>
internal static string CertFileNameEditor_EditValue_Browse_for_a_certificate_file___ {
get {
@ -120,7 +120,7 @@ internal static string CertFileNameEditor_EditValue_Browse_for_a_certificate_fil
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Chevereto {
get {
@ -130,26 +130,16 @@ internal static System.Drawing.Bitmap Chevereto {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// </summary>
internal static System.Drawing.Icon CoinURL {
get {
object obj = ResourceManager.GetObject("CoinURL", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
/// <summary>
/// Response parse failed.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Response parse failed..
/// </summary>
internal static string CustomFileUploader_Upload_Response_parse_failed_ {
get {
return ResourceManager.GetString("CustomFileUploader_Upload_Response_parse_failed_", resourceCulture);
}
}
/// <summary>
/// &quot;File form name&quot; must be configured.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to &quot;File form name&quot; must be configured..
/// </summary>
internal static string CustomUploaderItem_GetFileFormName_FileFormNameMustBeConfigured {
get {
@ -158,7 +148,7 @@ internal static string CustomUploaderItem_GetFileFormName_FileFormNameMustBeConf
}
/// <summary>
/// &quot;Request URL&quot; must be configured.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to &quot;Request URL&quot; must be configured..
/// </summary>
internal static string CustomUploaderItem_GetRequestURL_RequestURLMustBeConfigured {
get {
@ -167,7 +157,7 @@ internal static string CustomUploaderItem_GetRequestURL_RequestURLMustBeConfigur
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap document {
get {
@ -177,7 +167,7 @@ internal static System.Drawing.Bitmap document {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Dropbox {
get {
@ -187,7 +177,7 @@ internal static System.Drawing.Icon Dropbox {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Firebase {
get {
@ -197,7 +187,7 @@ internal static System.Drawing.Icon Firebase {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Flickr {
get {
@ -207,7 +197,7 @@ internal static System.Drawing.Icon Flickr {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap folder_network {
get {
@ -217,7 +207,7 @@ internal static System.Drawing.Bitmap folder_network {
}
/// <summary>
/// Connecting to {0}과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Connecting to {0}.
/// </summary>
internal static string FTPClientForm_FTPClientForm_Connecting_to__0_ {
get {
@ -226,7 +216,7 @@ internal static string FTPClientForm_FTPClientForm_Connecting_to__0_ {
}
/// <summary>
/// ShareX FTP client과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to ShareX FTP client.
/// </summary>
internal static string FTPClientForm_FTPClientForm_ShareX_FTP_client {
get {
@ -235,7 +225,7 @@ internal static string FTPClientForm_FTPClientForm_ShareX_FTP_client {
}
/// <summary>
/// Directory name to create과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Directory name to create.
/// </summary>
internal static string FTPClientForm_FTPCreateDirectory_Directory_name_to_create {
get {
@ -244,7 +234,7 @@ internal static string FTPClientForm_FTPCreateDirectory_Directory_name_to_create
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Gett {
get {
@ -254,7 +244,7 @@ internal static System.Drawing.Icon Gett {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Gfycat {
get {
@ -264,7 +254,7 @@ internal static System.Drawing.Bitmap Gfycat {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon GitHub {
get {
@ -274,7 +264,7 @@ internal static System.Drawing.Icon GitHub {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap globe_network {
get {
@ -284,7 +274,7 @@ internal static System.Drawing.Bitmap globe_network {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon GoogleCloud {
get {
@ -294,7 +284,7 @@ internal static System.Drawing.Icon GoogleCloud {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon GoogleDrive {
get {
@ -304,7 +294,7 @@ internal static System.Drawing.Icon GoogleDrive {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon GooglePhotos {
get {
@ -314,7 +304,7 @@ internal static System.Drawing.Icon GooglePhotos {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Hastebin {
get {
@ -324,7 +314,7 @@ internal static System.Drawing.Bitmap Hastebin {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Hostr {
get {
@ -334,7 +324,7 @@ internal static System.Drawing.Icon Hostr {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon ImageShack {
get {
@ -344,7 +334,7 @@ internal static System.Drawing.Icon ImageShack {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Imgur {
get {
@ -354,7 +344,7 @@ internal static System.Drawing.Icon Imgur {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap jira {
get {
@ -364,7 +354,7 @@ internal static System.Drawing.Bitmap jira {
}
/// <summary>
/// Issue not found과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Issue not found.
/// </summary>
internal static string JiraUpload_ValidateIssueId_Issue_not_found {
get {
@ -373,7 +363,7 @@ internal static string JiraUpload_ValidateIssueId_Issue_not_found {
}
/// <summary>
/// Browse for a key file...과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Browse for a key file....
/// </summary>
internal static string KeyFileNameEditor_EditValue_Browse_for_a_key_file___ {
get {
@ -382,7 +372,7 @@ internal static string KeyFileNameEditor_EditValue_Browse_for_a_key_file___ {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Lambda {
get {
@ -392,7 +382,7 @@ internal static System.Drawing.Icon Lambda {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Lithiio {
get {
@ -402,7 +392,7 @@ internal static System.Drawing.Icon Lithiio {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap mail {
get {
@ -412,7 +402,7 @@ internal static System.Drawing.Bitmap mail {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon MediaFire {
get {
@ -422,7 +412,7 @@ internal static System.Drawing.Icon MediaFire {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Mega {
get {
@ -432,7 +422,7 @@ internal static System.Drawing.Icon Mega {
}
/// <summary>
/// Paste verification code here과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Paste verification code here.
/// </summary>
internal static string OAuthControl_OAuthControl_PasteVerificationCodeHere {
get {
@ -441,7 +431,7 @@ internal static string OAuthControl_OAuthControl_PasteVerificationCodeHere {
}
/// <summary>
/// Logged in.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Logged in..
/// </summary>
internal static string OAuthControl_Status_LoggedIn {
get {
@ -450,7 +440,7 @@ internal static string OAuthControl_Status_LoggedIn {
}
/// <summary>
/// Login failed.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Login failed..
/// </summary>
internal static string OAuthControl_Status_LoginFailed {
get {
@ -459,7 +449,7 @@ internal static string OAuthControl_Status_LoginFailed {
}
/// <summary>
/// Not logged in.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Not logged in..
/// </summary>
internal static string OAuthControl_Status_NotLoggedIn {
get {
@ -468,7 +458,7 @@ internal static string OAuthControl_Status_NotLoggedIn {
}
/// <summary>
/// New account과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to New account.
/// </summary>
internal static string OAuthInfo_OAuthInfo_New_account {
get {
@ -477,7 +467,7 @@ internal static string OAuthInfo_OAuthInfo_New_account {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon OneDrive {
get {
@ -487,7 +477,7 @@ internal static System.Drawing.Icon OneDrive {
}
/// <summary>
/// Root folder과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Root folder.
/// </summary>
internal static string OneDrive_RootFolder_Root_folder {
get {
@ -496,7 +486,7 @@ internal static string OneDrive_RootFolder_Root_folder {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon OneTimeSecret {
get {
@ -506,7 +496,7 @@ internal static System.Drawing.Icon OneTimeSecret {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap OwnCloud {
get {
@ -516,7 +506,7 @@ internal static System.Drawing.Bitmap OwnCloud {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Pastebin {
get {
@ -526,7 +516,7 @@ internal static System.Drawing.Icon Pastebin {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Pastie {
get {
@ -536,7 +526,7 @@ internal static System.Drawing.Bitmap Pastie {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Photobucket {
get {
@ -546,7 +536,7 @@ internal static System.Drawing.Icon Photobucket {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Plik {
get {
@ -556,7 +546,7 @@ internal static System.Drawing.Icon Plik {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Polr {
get {
@ -566,7 +556,7 @@ internal static System.Drawing.Icon Polr {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Pomf {
get {
@ -576,7 +566,7 @@ internal static System.Drawing.Icon Pomf {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Pushbullet {
get {
@ -586,7 +576,7 @@ internal static System.Drawing.Icon Pushbullet {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon puush {
get {
@ -596,7 +586,7 @@ internal static System.Drawing.Icon puush {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap puush_256 {
get {
@ -606,7 +596,7 @@ internal static System.Drawing.Bitmap puush_256 {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Seafile {
get {
@ -616,7 +606,7 @@ internal static System.Drawing.Bitmap Seafile {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon SendSpace {
get {
@ -626,7 +616,7 @@ internal static System.Drawing.Icon SendSpace {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap server_network {
get {
@ -636,7 +626,7 @@ internal static System.Drawing.Bitmap server_network {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Streamable {
get {
@ -646,7 +636,7 @@ internal static System.Drawing.Icon Streamable {
}
/// <summary>
/// System.Drawing.Bitmap 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap Sul {
get {
@ -656,7 +646,7 @@ internal static System.Drawing.Bitmap Sul {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon TinyPic {
get {
@ -666,7 +656,7 @@ internal static System.Drawing.Icon TinyPic {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Twitter {
get {
@ -676,7 +666,7 @@ internal static System.Drawing.Icon Twitter {
}
/// <summary>
/// Tweet error과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Tweet error.
/// </summary>
internal static string TwitterTweetForm_SendTweet_Tweet_error {
get {
@ -685,7 +675,7 @@ internal static string TwitterTweetForm_SendTweet_Tweet_error {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Upaste {
get {
@ -695,7 +685,7 @@ internal static System.Drawing.Icon Upaste {
}
/// <summary>
/// A header with the same name already exists.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to A header with the same name already exists..
/// </summary>
internal static string UploadersConfigForm_A_header_with_the_same_name_already_exists {
get {
@ -704,7 +694,7 @@ internal static string UploadersConfigForm_A_header_with_the_same_name_already_e
}
/// <summary>
/// https://aws.amazon.com/s3/storage-classes/과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to https://aws.amazon.com/s3/storage-classes/.
/// </summary>
internal static string UploadersConfigForm_AmazonS3StorageClassHelpURL {
get {
@ -713,7 +703,7 @@ internal static string UploadersConfigForm_AmazonS3StorageClassHelpURL {
}
/// <summary>
/// An argument with the same name already exists.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to An argument with the same name already exists..
/// </summary>
internal static string UploadersConfigForm_An_argument_with_the_same_name_already_exists {
get {
@ -722,7 +712,7 @@ internal static string UploadersConfigForm_An_argument_with_the_same_name_alread
}
/// <summary>
/// Box refresh folders list failed과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Box refresh folders list failed.
/// </summary>
internal static string UploadersConfigForm_BoxListFolders_Box_refresh_folders_list_failed {
get {
@ -731,7 +721,7 @@ internal static string UploadersConfigForm_BoxListFolders_Box_refresh_folders_li
}
/// <summary>
/// Key file does not exist.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Key file does not exist..
/// </summary>
internal static string UploadersConfigForm_ConnectSFTPAccount_Key_file_not_found {
get {
@ -740,7 +730,7 @@ internal static string UploadersConfigForm_ConnectSFTPAccount_Key_file_not_found
}
/// <summary>
/// &quot;Destination type&quot; must be configured.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to &quot;Destination type&quot; must be configured..
/// </summary>
internal static string UploadersConfigForm_eiCustomUploaders_ExportRequested_DestinationTypeMustBeConfigured {
get {
@ -750,7 +740,7 @@ internal static string UploadersConfigForm_eiCustomUploaders_ExportRequested_Des
}
/// <summary>
/// &quot;Request URL&quot; must be configured.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to &quot;Request URL&quot; must be configured..
/// </summary>
internal static string UploadersConfigForm_eiCustomUploaders_ExportRequested_RequestURLMustBeConfigured {
get {
@ -759,7 +749,7 @@ internal static string UploadersConfigForm_eiCustomUploaders_ExportRequested_Req
}
/// <summary>
/// Error과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Error.
/// </summary>
internal static string UploadersConfigForm_Error {
get {
@ -768,7 +758,7 @@ internal static string UploadersConfigForm_Error {
}
/// <summary>
/// FTP client only supports FTP or FTPS.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to FTP client only supports FTP or FTPS..
/// </summary>
internal static string UploadersConfigForm_FTPOpenClient_FTP_client_only_supports_FTP_or_FTPS_ {
get {
@ -777,7 +767,7 @@ internal static string UploadersConfigForm_FTPOpenClient_FTP_client_only_support
}
/// <summary>
/// Unable to find valid FTP account.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Unable to find valid FTP account..
/// </summary>
internal static string UploadersConfigForm_FTPOpenClient_Unable_to_find_valid_FTP_account_ {
get {
@ -786,7 +776,7 @@ internal static string UploadersConfigForm_FTPOpenClient_Unable_to_find_valid_FT
}
/// <summary>
/// Authentication required.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Authentication required..
/// </summary>
internal static string UploadersConfigForm_ListFolders_Authentication_required_ {
get {
@ -795,7 +785,7 @@ internal static string UploadersConfigForm_ListFolders_Authentication_required_
}
/// <summary>
/// Invalid device name과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Invalid device name.
/// </summary>
internal static string UploadersConfigForm_LoadSettings_Invalid_device_name {
get {
@ -804,7 +794,7 @@ internal static string UploadersConfigForm_LoadSettings_Invalid_device_name {
}
/// <summary>
/// Parent album path e.g.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Parent album path e.g..
/// </summary>
internal static string UploadersConfigForm_LoadSettings_Parent_album_path_e_g_ {
get {
@ -813,7 +803,7 @@ internal static string UploadersConfigForm_LoadSettings_Parent_album_path_e_g_ {
}
/// <summary>
/// Selected folder:과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Selected folder:.
/// </summary>
internal static string UploadersConfigForm_LoadSettings_Selected_folder_ {
get {
@ -822,7 +812,7 @@ internal static string UploadersConfigForm_LoadSettings_Selected_folder_ {
}
/// <summary>
/// Login failed.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Login failed..
/// </summary>
internal static string UploadersConfigForm_Login_failed {
get {
@ -831,7 +821,7 @@ internal static string UploadersConfigForm_Login_failed {
}
/// <summary>
/// Login successful.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Login successful..
/// </summary>
internal static string UploadersConfigForm_Login_successful {
get {
@ -840,7 +830,7 @@ internal static string UploadersConfigForm_Login_successful {
}
/// <summary>
/// Click refresh button과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Click refresh button.
/// </summary>
internal static string UploadersConfigForm_MegaConfigureTab_Click_refresh_button {
get {
@ -849,7 +839,7 @@ internal static string UploadersConfigForm_MegaConfigureTab_Click_refresh_button
}
/// <summary>
/// Configured과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Configured.
/// </summary>
internal static string UploadersConfigForm_MegaConfigureTab_Configured {
get {
@ -858,7 +848,7 @@ internal static string UploadersConfigForm_MegaConfigureTab_Configured {
}
/// <summary>
/// Invalid authentication과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Invalid authentication.
/// </summary>
internal static string UploadersConfigForm_MegaConfigureTab_Invalid_authentication {
get {
@ -867,7 +857,7 @@ internal static string UploadersConfigForm_MegaConfigureTab_Invalid_authenticati
}
/// <summary>
/// Not configured과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Not configured.
/// </summary>
internal static string UploadersConfigForm_MegaConfigureTab_Not_configured {
get {
@ -876,7 +866,7 @@ internal static string UploadersConfigForm_MegaConfigureTab_Not_configured {
}
/// <summary>
/// Refresh authorization is not supported.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Refresh authorization is not supported..
/// </summary>
internal static string UploadersConfigForm_oAuthJira_RefreshButtonClicked_Refresh_authorization_is_not_supported_ {
get {
@ -886,7 +876,7 @@ internal static string UploadersConfigForm_oAuthJira_RefreshButtonClicked_Refres
}
/// <summary>
/// Querying folders...과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Querying folders....
/// </summary>
internal static string UploadersConfigForm_OneDriveAddFolder_Querying_folders___ {
get {
@ -895,7 +885,7 @@ internal static string UploadersConfigForm_OneDriveAddFolder_Querying_folders___
}
/// <summary>
/// {0} successfully created.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to {0} successfully created..
/// </summary>
internal static string UploadersConfigForm_PhotobucketCreateAlbum__0__successfully_created_ {
get {
@ -904,7 +894,7 @@ internal static string UploadersConfigForm_PhotobucketCreateAlbum__0__successful
}
/// <summary>
/// Remove all custom uploaders?과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Remove all custom uploaders?.
/// </summary>
internal static string UploadersConfigForm_Remove_all_custom_uploaders_Confirmation {
get {
@ -913,7 +903,7 @@ internal static string UploadersConfigForm_Remove_all_custom_uploaders_Confirmat
}
/// <summary>
/// SendSpace registration과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to SendSpace registration.
/// </summary>
internal static string UploadersConfigForm_SendSpaceRegister_SendSpace_Registration___ {
get {
@ -922,7 +912,7 @@ internal static string UploadersConfigForm_SendSpaceRegister_SendSpace_Registrat
}
/// <summary>
/// Error: Result is empty.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Error: Result is empty..
/// </summary>
internal static string UploadersConfigForm_TestCustomUploader_Error__Result_is_empty_ {
get {
@ -931,7 +921,7 @@ internal static string UploadersConfigForm_TestCustomUploader_Error__Result_is_e
}
/// <summary>
/// Connected!과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Connected!.
/// </summary>
internal static string UploadersConfigForm_TestFTPAccount_Connected_ {
get {
@ -940,8 +930,8 @@ internal static string UploadersConfigForm_TestFTPAccount_Connected_ {
}
/// <summary>
/// Connected!
///Created folders:과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Connected!
///Created folders:.
/// </summary>
internal static string UploadersConfigForm_TestFTPAccount_Connected_Created_folders {
get {
@ -950,7 +940,7 @@ internal static string UploadersConfigForm_TestFTPAccount_Connected_Created_fold
}
/// <summary>
/// Logged in.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Logged in..
/// </summary>
internal static string UploadersConfigForm_UpdatePastebinStatus_LoggedIn {
get {
@ -959,7 +949,7 @@ internal static string UploadersConfigForm_UpdatePastebinStatus_LoggedIn {
}
/// <summary>
/// Not logged in.과(와) 유사한 지역화된 문자열을 찾습니다.
/// Looks up a localized string similar to Not logged in..
/// </summary>
internal static string UploadersConfigForm_UpdatePastebinStatus_NotLoggedIn {
get {
@ -968,7 +958,7 @@ internal static string UploadersConfigForm_UpdatePastebinStatus_NotLoggedIn {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Vgyme {
get {
@ -978,7 +968,7 @@ internal static System.Drawing.Icon Vgyme {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon Yourls {
get {
@ -988,7 +978,7 @@ internal static System.Drawing.Icon Yourls {
}
/// <summary>
/// (아이콘)과(와) 유사한 System.Drawing.Icon 형식의 지역화된 리소스를 찾습니다.
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon YouTube {
get {

View file

@ -293,9 +293,6 @@ Created folders:</value>
<data name="puush" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Favicons\puush.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="CoinURL" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Favicons\CoinURL.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="Chevereto" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Favicons\Chevereto.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>

View file

@ -136,7 +136,6 @@
<Compile Include="FileUploaders\PlikSettings.cs" />
<Compile Include="FileUploaders\Puush.cs" />
<Compile Include="FileUploaders\Sul.cs" />
<Compile Include="FileUploaders\Dropfile.cs" />
<Compile Include="FileUploaders\Lambda.cs" />
<Compile Include="FileUploaders\Copy.cs" />
<Compile Include="FileUploaders\Email.cs" />
@ -334,7 +333,6 @@
<Compile Include="TextUploaders\Paste2.cs" />
<Compile Include="TextUploaders\Pastebin_ca.cs" />
<Compile Include="TextUploaders\Pastebin.cs" />
<Compile Include="TextUploaders\Pastee.cs" />
<Compile Include="TextUploaders\Slexy.cs" />
<Compile Include="BaseUploaders\Uploader.cs" />
<Compile Include="BaseUploaders\URLShortener.cs" />
@ -344,7 +342,6 @@
<Compile Include="URLShorteners\TwoGPURLShortener.cs" />
<Compile Include="URLShorteners\AdFlyURLShortener.cs" />
<Compile Include="URLShorteners\BitlyURLShortener.cs" />
<Compile Include="URLShorteners\CoinURLShortener.cs" />
<Compile Include="URLShorteners\CustomURLShortener.cs" />
<Compile Include="URLShorteners\IsgdURLShortener.cs" />
<Compile Include="URLShorteners\NlcmURLShortener.cs" />
@ -897,7 +894,6 @@
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="APIKeys\jira_sharex.pfx" />
<None Include="app.config" />
<None Include="Favicons\Yourls.ico" />
<None Include="Favicons\Box.ico" />
<None Include="Favicons\Bitly.ico" />
@ -924,7 +920,6 @@
<None Include="Favicons\OneDrive.ico" />
<None Include="Favicons\Chevereto.png" />
<None Include="Favicons\Hastebin.png" />
<None Include="Favicons\CoinURL.ico" />
<None Include="Favicons\Lambda.ico" />
<None Include="Favicons\Mega.ico" />
<None Include="Favicons\OneTimeSecret.ico" />

View file

@ -1,80 +0,0 @@
#region License Information (GPL v3)
/*
ShareX - A program that allows you to take screenshots and share any file type
Copyright (c) 2007-2018 ShareX Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Optionally you can also view the license at <http://www.gnu.org/licenses/>.
*/
#endregion License Information (GPL v3)
using System.Collections.Generic;
namespace ShareX.UploadersLib.TextUploaders
{
public class PasteeTextUploaderService : TextUploaderService
{
public override TextDestination EnumValue { get; } = TextDestination.Pastee;
public override bool CheckConfig(UploadersConfig config) => true;
public override GenericUploader CreateUploader(UploadersConfig config, TaskReferenceHelper taskInfo)
{
return new Pastee
{
Lexer = taskInfo.TextFormat
};
}
}
public sealed class Pastee : TextUploader
{
public string Lexer { get; set; }
public int TimeToLive { get; set; } // Days
public string Key { get; set; }
public Pastee()
{
Lexer = "text";
TimeToLive = 30;
}
public override UploadResult UploadText(string text, string fileName)
{
UploadResult ur = new UploadResult();
if (!string.IsNullOrEmpty(text))
{
Dictionary<string, string> arguments = new Dictionary<string, string>();
arguments.Add("lexer", Lexer);
arguments.Add("content", text);
arguments.Add("ttl", (TimeToLive * 86400).ToString());
if (!string.IsNullOrEmpty(Key))
{
arguments.Add("encrypt", "checked");
arguments.Add("key", Key);
}
ur.URL = SendRequestMultiPart("https://pastee.org/submit", arguments, responseType: ResponseType.RedirectionURL);
}
return ur;
}
}
}

View file

@ -1,80 +0,0 @@
#region License Information (GPL v3)
/*
ShareX - A program that allows you to take screenshots and share any file type
Copyright (c) 2007-2018 ShareX Team
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Optionally you can also view the license at <http://www.gnu.org/licenses/>.
*/
#endregion License Information (GPL v3)
// Credits: https://github.com/DanielMcAssey
using ShareX.UploadersLib.Properties;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace ShareX.UploadersLib.URLShorteners
{
public class CoinURLShortenerService : URLShortenerService
{
public override UrlShortenerType EnumValue { get; } = UrlShortenerType.CoinURL;
public override Icon ServiceIcon => Resources.CoinURL;
public override bool CheckConfig(UploadersConfig config)
{
return !string.IsNullOrEmpty(config.CoinURLUUID);
}
public override URLShortener CreateShortener(UploadersConfig config, TaskReferenceHelper taskInfo)
{
return new CoinURLShortener
{
UUID = config.CoinURLUUID
};
}
public override TabPage GetUploadersConfigTabPage(UploadersConfigForm form) => form.tpCoinURL;
}
public sealed class CoinURLShortener : URLShortener
{
private const string API_ENDPOINT = "https://coinurl.com/api.php";
public string UUID { get; set; }
public override UploadResult ShortenURL(string url)
{
UploadResult result = new UploadResult { URL = url };
Dictionary<string, string> args = new Dictionary<string, string>();
args.Add("uuid", UUID);
args.Add("url", url);
string response = SendRequest(HttpMethod.GET, API_ENDPOINT, args);
if (!string.IsNullOrEmpty(response) && response != "error")
{
result.ShortenedURL = response;
}
return result;
}
}
}

View file

@ -425,12 +425,6 @@ public class UploadersConfig : SettingsBase<UploadersConfig>
#endregion adf.ly
#region coinurl.com
public string CoinURLUUID = "";
#endregion coinurl.com
#region polr
public string PolrAPIHostname = "";

View file

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.1.1.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<appSettings>
<!--AWSProfileName is used to reference an account that has been registered with the SDK.
If using AWS Toolkit for Visual Studio then this value is the same value shown in the AWS Explorer.
It is also possible to register an account using the <solution-dir>/packages/AWSSDK-X.X.X.X/tools/account-management.ps1 PowerShell script
that is bundled with the nuget package under the tools folder.
<add key="AWSProfileName" value="" />
-->
</appSettings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" /></startup></configuration>

View file

@ -64,7 +64,7 @@ public static string Title
string title = string.Format("ShareX {0}.{1}", version.Major, version.Minor);
if (version.Build > 0) title += "." + version.Build;
if (version.Revision > 0) title += "." + version.Revision;
if (Beta) title += " Beta";
if (Dev) title += " Dev";
if (Portable) title += " Portable";
return title;
}
@ -72,7 +72,7 @@ public static string Title
public static string TitleLong => $"{Title} ({Build})";
public static bool Beta { get; } = true;
public static bool Dev { get; } = true;
public static bool MultiInstance { get; private set; }
public static bool Portable { get; private set; }
public static bool PortableApps { get; private set; }
@ -286,7 +286,7 @@ private static void Run()
SettingManager.LoadInitialSettings();
Uploader.UpdateServicePointManager();
UpdateManager = new GitHubUpdateManager("ShareX", "ShareX", Beta, Portable);
UpdateManager = new GitHubUpdateManager("ShareX", "ShareX", Dev, Portable);
LanguageHelper.ChangeLanguage(Settings.Language);
@ -540,7 +540,7 @@ private static void DebugWriteFlags()
{
List<string> flags = new List<string>();
if (Beta) flags.Add(nameof(Beta));
if (Dev) flags.Add(nameof(Dev));
if (MultiInstance) flags.Add(nameof(MultiInstance));
if (Portable) flags.Add(nameof(Portable));
if (PortableApps) flags.Add(nameof(PortableApps));

View file

@ -33,6 +33,7 @@
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@ -104,29 +105,35 @@
<Reference Include="System.Data" />
<Reference Include="System.Design" />
<Reference Include="System.Drawing" />
<Reference Include="System.Runtime.WindowsRuntime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" Condition="'$(Configuration)' == 'WindowsStore' Or '$(Configuration)' == 'WindowsStoreDebug'">
<SpecificVersion>False</SpecificVersion>
<HintPath>$(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\System.Runtime.WindowsRuntime.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System.Speech" />
<Reference Include="System.Web" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="Windows, Version=255.255.255.255, Culture=neutral, processorArchitecture=MSIL" Condition="'$(Configuration)' == 'WindowsStore' Or '$(Configuration)' == 'WindowsStoreDebug'">
<SpecificVersion>False</SpecificVersion>
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\UnionMetadata\Facade\Windows.WinMD</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Windows.ApplicationModel.StartupTaskContract" Condition="'$(Configuration)' == 'WindowsStore' Or '$(Configuration)' == 'WindowsStoreDebug'">
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\References\10.0.15063.0\Windows.ApplicationModel.StartupTaskContract\1.0.0.0\Windows.ApplicationModel.StartupTaskContract.winmd</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Windows.Foundation.FoundationContract" Condition="'$(Configuration)' == 'WindowsStore' Or '$(Configuration)' == 'WindowsStoreDebug'">
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\References\10.0.15063.0\Windows.Foundation.FoundationContract\3.0.0.0\Windows.Foundation.FoundationContract.winmd</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
<Choose>
<When Condition="'$(Configuration)' == 'WindowsStore' Or '$(Configuration)' == 'WindowsStoreDebug'">
<ItemGroup>
<Reference Include="System.Runtime.WindowsRuntime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>$(MSBuildProgramFiles32)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5\System.Runtime.WindowsRuntime.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Windows, Version=255.255.255.255, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\UnionMetadata\Facade\Windows.WinMD</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Windows.ApplicationModel.StartupTaskContract">
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\References\10.0.15063.0\Windows.ApplicationModel.StartupTaskContract\1.0.0.0\Windows.ApplicationModel.StartupTaskContract.winmd</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Windows.Foundation.FoundationContract">
<HintPath>$(MSBuildProgramFiles32)\Windows Kits\10\References\10.0.15063.0\Windows.Foundation.FoundationContract\3.0.0.0\Windows.Foundation.FoundationContract.winmd</HintPath>
<Private>False</Private>
</Reference>
</ItemGroup>
</When>
</Choose>
<ItemGroup>
<Compile Include="CaptureHelpers\CaptureActiveMonitor.cs" />
<Compile Include="CaptureHelpers\CaptureActiveWindow.cs" />

View file

@ -704,7 +704,8 @@ public static void OpenScreenshotsFolder()
public static void OpenHistory()
{
HistoryForm historyForm = new HistoryForm(Program.HistoryFilePath, Program.Settings.HistoryMaxItemCount, Program.Settings.HistorySplitterDistance);
HistoryForm historyForm = new HistoryForm(Program.HistoryFilePath, Program.Settings.HistoryMaxItemCount, Program.Settings.HistorySplitterDistance,
filePath => UploadManager.UploadFile(filePath), filePath => AnnotateImageFromFile(filePath));
historyForm.SplitterDistanceChanged += splitterDistance => Program.Settings.HistorySplitterDistance = splitterDistance;
Program.Settings.HistoryWindowState.AutoHandleFormState(historyForm);
historyForm.Show();
@ -713,7 +714,8 @@ public static void OpenHistory()
public static void OpenImageHistory()
{
ImageHistoryForm imageHistoryForm = new ImageHistoryForm(Program.HistoryFilePath, Program.Settings.ImageHistoryViewMode,
Program.Settings.ImageHistoryThumbnailSize, Program.Settings.ImageHistoryMaxItemCount);
Program.Settings.ImageHistoryThumbnailSize, Program.Settings.ImageHistoryMaxItemCount,
filePath => UploadManager.UploadFile(filePath), filePath => AnnotateImageFromFile(filePath));
Program.Settings.ImageHistoryWindowState.AutoHandleFormState(imageHistoryForm);
imageHistoryForm.FormClosed += imageHistoryForm_FormClosed;
imageHistoryForm.Show();
@ -1591,7 +1593,7 @@ public static void DownloadAppVeyorBuild()
{
AppVeyorUpdateChecker updateChecker = new AppVeyorUpdateChecker()
{
IsBeta = Program.Beta,
IsBeta = Program.Dev,
IsPortable = Program.Portable,
Proxy = HelpersOptions.CurrentProxy.GetWebProxy()
};

View file

@ -340,8 +340,7 @@ private void CreateTaskReferenceHelper()
private void DoUploadJob()
{
if (Program.Settings.ShowUploadWarning && MessageBox.Show(
Resources.UploadTask_DoUploadJob_First_time_upload_warning_text,
if (Program.Settings.ShowUploadWarning && MessageBox.Show(Resources.UploadTask_DoUploadJob_First_time_upload_warning_text,
"ShareX - " + Resources.UploadTask_DoUploadJob_First_time_upload_warning,
MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.No)
{

View file

@ -6,14 +6,6 @@
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="Languages" />
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.1.2" newVersion="4.1.1.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<uri>