Preliminary Cursor patch


Subject: Preliminary Cursor patch
From: Mike Nordell (tamlin@algonet.se)
Date: Mon May 22 2000 - 12:39:49 CDT


I finally think I have gotten this to the stage that it could be
displayed to the development public for preliminary review. The reason I
want this is that it's a fundamental part of AbiWord that it should not
be allowed to break anything, and I'm not 100% confident that every
special case is taken care of.

You probably don't want to try this without backing up your original
sources since it's:
- preliminary.
- a bit rough around the edges.
- probably gonna break something.

It's still an in-development version, but I think it's significant enough
to let it be tested and criticised at this stage.

What it does:
One class makes the [visible] cursor its own class that takes care of the
(possibly blinking) cursor. Instead of draw/erase calls in FV_View it has
enable/disable calls that are ref-counting/accumulating (i.e. two disable
calls need two enable calls to display cursor).
One class implements cursor movement, though not all movement commands
are implemented yet (missing pageUp/pageDown/wordLeft/wordRight), it
falls back to use FV_View functionality.

For any non-Win32 users I might add that it _might_ stop blinking if you
open a new document in a new frame. If so, please see the patch I did to
the Win32Frame (regarding REPLACEP(m_pView,...) ) and try the same.

The kind of feedback I want for this is:
- Did the patch work, or did I forget something.
- What do you think of the design so far?
- Does any cursor movement break?
- Is there any functionality that you feel is missing (minor as major).
- Can _you_ give the unimplemented methods a meaningful body?
- Anything else you might come to think of.

Once again: This is work in progress, and I post it to be reviewed.
Please don't just complain "the cursor doesn't blink at all" unless you
tried to find out why it doesn't blink, OK?

The files (and patch) are CRLF.

/Mike - please don't cc, I read the list.






This archive was generated by hypermail 2b25 : Mon May 22 2000 - 11:38:08 CDT