Difference between revisions of "Talk:SynEdit"

From Free Pascal wiki
Jump to navigationJump to search
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Repl =
+
= Y caret =
  
  var p1,p2: TPoint;
+
     Both are 1-based. Currently Y coordinates are always the same. This may change in future.  
  begin
 
     p1 := SynEdit.LogicalCaretXY;
 
    p2 := SynEdit.LogicalCaretXY;
 
    p2.x := p2.x + UTF8CharacterLength(@SynEdit.LineText[p2.x]); // byte len of char AFTER current caret
 
    SynEdit.TextBetweenPoints[p1,p2] := '';
 
  
Bad example. What it must do? replace One char with empty string? Show example how to replace 4 chars with S string. [[User:Alex22|Alex22]] 03:55, 12 June 2014 (CEST)
+
It's not OK? Y coords are NOT same, coz of folding, of previous lines? [[User:Alex22|Alex22]]
  
:: Improved example. How to calculate bytepos of a utf8 char is not a SynEdit topic. This should be covered on its owe wiki page / or on a page related to utf8. If exists it can be linked. - Martin
+
:: Physical and Logical caret return the same y. There is no mapping of lines according to folding.
 +
:: Physical does not change the Y for folded. There are functions to map this.

Latest revision as of 23:22, 12 June 2014

Y caret

   Both are 1-based. Currently Y coordinates are always the same. This may change in future. 

It's not OK? Y coords are NOT same, coz of folding, of previous lines? Alex22

Physical and Logical caret return the same y. There is no mapping of lines according to folding.
Physical does not change the Y for folded. There are functions to map this.