View Issue Details

IDProjectCategoryView StatusLast Update
0003014JEDI VCL00 JVCL Componentspublic2005-06-02 14:47
ReporteranonymousAssigned Toremkobonte 
Status resolvedResolutionfixed 
Product Version3.00 
Target VersionFixed in Version3.10 
Summary0003014: JvRichEdit; right-click-menu problems
DescriptionI found two problems with the JvRichEdit component, both related to the popup menu, and probably, also to eachother;

1) Put a JvRichEdit on a form, and assign a popup menu to it. Turn of the "Allow Objects" property. Now, during runtime, when you right-click and the menu pops out, when you click on it (the menu), it will pop up again, instead of just vanish.

2) Trying to make a seperate right-click for the urls, when "AutoURLDetect" is enabled. Thought that you could use the OnURLClick-event and check for the right mouse button, but the default menu pops out first, and then, when it is closed, the "special" one.
Maybe not a bug, but surely a logic problem. Even tried to skip the built-in right menu function, and made an OnMouseDown-evend and popped the menu manually, but it was still trigged before the OnURLClick.
TagsNo tags attached.



2005-06-02 14:47

developer   ~0007392

(1) Is fixed in Rev 1.72.
(2) Is indeed related to (1), now the url menu pops up /before/ the default menu. You could use an OnContextPopup handler to prevent the popup of the default menu, for example:

  SkipNextPopup: Boolean;

procedure TForm1.JvRichEdit1URLClick(Sender: TObject;
  const URLText: String; Button: TMouseButton);
  if Button = mbRight then
    SkipNextPopup := True;
    // stuff

procedure TForm1.JvRichEdit1ContextPopup(Sender: TObject; MousePos: TPoint;
  var Handled: Boolean);
  Handled := SkipNextPopup;
  SkipNextPopup := False;

Issue History

Date Modified Username Field Change
2005-06-02 12:54 anonymous New Issue
2005-06-02 14:47 remkobonte Status new => resolved
2005-06-02 14:47 remkobonte Resolution open => fixed
2005-06-02 14:47 remkobonte Assigned To => remkobonte
2005-06-02 14:47 remkobonte Note Added: 0007392