private void btnUndoSelect_Click(object sender, EventArgs e) { switch (mNextField) { case NextFieldToSave.VendorCode: if (mProductsToSave.Count > 0) { ProductToSave toSave = mProductsToSave.Pop(); txtVendorCode.Text = toSave.VendorCode; txtProductName.Text = toSave.ProductName; txtSize.Text = toSave.Size; txtBrandName.Text = toSave.BrandName; txtCasePrice.Text = toSave.CasePrice; txtCaseSize.Text = toSave.CaseSize; txtEachPrice.Text = toSave.EachPrice; } break; } if (mSelectedElements.Count > 0) { ElementSelect sel = mSelectedElements.Pop(); mNextField = sel.OldNextField; if (sel.Element != null) { sel.Element.Style = sel.OldStyle; } } ShowNextField(); }
private void btnSave_Click(object sender, EventArgs e) { ProductToSave toSave = new ProductToSave(); toSave.VendorCode = txtVendorCode.Text; toSave.ProductName = txtProductName.Text; toSave.Size = txtSize.Text; toSave.BrandName = txtBrandName.Text; toSave.CasePrice = txtCasePrice.Text; toSave.CaseSize = txtCaseSize.Text; toSave.EachPrice = txtEachPrice.Text; mProductsToSave.Push(toSave); SaveProductsToClipboard(); ElementSelect selectedElm = new ElementSelect(); selectedElm.OldNextField = NextFieldToSave.Done; selectedElm.OldStyle = null; selectedElm.Element = null; mSelectedElements.Push(selectedElm); InitNextProduct(); }
void Document_Click(object sender, HtmlElementEventArgs e) { e.BubbleEvent = false; HtmlElement elm = ((HtmlDocument)sender).GetElementFromPoint(e.ClientMousePosition); if (elm == null) { return; } string rawValue = elm.InnerText; if (string.IsNullOrEmpty(rawValue)) { return; } rawValue = rawValue.Trim(); bool extractedValue = false; NextFieldToSave oldNextField = mNextField; switch (mNextField) { case NextFieldToSave.VendorCode: txtVendorCode.Text = rawValue; mNextField = NextFieldToSave.ProductName; extractedValue = true; break; case NextFieldToSave.ProductName: if (rawValue.StartsWith(txtVendorCode.Text)) { rawValue = rawValue.Substring(txtVendorCode.Text.Length).Trim(); } string extractedSize = string.Empty; string numPre = "(^| )[0-9]{1,3}((\\.[0-9]{0,2})|(( |-)[0-9]{1,2}/[0-9]{1,2}))? ?"; string numPreOpt = "(" + numPre + ")?"; if (ReplaceRegex(ref rawValue, numPre + "((OZ\\.?)|(LBS?\\.?))", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPre + "\"", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPre + "#", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPreOpt + "QT\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPreOpt + "PT\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPreOpt + "GAL?\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPre + "((IN\\.?)|(COUNT))", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, numPre + "((SQ\\.FT\\.)|(SQ ?FT))", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, "(^| )MED\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, "(^| )SM\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, "(^| )SMALL ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, "(^| )LR?G\\.? ", ref extractedSize)) { } else if (ReplaceRegex(ref rawValue, "(^| )LARGE ", ref extractedSize)) { } txtProductName.Text = rawValue; if (chkExtractSize.Checked) { mNextField = NextFieldToSave.ProductSize; } else { txtSize.Text = extractedSize; if (chkExtractBrand.Checked) { mNextField = NextFieldToSave.BrandName; } else { txtBrandName.Text = string.Empty; mNextField = NextFieldToSave.Cost; } } extractedValue = true; break; case NextFieldToSave.ProductSize: txtSize.Text = rawValue; if (chkExtractBrand.Checked) { mNextField = NextFieldToSave.BrandName; } else { mNextField = NextFieldToSave.Cost; } extractedValue = true; break; case NextFieldToSave.BrandName: txtBrandName.Text = rawValue; mNextField = NextFieldToSave.Cost; extractedValue = true; break; case NextFieldToSave.Cost: if (rawValue.StartsWith("$")) { rawValue = rawValue.Substring(1); } rawValue = rawValue.ToUpper(); if (TryEachPrice(rawValue, "EA")) { } else if (TryEachPrice(rawValue, "EACH")) { } else if (TryCasePrice(rawValue, "CS")) { } else if (TryCasePrice(rawValue, "CASE")) { } else if (TryCasePrice(rawValue, "BX")) { } else if (TryCasePrice(rawValue, "BOX")) { } else if (TryCasePrice(rawValue, "PK")) { } else if (TryCasePrice(rawValue, "PACK")) { } else { txtEachPrice.Text = rawValue; txtCasePrice.Text = string.Empty; txtCaseSize.Text = string.Empty; } mNextField = NextFieldToSave.Done; extractedValue = true; break; default: break; } ShowNextField(); ElementSelect selectedElm = new ElementSelect(); selectedElm.OldNextField = oldNextField; if (extractedValue) { selectedElm.OldStyle = elm.Style; selectedElm.Element = elm; elm.Style = "color:black;background-color:#FFB060;font-weight:bold;font-size:10pt;"; } else { selectedElm.OldStyle = null; selectedElm.Element = null; } mSelectedElements.Push(selectedElm); btnUndoSelect.Enabled = true; }