Added export all custom uploaders button which will be only visible in debug build

This commit is contained in:
Jaex 2015-12-21 17:44:28 +02:00
parent 553f38ab5a
commit 1539d9148d
5 changed files with 527 additions and 458 deletions

View file

@ -57,7 +57,7 @@ public ExportImportControl()
InitializeComponent();
}
private string Serialize(object obj)
public string Serialize(object obj)
{
if (obj != null)
{
@ -142,7 +142,7 @@ private void tsmiExportUpload_Click(object sender, EventArgs e)
}
}
private object Deserialize(string json)
public object Deserialize(string json)
{
try
{

File diff suppressed because it is too large Load diff

View file

@ -435,29 +435,6 @@ public void LoadSettings()
}
}
// Custom uploaders
lbCustomUploaderList.Items.Clear();
if (Config.CustomUploadersList == null)
{
Config.CustomUploadersList = new List<CustomUploaderItem>();
}
else
{
foreach (CustomUploaderItem customUploader in Config.CustomUploadersList)
{
lbCustomUploaderList.Items.Add(customUploader.Name);
}
PrepareCustomUploaderList();
}
cbCustomUploaderRequestType.Items.AddRange(Enum.GetNames(typeof(CustomUploaderRequestType)));
cbCustomUploaderResponseType.Items.AddRange(Helpers.GetLocalizedEnumDescriptions<ResponseType>());
CustomUploaderClearFields();
// Jira
txtJiraHost.Text = Config.JiraHost;
@ -594,7 +571,7 @@ public void LoadSettings()
#endregion File uploaders
#region URL Shorteners
#region URL shorteners
// Google URL Shortener
@ -636,9 +613,9 @@ public void LoadSettings()
txtPolrAPIHostname.Text = Config.PolrAPIHostname;
txtPolrAPIKey.Text = Config.PolrAPIKey;
#endregion URL Shorteners
#endregion URL shorteners
#region Other Services
#region Other uploaders
// Twitter
@ -659,7 +636,34 @@ public void LoadSettings()
cbTwitterSkipMessageBox.Checked = Config.TwitterSkipMessageBox;
txtTwitterDefaultMessage.Text = Config.TwitterDefaultMessage;
#endregion Other Services
// Custom uploaders
lbCustomUploaderList.Items.Clear();
if (Config.CustomUploadersList == null)
{
Config.CustomUploadersList = new List<CustomUploaderItem>();
}
else
{
foreach (CustomUploaderItem customUploader in Config.CustomUploadersList)
{
lbCustomUploaderList.Items.Add(customUploader.Name);
}
PrepareCustomUploaderList();
}
#if DEBUG
btnCustomUploadersExportAll.Visible = true;
#endif
cbCustomUploaderRequestType.Items.AddRange(Enum.GetNames(typeof(CustomUploaderRequestType)));
cbCustomUploaderResponseType.Items.AddRange(Helpers.GetLocalizedEnumDescriptions<ResponseType>());
CustomUploaderClearFields();
#endregion Other uploaders
}
#region Image Uploaders
@ -2645,6 +2649,11 @@ private void eiCustomUploaders_ImportRequested(object obj)
AddCustomUploader(obj as CustomUploaderItem);
}
private void btnCustomUploadersExportAll_Click(object sender, EventArgs e)
{
CustomUploaderExportAll();
}
private void btnCustomUploaderClearUploaders_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Remove all custom uploaders?", "ShareX", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

View file

