Use DataGridView for regex list

This commit is contained in:
Jaex 2019-02-04 16:50:39 +03:00
parent 6a1453118a
commit a273eced9c
3 changed files with 176 additions and 368 deletions

View file

@ -36,6 +36,8 @@ private void InitializeComponent()
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
this.tscResponseText = new System.Windows.Forms.ToolStripContainer();
this.txtResponseText = new System.Windows.Forms.TextBox();
this.tsResponseText = new System.Windows.Forms.ToolStrip();
@ -69,7 +71,11 @@ private void InitializeComponent()
this.tcCustomUploader = new System.Windows.Forms.TabControl();
this.tpRequest = new System.Windows.Forms.TabPage();
this.dgvHeaders = new System.Windows.Forms.DataGridView();
this.cHeadersName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cHeadersValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgvParameters = new System.Windows.Forms.DataGridView();
this.cParametersName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cParametersValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.lblHeaders = new System.Windows.Forms.Label();
this.lblParameters = new System.Windows.Forms.Label();
this.pRequestURL = new System.Windows.Forms.Panel();
@ -81,6 +87,8 @@ private void InitializeComponent()
this.lblBody = new System.Windows.Forms.Label();
this.pBodyArguments = new System.Windows.Forms.Panel();
this.dgvArguments = new System.Windows.Forms.DataGridView();
this.cArgumentsName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cArgumentsValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.lblFileFormName = new System.Windows.Forms.Label();
this.txtFileFormName = new System.Windows.Forms.TextBox();
this.pBodyData = new System.Windows.Forms.Panel();
@ -107,20 +115,13 @@ private void InitializeComponent()
this.lblJsonPath = new System.Windows.Forms.Label();
this.txtJsonPath = new System.Windows.Forms.TextBox();
this.tpXmlParse = new System.Windows.Forms.TabPage();
this.btnXmlSyntaxAdd = new System.Windows.Forms.Button();
this.btnXmlAddSyntax = new System.Windows.Forms.Button();
this.btnXPathHelp = new System.Windows.Forms.Button();
this.lblXPathExample = new System.Windows.Forms.Label();
this.lblXPath = new System.Windows.Forms.Label();
this.txtXPath = new System.Windows.Forms.TextBox();
this.tpRegexParse = new System.Windows.Forms.TabPage();
this.btnRegexHelp = new System.Windows.Forms.Button();
this.btnRegexAddSyntax = new System.Windows.Forms.Button();
this.txtRegex = new System.Windows.Forms.TextBox();
this.btnRegexUpdate = new System.Windows.Forms.Button();
this.btnRegexAdd = new System.Windows.Forms.Button();
this.btnRegexRemove = new System.Windows.Forms.Button();
this.lvRegexList = new ShareX.HelpersLib.MyListView();
this.chRegex = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.tpTest = new System.Windows.Forms.TabPage();
this.tcTest = new System.Windows.Forms.TabControl();
this.tpResult = new System.Windows.Forms.TabPage();
@ -136,12 +137,8 @@ private void InitializeComponent()
this.cbURLSharingService = new System.Windows.Forms.ComboBox();
this.btnURLSharingServiceTest = new System.Windows.Forms.Button();
this.ttHelpTip = new System.Windows.Forms.ToolTip(this.components);
this.cHeadersName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cHeadersValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cParametersName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cParametersValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cArgumentsName = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.cArgumentsValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.dgvRegex = new System.Windows.Forms.DataGridView();
this.cRegex = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.tscResponseText.ContentPanel.SuspendLayout();
this.tscResponseText.TopToolStripPanel.SuspendLayout();
this.tscResponseText.SuspendLayout();
@ -170,6 +167,7 @@ private void InitializeComponent()
this.tpResult.SuspendLayout();
this.pResult.SuspendLayout();
this.tpResponseText.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dgvRegex)).BeginInit();
this.SuspendLayout();
//
// tscResponseText
@ -465,6 +463,19 @@ private void InitializeComponent()
this.dgvHeaders.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvHeaders_CellValueChanged);
this.dgvHeaders.EditingControlShowing += new System.Windows.Forms.DataGridViewEditingControlShowingEventHandler(this.dgv_EditingControlShowing);
//
// cHeadersName
//
resources.ApplyResources(this.cHeadersName, "cHeadersName");
this.cHeadersName.Name = "cHeadersName";
this.cHeadersName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cHeadersValue
//
this.cHeadersValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cHeadersValue, "cHeadersValue");
this.cHeadersValue.Name = "cHeadersValue";
this.cHeadersValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// dgvParameters
//
this.dgvParameters.AllowUserToResizeRows = false;
@ -501,6 +512,19 @@ private void InitializeComponent()
this.dgvParameters.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvParameters_CellValueChanged);
this.dgvParameters.EditingControlShowing += new System.Windows.Forms.DataGridViewEditingControlShowingEventHandler(this.dgv_EditingControlShowing);
//
// cParametersName
//
resources.ApplyResources(this.cParametersName, "cParametersName");
this.cParametersName.Name = "cParametersName";
this.cParametersName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cParametersValue
//
this.cParametersValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cParametersValue, "cParametersValue");
this.cParametersValue.Name = "cParametersValue";
this.cParametersValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// lblHeaders
//
resources.ApplyResources(this.lblHeaders, "lblHeaders");
@ -602,6 +626,19 @@ private void InitializeComponent()
this.dgvArguments.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvArguments_CellValueChanged);
this.dgvArguments.EditingControlShowing += new System.Windows.Forms.DataGridViewEditingControlShowingEventHandler(this.dgv_EditingControlShowing);
//
// cArgumentsName
//
resources.ApplyResources(this.cArgumentsName, "cArgumentsName");
this.cArgumentsName.Name = "cArgumentsName";
this.cArgumentsName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cArgumentsValue
//
this.cArgumentsValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cArgumentsValue, "cArgumentsValue");
this.cArgumentsValue.Name = "cArgumentsValue";
this.cArgumentsValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// lblFileFormName
//
resources.ApplyResources(this.lblFileFormName, "lblFileFormName");
@ -784,7 +821,7 @@ private void InitializeComponent()
//
// tpXmlParse
//
this.tpXmlParse.Controls.Add(this.btnXmlSyntaxAdd);
this.tpXmlParse.Controls.Add(this.btnXmlAddSyntax);
this.tpXmlParse.Controls.Add(this.btnXPathHelp);
this.tpXmlParse.Controls.Add(this.lblXPathExample);
this.tpXmlParse.Controls.Add(this.lblXPath);
@ -793,12 +830,12 @@ private void InitializeComponent()
this.tpXmlParse.Name = "tpXmlParse";
this.tpXmlParse.UseVisualStyleBackColor = true;
//
// btnXmlSyntaxAdd
// btnXmlAddSyntax
//
resources.ApplyResources(this.btnXmlSyntaxAdd, "btnXmlSyntaxAdd");
this.btnXmlSyntaxAdd.Name = "btnXmlSyntaxAdd";
this.btnXmlSyntaxAdd.UseVisualStyleBackColor = true;
this.btnXmlSyntaxAdd.Click += new System.EventHandler(this.btnCustomUploaderXmlSyntaxAdd_Click);
resources.ApplyResources(this.btnXmlAddSyntax, "btnXmlAddSyntax");
this.btnXmlAddSyntax.Name = "btnXmlAddSyntax";
this.btnXmlAddSyntax.UseVisualStyleBackColor = true;
this.btnXmlAddSyntax.Click += new System.EventHandler(this.btnCustomUploaderXmlSyntaxAdd_Click);
//
// btnXPathHelp
//
@ -825,24 +862,12 @@ private void InitializeComponent()
//
// tpRegexParse
//
this.tpRegexParse.Controls.Add(this.btnRegexHelp);
this.tpRegexParse.Controls.Add(this.dgvRegex);
this.tpRegexParse.Controls.Add(this.btnRegexAddSyntax);
this.tpRegexParse.Controls.Add(this.txtRegex);
this.tpRegexParse.Controls.Add(this.btnRegexUpdate);
this.tpRegexParse.Controls.Add(this.btnRegexAdd);
this.tpRegexParse.Controls.Add(this.btnRegexRemove);
this.tpRegexParse.Controls.Add(this.lvRegexList);
resources.ApplyResources(this.tpRegexParse, "tpRegexParse");
this.tpRegexParse.Name = "tpRegexParse";
this.tpRegexParse.UseVisualStyleBackColor = true;
//
// btnRegexHelp
//
resources.ApplyResources(this.btnRegexHelp, "btnRegexHelp");
this.btnRegexHelp.Name = "btnRegexHelp";
this.btnRegexHelp.UseVisualStyleBackColor = true;
this.btnRegexHelp.Click += new System.EventHandler(this.btnCustomUploaderRegexHelp_Click);
//
// btnRegexAddSyntax
//
resources.ApplyResources(this.btnRegexAddSyntax, "btnRegexAddSyntax");
@ -850,53 +875,6 @@ private void InitializeComponent()
this.btnRegexAddSyntax.UseVisualStyleBackColor = true;
this.btnRegexAddSyntax.Click += new System.EventHandler(this.btnCustomUploaderRegexAddSyntax_Click);
//
// txtRegex
//
resources.ApplyResources(this.txtRegex, "txtRegex");
this.txtRegex.Name = "txtRegex";
this.txtRegex.TextChanged += new System.EventHandler(this.txtCustomUploaderRegexp_TextChanged);
//
// btnRegexUpdate
//
resources.ApplyResources(this.btnRegexUpdate, "btnRegexUpdate");
this.btnRegexUpdate.Name = "btnRegexUpdate";
this.btnRegexUpdate.UseVisualStyleBackColor = true;
this.btnRegexUpdate.Click += new System.EventHandler(this.btnCustomUploaderRegexpEdit_Click);
//
// btnRegexAdd
//
resources.ApplyResources(this.btnRegexAdd, "btnRegexAdd");
this.btnRegexAdd.Name = "btnRegexAdd";
this.btnRegexAdd.UseVisualStyleBackColor = true;
this.btnRegexAdd.Click += new System.EventHandler(this.btnCustomUploaderRegexpAdd_Click);
//
// btnRegexRemove
//
resources.ApplyResources(this.btnRegexRemove, "btnRegexRemove");
this.btnRegexRemove.Name = "btnRegexRemove";
this.btnRegexRemove.UseVisualStyleBackColor = true;
this.btnRegexRemove.Click += new System.EventHandler(this.btnCustomUploaderRegexpRemove_Click);
//
// lvRegexList
//
this.lvRegexList.AutoFillColumn = true;
this.lvRegexList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.chRegex});
this.lvRegexList.FullRowSelect = true;
this.lvRegexList.GridLines = true;
this.lvRegexList.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;
this.lvRegexList.HideSelection = false;
resources.ApplyResources(this.lvRegexList, "lvRegexList");
this.lvRegexList.MultiSelect = false;
this.lvRegexList.Name = "lvRegexList";
this.lvRegexList.UseCompatibleStateImageBehavior = false;
this.lvRegexList.View = System.Windows.Forms.View.Details;
this.lvRegexList.SelectedIndexChanged += new System.EventHandler(this.lvCustomUploaderRegexps_SelectedIndexChanged);
//
// chRegex
//
resources.ApplyResources(this.chRegex, "chRegex");
//
// tpTest
//
this.tpTest.Controls.Add(this.tcTest);
@ -1003,44 +981,47 @@ private void InitializeComponent()
this.ttHelpTip.UseAnimation = false;
this.ttHelpTip.UseFading = false;
//
// cHeadersName
// dgvRegex
//
resources.ApplyResources(this.cHeadersName, "cHeadersName");
this.cHeadersName.Name = "cHeadersName";
this.cHeadersName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.dgvRegex.AllowUserToResizeRows = false;
this.dgvRegex.BackgroundColor = System.Drawing.SystemColors.Window;
this.dgvRegex.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
dataGridViewCellStyle7.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
dataGridViewCellStyle7.Padding = new System.Windows.Forms.Padding(0, 2, 0, 2);
dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
this.dgvRegex.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
this.dgvRegex.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
this.dgvRegex.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
this.cRegex});
dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
dataGridViewCellStyle8.BackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle8.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
dataGridViewCellStyle8.ForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle8.Padding = new System.Windows.Forms.Padding(1, 0, 0, 0);
dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Window;
dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.ControlText;
dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
this.dgvRegex.DefaultCellStyle = dataGridViewCellStyle8;
this.dgvRegex.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
this.dgvRegex.GridColor = System.Drawing.SystemColors.ControlLight;
resources.ApplyResources(this.dgvRegex, "dgvRegex");
this.dgvRegex.MultiSelect = false;
this.dgvRegex.Name = "dgvRegex";
this.dgvRegex.RowHeadersVisible = false;
this.dgvRegex.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvRegex_CellValueChanged);
this.dgvRegex.SelectionChanged += new System.EventHandler(this.dgvRegex_SelectionChanged);
//
// cHeadersValue
// cRegex
//
this.cHeadersValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cHeadersValue, "cHeadersValue");
this.cHeadersValue.Name = "cHeadersValue";
this.cHeadersValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cParametersName
//
resources.ApplyResources(this.cParametersName, "cParametersName");
this.cParametersName.Name = "cParametersName";
this.cParametersName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cParametersValue
//
this.cParametersValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cParametersValue, "cParametersValue");
this.cParametersValue.Name = "cParametersValue";
this.cParametersValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cArgumentsName
//
resources.ApplyResources(this.cArgumentsName, "cArgumentsName");
this.cArgumentsName.Name = "cArgumentsName";
this.cArgumentsName.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// cArgumentsValue
//
this.cArgumentsValue.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cArgumentsValue, "cArgumentsValue");
this.cArgumentsValue.Name = "cArgumentsValue";
this.cArgumentsValue.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
this.cRegex.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
resources.ApplyResources(this.cRegex, "cRegex");
this.cRegex.Name = "cRegex";
this.cRegex.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
// CustomUploaderSettingsForm
//
@ -1105,12 +1086,12 @@ private void InitializeComponent()
this.tpXmlParse.ResumeLayout(false);
this.tpXmlParse.PerformLayout();
this.tpRegexParse.ResumeLayout(false);
this.tpRegexParse.PerformLayout();
this.tpTest.ResumeLayout(false);
this.tcTest.ResumeLayout(false);
this.tpResult.ResumeLayout(false);
this.pResult.ResumeLayout(false);
this.tpResponseText.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dgvRegex)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@ -1175,20 +1156,13 @@ private void InitializeComponent()
private System.Windows.Forms.Label lblJsonPath;
private System.Windows.Forms.TextBox txtJsonPath;
private System.Windows.Forms.TabPage tpXmlParse;
private System.Windows.Forms.Button btnXmlSyntaxAdd;
private System.Windows.Forms.Button btnXmlAddSyntax;
private System.Windows.Forms.Button btnXPathHelp;
private System.Windows.Forms.Label lblXPathExample;
private System.Windows.Forms.Label lblXPath;
private System.Windows.Forms.TextBox txtXPath;
private System.Windows.Forms.TabPage tpRegexParse;
private System.Windows.Forms.Button btnRegexHelp;
private System.Windows.Forms.Button btnRegexAddSyntax;
private System.Windows.Forms.TextBox txtRegex;
private System.Windows.Forms.Button btnRegexUpdate;
private System.Windows.Forms.Button btnRegexAdd;
private System.Windows.Forms.Button btnRegexRemove;
private HelpersLib.MyListView lvRegexList;
private System.Windows.Forms.ColumnHeader chRegex;
private System.Windows.Forms.TabPage tpTest;
private System.Windows.Forms.TabControl tcTest;
private System.Windows.Forms.TabPage tpResult;
@ -1224,5 +1198,7 @@ private void InitializeComponent()
private System.Windows.Forms.DataGridViewTextBoxColumn cParametersValue;
private System.Windows.Forms.DataGridViewTextBoxColumn cArgumentsName;
private System.Windows.Forms.DataGridViewTextBoxColumn cArgumentsValue;
private System.Windows.Forms.DataGridView dgvRegex;
private System.Windows.Forms.DataGridViewTextBoxColumn cRegex;
}
}

