// Constructor public Grepifyv2File(String strFile) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(strFile); XmlNodeList xmlExts = xmlDoc.GetElementsByTagName("Extensions"); if (xmlExts.Count == 1) { strExts = xmlExts[0].InnerText; } else { return; } XmlNodeList xmlChecks = xmlDoc.GetElementsByTagName("Check"); foreach (XmlNode xmlNode in xmlChecks) { Grepifyv2Check myCheck = new Grepifyv2Check(strExts); foreach (XmlNode xmlSubNode in xmlNode.ChildNodes) { if (xmlSubNode.Name.Equals("Regex")) { myCheck.strRegex = xmlSubNode.InnerText; } if (xmlSubNode.Name.Equals("Friendly")) { myCheck.strName = xmlSubNode.InnerText; } if (xmlSubNode.Name.Equals("Description")) { myCheck.strDescription = xmlSubNode.InnerText; } } // We need them all if (myCheck.strRegex != null && myCheck.strName != null && myCheck.strDescription != null) { // Check the regex is valid before adding it try { Match regexMatch = Regex.Match("Mooo", myCheck.strRegex); myChecks.Add(myCheck); } catch (ArgumentException rExcp) { MessageBox.Show("Regex looks broken, Regex is '" + myCheck.strRegex + "'. Error is '" + rExcp.Message + "' in file " + strFile + ".", "Regex error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }
public void UpdateList(string strPath, string strFile, string strExt, int intLineNumber, string strLine, string strRegex, Grepifyv2Check gv2Check) { if (this.InvokeRequired) { lstResults.Invoke(new MethodInvoker(() => { UpdateList(strPath, strFile, strExt, intLineNumber, strLine,strRegex, gv2Check); })); } else { ListViewItem itemNew = new ListViewItem(); itemNew.Text = strPath; itemNew.SubItems.Add(strFile); itemNew.SubItems.Add(strExt); itemNew.SubItems.Add(intLineNumber.ToString()); itemNew.SubItems.Add(strLine); if (strRegex != null) // V1 { itemNew.SubItems.Add("v1"); itemNew.SubItems.Add(strRegex); } else // V2 { itemNew.SubItems.Add("v2"); itemNew.SubItems.Add(gv2Check.strRegex); itemNew.SubItems.Add(gv2Check.strName); itemNew.SubItems.Add(gv2Check.strDescription); } lstResults.Items.Add(itemNew); } }
public void UpdateList(string strPath, string strFile, string strExt, int intLineNumber, string strLine, string strRegex, Grepifyv2Check gv2Check) { if (this.InvokeRequired) { lstResults.Invoke(new MethodInvoker(() => { UpdateList(strPath, strFile, strExt, intLineNumber, strLine, strRegex, gv2Check); })); } else { ListViewItem itemNew = new ListViewItem(); itemNew.Text = strPath; itemNew.SubItems.Add(strFile); itemNew.SubItems.Add(strExt); itemNew.SubItems.Add(intLineNumber.ToString()); itemNew.SubItems.Add(strLine); if (strRegex != null) // V1 { itemNew.SubItems.Add("v1"); itemNew.SubItems.Add(strRegex); } else // V2 { itemNew.SubItems.Add("v2"); itemNew.SubItems.Add(gv2Check.strRegex); itemNew.SubItems.Add(gv2Check.strName); itemNew.SubItems.Add(gv2Check.strDescription); } lstResults.Items.Add(itemNew); } }
// Constructor public Grepifyv2File(String strFile) { XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(strFile); XmlNodeList xmlExts = xmlDoc.GetElementsByTagName("Extensions"); if (xmlExts.Count == 1) { strExts = xmlExts[0].InnerText; } else { return; } XmlNodeList xmlChecks = xmlDoc.GetElementsByTagName("Check"); foreach(XmlNode xmlNode in xmlChecks){ Grepifyv2Check myCheck = new Grepifyv2Check(strExts); foreach (XmlNode xmlSubNode in xmlNode.ChildNodes) { if(xmlSubNode.Name.Equals("Regex")){ myCheck.strRegex = xmlSubNode.InnerText; } if(xmlSubNode.Name.Equals("Friendly")){ myCheck.strName = xmlSubNode.InnerText; } if(xmlSubNode.Name.Equals("Description")){ myCheck.strDescription = xmlSubNode.InnerText; } } // We need them all if (myCheck.strRegex != null && myCheck.strName != null && myCheck.strDescription != null) { // Check the regex is valid before adding it try { Match regexMatch = Regex.Match("Mooo", myCheck.strRegex); myChecks.Add(myCheck); } catch (ArgumentException rExcp) { MessageBox.Show("Regex looks broken, Regex is '" + myCheck.strRegex + "'. Error is '" + rExcp.Message + "' in file " + strFile + ".", "Regex error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }