No RichEdit20A window class

Krzysztof Foltman kfoltman at portal.onet.pl
Sat Nov 27 03:26:33 CST 2004


Just for the record, I'm still trying to develop a "proper" RichEdit 
control. I've written from scratch with RichEdit compatibility in mind, 
so I don't expect any copyright or suitability problems. At least, 
unless I screw something up or I'm less smart than I think.

If someone isn't afraid of running closed-source .exe from barely known 
developer (or can run it in a controlled environment), you can find the 
latest binary at:

    http://foltman.com/riched.zip

I'm not releasing the source yet, because I don't think it's hackable, 
until at least its architecture is complete. What's more, I'm planning 
to license a heavily modified derived product comercially to some 
company (a rich text viewer/editor tailored for a specific application), 
so any copyright-related problems are undesirable.

What IS done:

- basic text wrapping with support for proportional fonts and character 
formatting, no major known bugs (the only supported attribute is Bold, 
but the rest will be relatively easy to add)
- simple editing (typing text, backspace, delete, no overwrite mode yet)
- a very incomplete implementation of Shift-arrow selection (done in a 
few  hours yesterday :-) ), mouse operations don't support selection yet
- per-paragraph alignment
- pitiful low-level style management
- bold attribute
- some basic optimizations (avoiding rewrapping unmodified paragraphs 
unless editor window is resized)
- uses UNICODE internally (not necessarily a good thing)

What isn't done:

- RichEdit API (which is a mess; I'm taking care of it in order to 
ensure compatibility wrt how editing functions work, however, basic 
editing functionality is the number one priority, as it's more difficult 
to achieve)
- RTF interface
- Undo
- Clipboard
- tabs
- bulleted lists
- setting paragraph attributes (margins are implemented internally but 
can't be changed with current interface, setting alignment by Ctrl+L/E/R 
works)
- all RichEdit f3 functionality
- MBCS support (and it would be very hard to add)
- BiDi and CTL support (ditto)
- everything not mentioned in the first list

Krzysztof



More information about the wine-devel mailing list