diff options
author | Graeme Geldenhuys <graemeg@gmail.com> | 2013-03-17 12:20:05 +0000 |
---|---|---|
committer | David Laurence Emerson <dle3ab@angelbase.com> | 2013-05-28 00:42:48 -0700 |
commit | ec19b4e446b958d66b6e01559deedcfcbeaf6615 (patch) | |
tree | d986cbe0299eb7b76e0e80aad72837e8856acce4 /examples | |
parent | 0307ad80db4ea3bfdfa442da4d72afce2871414e (diff) | |
download | fpGUI-ec19b4e446b958d66b6e01559deedcfcbeaf6615.tar.xz |
ide: restore caret and scroll bar position after a file reload.
For some reason the caret isn't displayed until the arrow keys are pressed,
but it is in the correct location.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/apps/ide/src/frm_main.pas | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/examples/apps/ide/src/frm_main.pas b/examples/apps/ide/src/frm_main.pas index f5adaec6..821bcbf0 100644 --- a/examples/apps/ide/src/frm_main.pas +++ b/examples/apps/ide/src/frm_main.pas @@ -684,6 +684,8 @@ var ext: TfpgString; pos_h: integer; pos_v: integer; + cur_pos_h: integer; + cur_pos_v: integer; editor: TfpgTextEdit; begin s := AFilename; @@ -702,10 +704,15 @@ begin editor := TfpgTextEdit(pcEditor.Pages[i].Components[0]); pos_h := editor.ScrollPos_H; pos_v := editor.ScrollPos_V; + cur_pos_h := editor.CaretPos_H; + cur_pos_v := editor.CaretPos_V; editor.Lines.BeginUpdate; editor.LoadFromFile(s); editor.ScrollPos_H := pos_h; editor.ScrollPos_V := pos_v; + editor.CaretPos_H := cur_pos_h; + editor.CaretPos_V := cur_pos_v; + editor.UpdateScrollBars; editor.Lines.EndUpdate; pcEditor.ActivePageIndex := i; ts := pcEditor.ActivePage; |