public void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (LinkClicked != null) { LinkClicked(sender, e); } }
/// <summary> /// Handle mouse up to handle selection and link click. /// </summary> /// <param name="parent">the control hosting the html to invalidate</param> /// <param name="e">the mouse event args</param> public void HandleMouseUp(Control parent, MouseEventArgs e) { ArgChecker.AssertArgNotNull(parent, "parent"); ArgChecker.AssertArgNotNull(e, "e"); if (_selectionHandler != null) { var inSelection = _selectionHandler.HandleMouseUp(parent, e.Button); if (!inSelection && (e.Button & MouseButtons.Left) != 0) { var loc = OffsetByScroll(e.Location); var link = DomUtils.GetLinkBox(_root, loc); if (link != null) { if (LinkClicked != null) { var args = new HtmlLinkClickedEventArgs(link.GetAttribute("href")); LinkClicked(this, args); if (args.Handled) { return; } } CssValueParser.GoLink(link.GetAttribute("href", string.Empty), Bridge); } } } }
/// <summary> /// Propagate the LinkClicked event from root container. /// </summary> private void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (LinkClicked != null) { LinkClicked(this, e); } }
/// <summary> /// Handle link clicked going over <see cref="LinkClicked"/> event and using <see cref="Process.Start()"/> if not canceled. /// </summary> /// <param name="parent">the control hosting the html to invalidate</param> /// <param name="location">the location of the mouse</param> /// <param name="link">the link that was clicked</param> internal void HandleLinkClicked(RControl parent, RPoint location, CssBox link) { if (LinkClicked != null) { var args = new HtmlLinkClickedEventArgs(link.HrefLink, link.HtmlTag.Attributes); try { LinkClicked(this, args); } catch (Exception ex) { throw new HtmlLinkClickedException("Error in link clicked intercept", ex); } if (args.Handled) { return; } } if (!string.IsNullOrEmpty(link.HrefLink)) { if (link.HrefLink.StartsWith("#") && link.HrefLink.Length > 1) { if (ScrollChange != null) { var rect = GetElementRectangle(link.HrefLink.Substring(1)); if (rect.HasValue) { ScrollChange(this, new HtmlScrollEventArgs(rect.Value.Location)); HandleMouseMove(parent, location); } } } else { if (!string.IsNullOrEmpty(link.HrefLink) && Directory.Exists(link.HrefLink)) { Process.Start("explorer.exe", "\"" + link.HrefLink + "\""); } else { if (!string.IsNullOrEmpty(link.HrefLink) && File.Exists(link.HrefLink)) { var process = new ProcessStartInfo(link.HrefLink) { UseShellExecute = true }; Process.Start(process); } else { if (new Regex(@"^(ht|f)tp(s?)\:\/\/[0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*(:(0-9)*)*(\/?)([a-zA-Z0-9\-\.\?\,\'\/\\\+&%\$#_]*)?$").Match(link.HrefLink).Success) { Process.Start(link.HrefLink); } } } } } }
private async void htmlContent_LinkClicked(object sender, HtmlLinkClickedEventArgs evt) { Uri newUri; Log.Debug(evt.Link); if (evt.Link.StartsWith("gemini://")) { evt.Handled = true; } try { newUri = new Uri(evt.Link); } catch (Exception) { try { newUri = new Uri(history[historyPos], evt.Link); } catch (Exception e2) { Log.Error(e2, "Invalid URL"); lblStatus.Text = "Error loading page"; htmlContent.Text = string.Format("Could not load page {0}", evt.Link); return; } } if (await Navigate(newUri)) { UpdateHistory(newUri); } }
private void HtmlOnLinkClicked(object sender, HtmlLinkClickedEventArgs htmlLinkClickedEventArgs) { if (htmlLinkClickedEventArgs.Link.Equals("update")) { UpdateHandler.CheckForUpdate(); htmlLinkClickedEventArgs.Handled = true; } }
/// <summary> /// Propagate the LinkClicked event from root container. /// </summary> protected virtual void OnLinkClicked(HtmlLinkClickedEventArgs e) { var handler = LinkClicked; if (handler != null) { handler(this, e); } }
private void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (CheckAccess()) { OnLinkClicked(e); } else { Dispatcher.UIThread.InvokeAsync(() => OnLinkClicked(e)).Wait(); } }
private void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (CheckAccess()) { OnLinkClicked(e); } else { Dispatcher.Invoke(new Action <HtmlLinkClickedEventArgs>(OnLinkClicked), e); } }
/// <summary> /// Handles the clicks on the link displayed in the tooltip /// </summary> /// <param name="htmlLinkClickedEventArgs"></param> private static void ClickHandler(HtmlLinkClickedEventArgs htmlLinkClickedEventArgs) { var split = htmlLinkClickedEventArgs.Link.Split('#'); var actionType = split[0]; bool handled = true; switch (actionType) { case "gotoownerfile": if (split.Length > 1) { Npp.Goto(split[1]); Close(); } break; case "trigger": if (split.Length > 1) { var fullPath = ProEnvironment.Current.FindFirstFileInEnv(split[1]); Npp.Goto(string.IsNullOrEmpty(fullPath) ? split[1] : fullPath); Close(); } break; case "proto": if (split.Length > 3) { Npp.Goto(split[1], int.Parse(split[2]), int.Parse(split[3])); Close(); } break; case "gotodefinition": ProMisc.GoToDefinition(); break; case "nexttooltip": IndexToShow++; TryToShowIndex(); break; default: handled = false; break; } htmlLinkClickedEventArgs.Handled = handled; }
/// <summary> /// On specific link click handle it here. /// </summary> void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (e.Link == "SayHello") { new Alt.GUI.Temporary.Gwen.Control.MessageBox(GetCanvas(), "Hello you!", "Link Clicked"); e.Handled = true; } else if (e.Link == "ShowSampleForm") { //NoNeed HtmlRenderer.SampleForm f = new HtmlRenderer.SampleForm(this); e.Handled = true; } }
/// <summary> /// On specific link click handle it here. /// </summary> private static void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { if (e.Link == "SayHello") { MessageBox.Show("Hello you!"); e.Handled = true; } else if (e.Link == "ShowSampleForm") { using (SampleForm f = new SampleForm()) { f.ShowDialog(); e.Handled = true; } } }
/// <summary> /// Handle link clicked going over <see cref="LinkClicked"/> event and using <see cref="Process.Start()"/> if not canceled. /// </summary> /// <param name="parent">the control hosting the html to invalidate</param> /// <param name="location">the location of the mouse</param> /// <param name="link">the link that was clicked</param> internal void HandleLinkClicked(RControl parent, RPoint location, CssBox link) { EventHandler <HtmlLinkClickedEventArgs> clickHandler = LinkClicked; if (clickHandler != null) { var args = new HtmlLinkClickedEventArgs(link.HrefLink, link.HtmlTag.Attributes); try { clickHandler(this, args); } catch (Exception ex) { throw new HtmlLinkClickedException("Error in link clicked intercept", ex); } if (args.Handled) { return; } } if (!string.IsNullOrEmpty(link.HrefLink)) { if (link.HrefLink.StartsWith("#") && link.HrefLink.Length > 1) { EventHandler <HtmlScrollEventArgs> scrollHandler = ScrollChange; if (scrollHandler != null) { var rect = GetElementRectangle(link.HrefLink.Substring(1)); if (rect.HasValue) { scrollHandler(this, new HtmlScrollEventArgs(rect.Value.Location)); HandleMouseMove(parent, location); } } } /* * else * { * var nfo = new ProcessStartInfo(link.HrefLink); * nfo.UseShellExecute = true; * Process.Start(nfo); * } */ } }
void _html_LinkClicked(object sender, HtmlLinkClickedEventArgs e) { e.Handled = true; var s = e.Link; if (s == "?") { ZSetText(c_aboutHtml); } else if (s.Starts('#')) //anchor { e.Handled = false; } else { AExec.TryRun(s); } }
/// <summary> /// Handle link clicked going over <see cref="LinkClicked"/> event and using <see cref="Process.Start()"/> if not canceled. /// </summary> /// <param name="link">the link that was clicked</param> internal void HandleLinkClicked(CssBox link) { if (LinkClicked != null) { var args = new HtmlLinkClickedEventArgs(link.HrefLink, link.HtmlTag.Attributes); LinkClicked(this, args); if (args.Handled) { return; } } if (!string.IsNullOrEmpty(link.HrefLink)) { var nfo = new ProcessStartInfo(link.HrefLink); nfo.UseShellExecute = true; Process.Start(nfo); } }
/// <summary> /// Simple click handler that opens any link as a file (either in notepad++ if the extension is known, /// or with the default program, or as a folder in the explorer) /// </summary> /// <param name="sender"></param> /// <param name="htmlLinkClickedEventArgs"></param> public static void OpenPathClickHandler(object sender, HtmlLinkClickedEventArgs htmlLinkClickedEventArgs) { if (htmlLinkClickedEventArgs.Link.Contains("|")) { var splitted = htmlLinkClickedEventArgs.Link.Split('|'); if (splitted.Length == 2) { Npp.Goto(splitted[0], int.Parse(splitted[1])); } else { Npp.Goto(splitted[0], int.Parse(splitted[1]), int.Parse(splitted[2])); } htmlLinkClickedEventArgs.Handled = true; } else { htmlLinkClickedEventArgs.Handled = OpenAnyLink(htmlLinkClickedEventArgs.Link); } }
/// <summary> /// Handle link clicked going over <see cref="LinkClicked"/> event and using <see cref="Process.Start()"/> if not canceled. /// </summary> /// <param name="parent">the control hosting the html to invalidate</param> /// <param name="e">the mouse event args</param> /// <param name="link">the link that was clicked</param> internal void HandleLinkClicked(Control parent, MouseEventArgs e, CssBox link) { if (LinkClicked != null) { var args = new HtmlLinkClickedEventArgs(link.HrefLink, link.HtmlTag.Attributes); try { LinkClicked(this, args); } catch (Exception ex) { throw new HtmlLinkClickedException("Error in link clicked intercept", ex); } if (args.Handled) { return; } } if (!string.IsNullOrEmpty(link.HrefLink)) { if (link.HrefLink.StartsWith("#") && link.HrefLink.Length > 1) { if (ScrollChange != null) { RectangleF?rect = GetElementRectangle(link.HrefLink.Substring(1)); if (rect.HasValue) { ScrollChange(this, new HtmlScrollEventArgs(Point.Round(rect.Value.Location))); HandleMouseMove(parent, e); } } } else { var nfo = new ProcessStartInfo(link.HrefLink); nfo.UseShellExecute = true; Process.Start(nfo); } } }
private void htmlPanel_LinkClicked(object sender, HtmlLinkClickedEventArgs e) { e.Handled = true; }
/// <summary> /// Propagate the LinkClicked event from root container. /// </summary> protected virtual void OnLinkClicked(HtmlLinkClickedEventArgs e) => RaiseRouted(LinkClickedEvent, e);
private void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { OnLinkClicked(e); }
private async void HtmlPanel1_LinkClicked(object sender, HtmlLinkClickedEventArgs e) { await m_server.Go(e.Link); //htmlPanel1.Text = m_server.Html; }
/// <summary> /// Handle links clicked in the label. /// </summary> /// <param name="sender">The control</param> /// <param name="args">The link click arguments</param> private void OnLinkClicked(object sender, HtmlLinkClickedEventArgs args) { _layout.Container.RaiseLink(args.Link); args.Handled = true; }
/// <summary> /// On specific link click handle it here. /// </summary> void OnLinkClicked(object sender, HtmlLinkClickedEventArgs e) { }
/// <summary> /// Propagate the LinkClicked event from root container. /// </summary> protected virtual void OnLinkClicked(HtmlLinkClickedEventArgs e) { RoutedEventArgs newEventArgs = new RoutedEvenArgs <HtmlLinkClickedEventArgs>(LinkClickedEvent, this, e); RaiseEvent(newEventArgs); }
/// <summary> /// Propagate the LinkClicked event from root container. /// </summary> protected virtual void OnLinkClicked(HtmlLinkClickedEventArgs e) { LinkClicked?.Invoke(this, e); }