Пример #1
0
        static Browser GetBrowserForUrl(string url)
        {
            Browser browser = null;

            url = GetSanitizedUrl(url);

            Rule rule = rules.FirstOrDefault(r => r.IsMatch(url));

            if (rule != null)
            {
                browser = GetBrowserByName(rule.BrowserName);
            }

            if (browser == null)
            {
                browser = GetBrowserByName(BrowserSettings.DefaultBrowserName);
            }

            if (browser == null)
            {
                browser = BrowserManager.GetBrowserByType(BrowserType.InternetExplorer);
            }

            //MessageBox.Show(string.Format("url={0}\nBrowser={1}", url, browser.Name), Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Information);
            return(browser);
        }
Пример #2
0
        private void btnAddUrl_Click(object sender, EventArgs e)
        {
            string url         = BrowserManager.GetSanitizedUrl(txtUrl.Text);
            string browserName = cboBrowser.Text;
            string matchType   = cboMatchType.Text;

            if (string.IsNullOrWhiteSpace(url) || string.IsNullOrWhiteSpace(browserName))
            {
                return;
            }

            Browser browser = BrowserManager.GetBrowserByName(browserName);

            int rowIndex = -1;

            foreach (DataGridViewRow r in grdRules.Rows)
            {
                if (Convert.ToString(r.Cells[2].Value) == url)
                {
                    rowIndex = r.Index;
                    break;
                }
            }
            DataGridViewRow row;

            if (rowIndex >= 0)
            {
                row = grdRules.Rows[rowIndex];
            }
            else
            {
                row      = grdRules.Rows[grdRules.Rows.Add()];
                rowIndex = row.Index;
            }

            row.Cells[0].Value = grdRules.Rows.Count - 1;
            row.Cells[1].Value = matchType;
            row.Cells[2].Value = url;
            row.Cells[3].Value = imlBrowsers.Images[browserName];
            row.Cells[4].Value = browserName;

            RenumberGridRows();
            SelectRow(rowIndex);
        }
Пример #3
0
        public static Rule Parse(string ruleString)
        {
            if (string.IsNullOrWhiteSpace(ruleString))
            {
                return(null);
            }

            Rule rule = new Rule();

            string[] parts = ruleString.Split('|');
            foreach (string part in parts)
            {
                int index = part.IndexOf('=');
                if (index <= 0)
                {
                    continue;
                }
                else
                {
                    string key   = part.Substring(0, index);
                    string value = part.Substring(index + 1);

                    if (key.Equals("RuleId", StringComparison.OrdinalIgnoreCase))
                    {
                        rule.RuleId = Convert.ToInt32(value);
                    }
                    else if (key.Equals("MatchType", StringComparison.OrdinalIgnoreCase))
                    {
                        rule.MatchType = (MatchType)Enum.Parse(typeof(MatchType), value);
                    }
                    else if (key.Equals("Url", StringComparison.OrdinalIgnoreCase))
                    {
                        rule.Url = BrowserManager.GetSanitizedUrl(value);
                    }
                    else if (key.Equals("BrowserName", StringComparison.OrdinalIgnoreCase))
                    {
                        rule.BrowserName = value;
                    }
                }
            }

            return(rule);
        }
Пример #4
0
        static void HandleArgs(string[] args)
        {
            foreach (string arg in args)
            {
                if (string.Equals(arg, "--register", StringComparison.OrdinalIgnoreCase))
                {
                    BrowserRegistrationManager.RegisterBrowser();
                }
                else if (string.Equals(arg, "--unregister", StringComparison.OrdinalIgnoreCase))
                {
                    BrowserRegistrationManager.UnregisterBrowser();

                    /*} else if (arg.StartsWith("http://", StringComparison.OrdinalIgnoreCase)
                    || arg.StartsWith("https://", StringComparison.OrdinalIgnoreCase)
                    ||         arg.StartsWith("ftp://", StringComparison.OrdinalIgnoreCase)) {
                    ||  BrowserManager.LaunchUrl(arg);*/
                }
                else
                {
                    BrowserManager.LaunchUrl(arg);
                }
            }
        }
Пример #5
0
 private void btnOpenUrl_Click(object sender, EventArgs e)
 {
     BrowserManager.LaunchUrlWithBrowser(txtUrl.Text, cboBrowser.Text);
 }