Edit Fields with Hyperlinks and ppAllExceptForEditFields

  • WPTools 5.48.5, Delphi 5, Windows XP Pro

    Julian:

    This is a follow up on my original post: "Bookmarks tags getting DELETED AND REPLACED with [ch=1] tags" on Aug 02, 2009.

    First, the issue I reported in the above post DID NOT occur once I changed bookmark names to one word (i.e., no spaces in names). Not sure if this is just a coincidence or a real problem resolution!

    However, I took your advice and changed the code to use Edit Fields instead of Bookmarks to maintain document structure per discussion in my previous post.

    Now, I have run into following which occur only when: ProtectedProp.ppAllExceptForEditFields := true

    Following should be easy to reproduce with minor modifications to: TextObjects demo project (I just added a button to input Hyperlink and a checkbox to toggle ProtectedProp.ppAllExceptForEditFields property).

    1. Hyperlinks in EditField Text: On moving backwards in text with Left Arrow key, when cursor reaches end of a Hyperlink, next Left Arrow keypress exits the current EditField and puts cursor in the EditField before the current one.

    2. Going forwards with Right Arrow key: As soon as keyboard cursor enters EditField, it goes to last character in the EditField. In my case, EditField may contain any amount of text, typically 1-6 lines. I can imagine this could be intentional/helpful in certain conditions (forms with short data entry fields) but it will totally confuse and irritate other users.

    3. [Not too important to me right now but may be to others] Home and Control-Home keys take cursor to end of the previous EditField though Control-End take cursor to end of the document. Again, this may be intentional and beneficial in certain circumstances except the Control-Home key behavior which should take cursor to either top of the document or to the first EditField in the document/form.

    All these are issue with keyboard navigation only, not with mouse. However, for Section 508 compliance in USA, we have to ensure that users can accomplish the same tasks without mouse.

    Further, since the whole idea of using Edit Fields is to maintain document structure and control where user input goes, I must limit user data entry to provided EditFields. Therefore, ability to set: ppAllExceptForEditFields := True is very important.

    Are there any properties/settings that I am missing? As always, all help is greatly appreciated.

    With best regards,

    JayM