@ -1804,6 +1804,33 @@ store.book[0].title</value>
<data name="&gt;&gt;cbCustomUploaderURLShortener.ZOrder" xml:space="preserve">
<value>14</value>
</data>
<data name="btnCustomUploadersExportAll.Location" type="System.Drawing.Point, System.Drawing">
<value>200, 280</value>
</data>
<data name="btnCustomUploadersExportAll.Size" type="System.Drawing.Size, System.Drawing">
<value>40, 24</value>
</data>
<data name="btnCustomUploadersExportAll.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="btnCustomUploadersExportAll.Text" xml:space="preserve">
<value>All...</value>
</data>
<data name="btnCustomUploadersExportAll.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;btnCustomUploadersExportAll.Name" xml:space="preserve">
<value>btnCustomUploadersExportAll</value>
</data>
<data name="&gt;&gt;btnCustomUploadersExportAll.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnCustomUploadersExportAll.Parent" xml:space="preserve">
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploadersExportAll.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnCustomUploaderClearUploaders.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@ -1829,7 +1856,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploaderClearUploaders.ZOrder" xml:space="preserve">
<value>0</value>
<value>1</value>
</data>
<data name="eiCustomUploaders.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 280</value>
@ -1850,7 +1877,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;eiCustomUploaders.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="lbCustomUploaderList.IntegralHeight" type="System.Boolean, mscorlib">
<value>False</value>
@ -1874,7 +1901,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;lbCustomUploaderList.ZOrder" xml:space="preserve">
<value>2</value>
<value>3</value>
</data>
<data name="btnCustomUploaderClear.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -1901,7 +1928,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploaderClear.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="btnCustomUploaderRemove.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -1928,7 +1955,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploaderRemove.ZOrder" xml:space="preserve">
<value>4</value>
<value>5</value>
</data>
<data name="btnCustomUploaderUpdate.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -1955,7 +1982,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploaderUpdate.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="txtCustomUploaderName.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 16</value>
@ -1976,7 +2003,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;txtCustomUploaderName.ZOrder" xml:space="preserve">
<value>6</value>
<value>7</value>
</data>
<data name="btnCustomUploaderAdd.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
@ -2003,7 +2030,7 @@ store.book[0].title</value>
<value>gbCustomUploaders</value>
</data>
<data name="&gt;&gt;btnCustomUploaderAdd.ZOrder" xml:space="preserve">
<value>7</value>
<value>8</value>
</data>
<data name="gbCustomUploaders.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 8</value>
@ -12838,9 +12865,6 @@ Using an encrypted library disables sharing.</value>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>1000, 557</value>
</data>
<data name="$this.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="$this.MinimumSize" type="System.Drawing.Size, System.Drawing">
<value>840, 572</value>
</data>
@ -12859,6 +12883,72 @@ Using an encrypted library disables sharing.</value>
<data name="&gt;&gt;ttHelpTip.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolTip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lvRegexpsColumn.Name" xml:space="preserve">
<value>lvRegexpsColumn</value>
</data>
<data name="&gt;&gt;lvRegexpsColumn.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsName.Name" xml:space="preserve">
<value>chCustomUploaderArgumentsName</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsValue.Name" xml:space="preserve">
<value>chCustomUploaderArgumentsValue</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsValue.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersName.Name" xml:space="preserve">
<value>chCustomUploaderHeadersName</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersValue.Name" xml:space="preserve">
<value>chCustomUploaderHeadersValue</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersValue.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chGoogleDriveTitle.Name" xml:space="preserve">
<value>chGoogleDriveTitle</value>
</data>
<data name="&gt;&gt;chGoogleDriveTitle.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chGoogleDriveDescription.Name" xml:space="preserve">
<value>chGoogleDriveDescription</value>
</data>
<data name="&gt;&gt;chGoogleDriveDescription.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chBoxFoldersName.Name" xml:space="preserve">
<value>chBoxFoldersName</value>
</data>
<data name="&gt;&gt;chBoxFoldersName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibraryName.Name" xml:space="preserve">
<value>colSeafileLibraryName</value>
</data>
<data name="&gt;&gt;colSeafileLibraryName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibrarySize.Name" xml:space="preserve">
<value>colSeafileLibrarySize</value>
</data>
<data name="&gt;&gt;colSeafileLibrarySize.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibraryEncrypted.Name" xml:space="preserve">
<value>colSeafileLibraryEncrypted</value>
</data>
<data name="&gt;&gt;colSeafileLibraryEncrypted.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chImgurID.Name" xml:space="preserve">
<value>chImgurID</value>
</data>
@ -12895,72 +12985,6 @@ Using an encrypted library disables sharing.</value>
<data name="&gt;&gt;chPicasaDescription.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chGoogleDriveTitle.Name" xml:space="preserve">
<value>chGoogleDriveTitle</value>
</data>
<data name="&gt;&gt;chGoogleDriveTitle.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chGoogleDriveDescription.Name" xml:space="preserve">
<value>chGoogleDriveDescription</value>
</data>
<data name="&gt;&gt;chGoogleDriveDescription.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chBoxFoldersName.Name" xml:space="preserve">
<value>chBoxFoldersName</value>
</data>
<data name="&gt;&gt;chBoxFoldersName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;lvRegexpsColumn.Name" xml:space="preserve">
<value>lvRegexpsColumn</value>
</data>
<data name="&gt;&gt;lvRegexpsColumn.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsName.Name" xml:space="preserve">
<value>chCustomUploaderArgumentsName</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsValue.Name" xml:space="preserve">
<value>chCustomUploaderArgumentsValue</value>
</data>
<data name="&gt;&gt;chCustomUploaderArgumentsValue.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersName.Name" xml:space="preserve">
<value>chCustomUploaderHeadersName</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersValue.Name" xml:space="preserve">
<value>chCustomUploaderHeadersValue</value>
</data>
<data name="&gt;&gt;chCustomUploaderHeadersValue.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibraryName.Name" xml:space="preserve">
<value>colSeafileLibraryName</value>
</data>
<data name="&gt;&gt;colSeafileLibraryName.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibrarySize.Name" xml:space="preserve">
<value>colSeafileLibrarySize</value>
</data>
<data name="&gt;&gt;colSeafileLibrarySize.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;colSeafileLibraryEncrypted.Name" xml:space="preserve">
<value>colSeafileLibraryEncrypted</value>
</data>
<data name="&gt;&gt;colSeafileLibraryEncrypted.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>UploadersConfigForm</value>
</data>

View file

@ -1660,6 +1660,32 @@ private void CustomUploaderClearFields()
LoadCustomUploader(new CustomUploaderItem());
}
private void CustomUploaderExportAll()
{
if (Config.CustomUploadersList != null)
{
for (int i = 0; i < lbCustomUploaderList.Items.Count; i++)
{
lbCustomUploaderList.SelectedIndex = i;
UpdateCustomUploader();
}
using (FolderSelectDialog fsd = new FolderSelectDialog())
{
if (fsd.ShowDialog())
{
foreach (CustomUploaderItem item in Config.CustomUploadersList)
{
string json = eiCustomUploaders.Serialize(item);
string filename = item.Name.Replace("(", "").Replace(")", "") + ".json";
string filepath = Path.Combine(fsd.FileName, filename);
File.WriteAllText(filepath, json, Encoding.UTF8);
}
}
}
}
}
private void CustomUploaderFixSelectedUploader(int removedIndex)
{
if (Config.CustomImageUploaderSelected == removedIndex) Config.CustomImageUploaderSelected = 0;