View file

@ -207,13 +207,13 @@ private void CustomUploaderLoad(CustomUploaderItem uploader)
txtJsonPath.Text = "";
txtXPath.Text = "";
txtRegex.Text = "";
lvRegexList.Items.Clear();
dgvRegex.Rows.Clear();
if (uploader.RegexList != null)
{
foreach (string regexp in uploader.RegexList)
foreach (string regex in uploader.RegexList)
{
lvRegexList.Items.Add(regexp);
dgvRegex.Rows.Add(new string[] { regex });
}
}
@ -263,10 +263,8 @@ private void CustomUploaderUpdateRequestFormatState()
private void CustomUploaderUpdateResponseState()
{
btnJsonAddSyntax.Enabled = !string.IsNullOrEmpty(txtJsonPath.Text);
btnXmlSyntaxAdd.Enabled = !string.IsNullOrEmpty(txtXPath.Text);
btnRegexAdd.Enabled = !string.IsNullOrEmpty(txtRegex.Text);
btnRegexRemove.Enabled = btnRegexUpdate.Enabled = btnRegexAddSyntax.Enabled =
lvRegexList.SelectedItems.Count > 0;
btnXmlAddSyntax.Enabled = !string.IsNullOrEmpty(txtXPath.Text);
btnRegexAddSyntax.Enabled = dgvRegex.SelectedCells.Count > 0;
}
private void CustomUploaderRefreshNames()
@ -466,22 +464,40 @@ private void CheckDataGridView(DataGridView dgv)
private Dictionary<string, string> DataGridViewToDictionary(DataGridView dgv)
{
Dictionary<string, string> dic = new Dictionary<string, string>();
Dictionary<string, string> dictionary = new Dictionary<string, string>();
for (int i = 0; i < dgv.Rows.Count; i++)
{
DataGridViewRow row = dgv.Rows[i];
string name = row.Cells[0].Value?.ToString();
string key = row.Cells[0].Value?.ToString();
if (!string.IsNullOrEmpty(name) && !dic.ContainsKey(name))
if (!string.IsNullOrEmpty(key) && !dictionary.ContainsKey(key))
{
string value = row.Cells[1].Value?.ToString();
dic.Add(name, value);
dictionary.Add(key, value);
}
}
return dic;
return dictionary;
}
private List<string> DataGridViewToList(DataGridView dgv)
{
List<string> list = new List<string>();
for (int i = 0; i < dgv.Rows.Count; i++)
{
DataGridViewRow row = dgv.Rows[i];
string item = row.Cells[0].Value?.ToString();
if (!string.IsNullOrEmpty(item))
{
list.Add(item);
}
}
return list;
}
private void CustomUploaderDestinationTypeUpdate()
@ -1107,83 +1123,25 @@ private void btnCustomUploaderXmlSyntaxAdd_Click(object sender, EventArgs e)
}
}
private void txtCustomUploaderRegexp_TextChanged(object sender, EventArgs e)
private void dgvRegex_SelectionChanged(object sender, EventArgs e)
{
CustomUploaderUpdateResponseState();
}
private void btnCustomUploaderRegexpAdd_Click(object sender, EventArgs e)
private void dgvRegex_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
string regexp = txtRegex.Text;
CheckDataGridView(dgvRegex);
if (!string.IsNullOrEmpty(regexp))
{
lvRegexList.Items.Add(regexp);
txtRegex.Text = "";
txtRegex.Focus();
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null)
{
if (uploader.RegexList == null) uploader.RegexList = new List<string>();
uploader.RegexList.Add(regexp);
}
}
}
private void btnCustomUploaderRegexpRemove_Click(object sender, EventArgs e)
{
int index = lvRegexList.SelectedIndex;
if (index > -1)
{
lvRegexList.Items.RemoveAt(index);
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.RegexList.RemoveAt(index);
}
}
private void btnCustomUploaderRegexpEdit_Click(object sender, EventArgs e)
{
string regexp = txtRegex.Text;
if (!string.IsNullOrEmpty(regexp))
{
int index = lvRegexList.SelectedIndex;
if (index > -1)
{
lvRegexList.Items[index].Text = regexp;
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.RegexList[index] = regexp;
}
}
}
private void btnCustomUploaderRegexHelp_Click(object sender, EventArgs e)
{
URLHelpers.OpenURL("http://regexone.com");
}
private void lvCustomUploaderRegexps_SelectedIndexChanged(object sender, EventArgs e)
{
string regex = "";
if (lvRegexList.SelectedItems.Count > 0)
{
regex = lvRegexList.SelectedItems[0].Text;
}
txtRegex.Text = regex;
CustomUploaderUpdateResponseState();
CustomUploaderItem uploader = CustomUploaderGetSelected();
if (uploader != null) uploader.RegexList = DataGridViewToList(dgvRegex);
}
private void btnCustomUploaderRegexAddSyntax_Click(object sender, EventArgs e)
{
if (lvRegexList.SelectedIndices.Count > 0)
if (dgvRegex.SelectedCells.Count > 0)
{
int selectedIndex = lvRegexList.SelectedIndices[0];
string regex = lvRegexList.Items[selectedIndex].Text;
int selectedIndex = dgvRegex.SelectedCells[0].RowIndex;
string regex = dgvRegex.SelectedCells[0].Value?.ToString();
if (!string.IsNullOrEmpty(regex))
{

View file

@ -1866,31 +1866,31 @@ store.book[0].title</value>
<data name="&gt;&gt;tpJsonParse.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnXmlSyntaxAdd.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<data name="btnXmlAddSyntax.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnXmlSyntaxAdd.Location" type="System.Drawing.Point, System.Drawing">
<data name="btnXmlAddSyntax.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 128</value>
</data>
<data name="btnXmlSyntaxAdd.Size" type="System.Drawing.Size, System.Drawing">
<data name="btnXmlAddSyntax.Size" type="System.Drawing.Size, System.Drawing">
<value>232, 23</value>
</data>
<data name="btnXmlSyntaxAdd.TabIndex" type="System.Int32, mscorlib">
<data name="btnXmlAddSyntax.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="btnXmlSyntaxAdd.Text" xml:space="preserve">
<data name="btnXmlAddSyntax.Text" xml:space="preserve">
<value>Add syntax to URL field</value>
</data>
<data name="&gt;&gt;btnXmlSyntaxAdd.Name" xml:space="preserve">
<value>btnXmlSyntaxAdd</value>
<data name="&gt;&gt;btnXmlAddSyntax.Name" xml:space="preserve">
<value>btnXmlAddSyntax</value>
</data>
<data name="&gt;&gt;btnXmlSyntaxAdd.Type" xml:space="preserve">
<data name="&gt;&gt;btnXmlAddSyntax.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;btnXmlSyntaxAdd.Parent" xml:space="preserve">
<data name="&gt;&gt;btnXmlAddSyntax.Parent" xml:space="preserve">
<value>tpXmlParse</value>
</data>
<data name="&gt;&gt;btnXmlSyntaxAdd.ZOrder" xml:space="preserve">
<data name="&gt;&gt;btnXmlAddSyntax.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnXPathHelp.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
@ -2031,31 +2031,31 @@ store.book[0].title</value>
<data name="&gt;&gt;tpXmlParse.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="btnRegexHelp.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
<metadata name="cRegex.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="cRegex.HeaderText" xml:space="preserve">
<value>Regex</value>
</data>
<data name="btnRegexHelp.Location" type="System.Drawing.Point, System.Drawing">
<value>216, 6</value>
<data name="dgvRegex.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 8</value>
</data>
<data name="btnRegexHelp.Size" type="System.Drawing.Size, System.Drawing">
<value>24, 24</value>
<data name="dgvRegex.Size" type="System.Drawing.Size, System.Drawing">
<value>232, 112</value>
</data>
<data name="btnRegexHelp.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
<data name="dgvRegex.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="btnRegexHelp.Text" xml:space="preserve">
<value>?</value>
<data name="&gt;&gt;dgvRegex.Name" xml:space="preserve">
<value>dgvRegex</value>
</data>
<data name="&gt;&gt;btnRegexHelp.Name" xml:space="preserve">
<value>btnRegexHelp</value>
<data name="&gt;&gt;dgvRegex.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnRegexHelp.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;btnRegexHelp.Parent" xml:space="preserve">
<data name="&gt;&gt;dgvRegex.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;btnRegexHelp.ZOrder" xml:space="preserve">
<data name="&gt;&gt;dgvRegex.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="btnRegexAddSyntax.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
@ -2085,132 +2085,6 @@ store.book[0].title</value>
<data name="&gt;&gt;btnRegexAddSyntax.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="txtRegex.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 8</value>
</data>
<data name="txtRegex.Size" type="System.Drawing.Size, System.Drawing">
<value>200, 20</value>
</data>
<data name="txtRegex.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="&gt;&gt;txtRegex.Name" xml:space="preserve">
<value>txtRegex</value>
</data>
<data name="&gt;&gt;txtRegex.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;txtRegex.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;txtRegex.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="btnRegexUpdate.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnRegexUpdate.Location" type="System.Drawing.Point, System.Drawing">
<value>168, 32</value>
</data>
<data name="btnRegexUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 24</value>
</data>
<data name="btnRegexUpdate.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="btnRegexUpdate.Text" xml:space="preserve">
<value>Update</value>
</data>
<data name="&gt;&gt;btnRegexUpdate.Name" xml:space="preserve">
<value>btnRegexUpdate</value>
</data>
<data name="&gt;&gt;btnRegexUpdate.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;btnRegexUpdate.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;btnRegexUpdate.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="btnRegexAdd.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnRegexAdd.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 32</value>
</data>
<data name="btnRegexAdd.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 24</value>
</data>
<data name="btnRegexAdd.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
</data>
<data name="btnRegexAdd.Text" xml:space="preserve">
<value>Add</value>
</data>
<data name="&gt;&gt;btnRegexAdd.Name" xml:space="preserve">
<value>btnRegexAdd</value>
</data>
<data name="&gt;&gt;btnRegexAdd.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;btnRegexAdd.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;btnRegexAdd.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="btnRegexRemove.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="btnRegexRemove.Location" type="System.Drawing.Point, System.Drawing">
<value>88, 32</value>
</data>
<data name="btnRegexRemove.Size" type="System.Drawing.Size, System.Drawing">
<value>72, 24</value>
</data>
<data name="btnRegexRemove.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="btnRegexRemove.Text" xml:space="preserve">
<value>Remove</value>
</data>
<data name="&gt;&gt;btnRegexRemove.Name" xml:space="preserve">
<value>btnRegexRemove</value>
</data>
<data name="&gt;&gt;btnRegexRemove.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;btnRegexRemove.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;btnRegexRemove.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="chRegex.Width" type="System.Int32, mscorlib">
<value>227</value>
</data>
<data name="lvRegexList.Location" type="System.Drawing.Point, System.Drawing">
<value>8, 64</value>
</data>
<data name="lvRegexList.Size" type="System.Drawing.Size, System.Drawing">
<value>232, 56</value>
</data>
<data name="lvRegexList.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="&gt;&gt;lvRegexList.Name" xml:space="preserve">
<value>lvRegexList</value>
</data>
<data name="&gt;&gt;lvRegexList.Type" xml:space="preserve">
<value>ShareX.HelpersLib.MyListView, ShareX.HelpersLib, Version=12.4.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;lvRegexList.Parent" xml:space="preserve">
<value>tpRegexParse</value>
</data>
<data name="&gt;&gt;lvRegexList.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="tpRegexParse.Location" type="System.Drawing.Point, System.Drawing">
<value>4, 22</value>
</data>
@ -2727,18 +2601,6 @@ store.book[0].title</value>
<data name="&gt;&gt;tsmiExportAll.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;chRegex.Name" xml:space="preserve">
<value>chRegex</value>
</data>
<data name="&gt;&gt;chRegex.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;ttHelpTip.Name" xml:space="preserve">
<value>ttHelpTip</value>
</data>
<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;cHeadersName.Name" xml:space="preserve">
<value>cHeadersName</value>
</data>
@ -2775,6 +2637,18 @@ store.book[0].title</value>
<data name="&gt;&gt;cArgumentsValue.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;ttHelpTip.Name" xml:space="preserve">
<value>ttHelpTip</value>
</data>
<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;cRegex.Name" xml:space="preserve">
<value>cRegex</value>
</data>
<data name="&gt;&gt;cRegex.Type" xml:space="preserve">
<value>System.Windows.Forms.DataGridViewTextBoxColumn, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>CustomUploaderSettingsForm</value>
</data>