From: Daniel R. <dan...@ad...> - 2002-08-27 17:29:08
|
Hello, here's a new version of TSynCompletionProposal and a demo application. As announced this version is slightly incompatible to existing programs, so please read carefully!!! I. Changes: =========== Common: - Every event has a Sender-parameter now - After an OnPaintItem event the canvas is reset - If you remove the current editor from TSynCompletionProposal the proposal form will be closed. (Avoids AV on form close, when using multiple editors with one TSynCompletionProposal) - Changed all #xx character constants to SYNEDIT_xxx constants (#13-> SYNEDIT_RETURN, #32 -> SYNEDIT_SPACE and so on.) - Changed Position-property from published to public, since it does not make sense at design time. - Some minor fixes ctCode: - New option: scoConsiderWordBreakChars. If activated, TSynCompletionProposal handles all characters which are declared as word break characters in the highlighter (if any) as EndOfTokenChr. - OnPaintItem event gets the absolute index of the item to paint instead of the relative index. - Proposal form now is a stay-on-top window, too. Some Windows functions which take the focus from the proposal form but don't send any message like lost focus, deactive, ... hide the proposal form behind the window containing the editor. (Opening the system menu of the window through the Alt key, for example) II. Warnings ============ 1) Before you make any modifications to your system make a backup copy from your old SynCompletionProposal.pas and any other file you plan to modify. 2) This version introduces some new properties so you have to recompile your SynEdit package. 3) Take a look at the attached demo, before you make modifications to your applications 4) See the attached doc for some more information about modifying your applications. III. Annotations ================ I've tested the new version under D3 and D6. The demo makes use of the LaTeX highlighter. If you don't have it, simply ignore all error messages which occur when you open the demo. The demo cannot be compiled under D3 (and any other Delphi version which lacks the StringReplace function) Simple outcomment the lines containing it. (Use (* and *) rather than { and }) If you've got comments or problems, please let me know. Regards, Daniel |