public Form1() { // // Required for Windows Form Designer support // InitializeComponent(); try { //m_myTray = new NotifyIcon(); //m_myTray.Text = "Regex Runner"; //m_myTray.Visible = true; //m_myTray.Icon = new Icon(GetType(), "regex_small.ico"); m_menu = new ContextMenu(); m_menu.MenuItems.Add(0, new MenuItem("Show",new System.EventHandler(Show_Click))); m_menu.MenuItems.Add(1, new MenuItem("Hide",new System.EventHandler(Hide_Click))); m_menu.MenuItems.Add(2, new MenuItem("Exit",new System.EventHandler(Exit_Click))); //m_myTray.ContextMenu = m_menu; //this.m_myTray.Click += new EventHandler(m_myTray_Click); // // TODO: Add any constructor code after InitializeComponent call // presets_box.Items.Add("No Preset"); regexes = new System.Collections.Generic.List<regex_option>(256); if( System.IO.File.Exists("presets.txt") ) { using (System.IO.StreamReader commonregexes = new System.IO.StreamReader("presets.txt")) { string line = ""; int i = 1; while ((line = commonregexes.ReadLine()) != null) { presets_box.Items.Add(line.Replace("Preset:", "")); regex_option z = new regex_option(); z.regex_display = line.Substring(7); if ((line = commonregexes.ReadLine()) != null) { if (line.IndexOf("Match:") == 0) { line = line.Substring("Match:".Length); } z.regex_match = line; } else { break; } if ((line = commonregexes.ReadLine()) != null) { if (line.IndexOf("Replace:") == 0) { line = line.Substring("Replace:".Length); } z.regex_replace = line; } else { break; } if(!regexes.Contains(z)) regexes.Add(z); i++; //if( i > 255 ) { break; } } commonregexes.Close(); } } } catch( System.Security.SecurityException e) { //oh well } }
/// <summary> /// Runs the regular expressions as input in the textboxes and outputs the result in the results textbox /// </summary> /// <param name="sender"></param> /// <param name="e"></param> //System.Threading.Thread runregex; private void button1_Click(object sender, System.EventArgs e) { button1.Enabled = false; RegexRun o = new RegexRun(); o.OnMessage += new RegexRun.MessageHandler(o_OnMessage); o.RegexFinished += new RegexRun.RunRegexCompletedHandler(o_RegexFinished); o.regex_checkbox_multiLine = checkbox_multiLine.Checked; o.regex_checkBox_singleline = checkBox_singleline.Checked; o.regex_match = regex_match.Text; o.regex_replace = regex_replace.Text; o.regex_match_mode = match_mode.Checked; o.input_text = input_textbox.Text; o.ignoreduplicates = IgnoreDups.Checked; o.casesensitive = casecheckbox.Checked; o.RunRegexAsync(); //Test to see if the match/replace are already in their drop down lists. It then adds them if not. if(!regex_match.Items.Contains(regex_match.Text)) { regex_match.Items.Insert(0, regex_match.Text); } if(!regex_replace.Items.Contains(regex_replace.Text)) { regex_replace.Items.Insert(0, regex_replace.Text); } if ((presets_box.SelectedIndex == 0 || presets_box.SelectedIndex == -1) && String.IsNullOrEmpty(presets_box.Text)) { regex_option z = new regex_option(); z.regex_match = regex_match.Text; z.regex_replace = regex_replace.Text; z.regex_display = "Last used Expressions"; int g = regexes.FindIndex(x => x.regex_display == "Last used Expressions") ; if (g != -1) regexes[g] = z; else { regexes.Add(z); presets_box.Items.Add(z.regex_display); } presets_box.Text = z.regex_display; } int i = regexes.FindIndex(x => x.regex_display == presets_box.Text); if (! String.IsNullOrEmpty(presets_box.Text) && i != -1 ) { regex_option z = regexes.Find(x => x.regex_display == presets_box.Text); z.regex_match = regex_match.Text; z.regex_replace = regex_replace.Text; } //button1.Enabled = true; }
private void button6_Click(object sender, EventArgs e) { bool bfoundexistingregex = false; for (int i = 0; i < this.regexes.Count; i++) { if (regexes[i].regex_display == this.presets_box.Text) { regex_option z = regexes[i]; z.regex_match = this.regex_match.Text; z.regex_replace = this.regex_replace.Text; regexes[i] = z; bfoundexistingregex = true; } } if (!bfoundexistingregex && ! String.IsNullOrEmpty(this.presets_box.Text)) { regex_option z = new regex_option(); z.regex_replace = this.regex_replace.Text; z.regex_match = this.regex_match.Text; z.regex_display = this.presets_box.Text; } SavePresets(); }
private void presets_box_TextUpdate(object sender, EventArgs e) { regex_option z; z = regexes.Find(x => x.regex_match == regex_match.Text && x.regex_replace == regex_replace.Text); if (z != null && !String.IsNullOrEmpty(presets_box.Text)) { //Old listitem if (presets_box.Items.IndexOf(z.regex_display) != -1) { //Selection hack to prevent cursor from moving while updating a listitem int i = presets_box.SelectionStart; presets_box.Items[presets_box.Items.IndexOf(z.regex_display)] = presets_box.Text; presets_box.SelectionStart = i; } z.regex_display = presets_box.Text; } else if(! String.IsNullOrEmpty(presets_box.Text)) { z = new regex_option(); z.regex_display = presets_box.Text; z.regex_match = regex_match.Text; z.regex_replace = regex_replace.Text; regexes.Add(z); presets_box.Items.Add(z.regex_display); } }