# <% $basename %> release notes

This release was compiled on <% $time %>.

## 3.0-rc1

Changes since 3.0-Beta:

- New plugins
  - ContextMenu plugin (provides a nice context menu with common operations, including table ops, link ops, etc.)
  - CSS plugin (provides an easy way to insert/change CSS classes)
  - FullPage plugin (allows HTMLArea to edit a whole HTML file, not only the content within <body>.)
- Changes in the SpellChecker plugin
  - Many bugfixes: now it works ;-) Fully Unicode-safe.
  - Speed and bandwidth optimization: reports the list of suggestions only once for each mispelled word; this helps in cases where you have, for instance, the word “HTMLArea” in 10 places all over the document; the list of suggestions for it--which is kind of huge--will only be included once.
  - User interface improvements: the highlighted word will remain in view; in cases where it's normally outside, the window will be scrolled to it.
  - Added a "Revert" button for those that change their minds ;-)
  - Added a "Info" button which reports information about the document, retrieved by the server-side spell checker: total number of words, total number of mispelled words, number of suggestions made, spell check time, etc. More can be easily added. FIXME: this part is not yet internationalized.
  - The server-side spell checker now uses XML::DOM instead of HTML::Parser, which means that it will be unable to parse “tag-soup” HTML. It needs valid code. Usually HTMLArea generates valid code, but on rare occasions it might fail and the spell checker will report a gross error message. This gonna have to be fixed, but instead of making the spell checker accept invalid HTML I prefer to make HTMLArea generate valid code, so changes are to be done in other places ;-)
- Changes in the core editor
  - Easier to setup: you only need to load `htmlarea.js`; other scripts will be loaded automatically. Documentation and examples updated.
  - Better plugin support (they register information about themselves with the editor; can register event handlers for the editor, etc.)
  - New about box; check it out, it's cool ;-)
  - Word cleaner (can be enabled to automatically kill Word crap on paste (see Config.killWordOnPaste); otherwise accessible by pressing CTRL-0 in the editor; a toolbar button will come up soon)
  - Image preview in "insert image" dialog. Also allows modification of current image, if selected.
  - New "insert link" dialog, allows target and title specification, allows editing links.
  - Implemented support for text direction (left-to-right or right-to-left).
  - Lots of bug fixes! ... and more, I guess ;-) an automatically generated change log is now available.

I don't have the power to go through the bug system at SourceForge now. Some of the bugs reported there may be fixed; I'll update their status, some other time. If you reported bugs there and now find them to be fixed, please let me know.

## 3.0-Beta

Changes since 3.0-Alpha:

- Performance improvements.
- Many bugs fixed.
- Plugin infrastructure.
- TableOperations plugin.
- SpellChecker plugin.
- Status bar.
- API for registering custom buttons and drop-down boxes in the toolbar.
- Toolbar can contain text labels.
- Cut, copy, paste, undo, redo buttons.

<%doc>

## Rationale for Beta

Why was this released as "Beta"? The code is quite stable and it didn't deserve a "Beta" qualification. However, there are some things left to do for the real 3.0 version. These things will not affect the API to work with HTMLArea, in other words, you can install the Beta right now and then install the final release without modifying your code. That's if you don't modify HTMLArea itself. ;-)

## To-Do before 3.0 final

1. We should use a single popup interface. Currently there are two: dialog.js and popupwin.js; dialog.js emulates modal dialogs, which sucks when you want to open "select-color" from another popup and not from the editor itself. Very buggy in IE. We should probably use only modeless dialogs (that is, popupwin.js).
2. Internationalization for the SpellChecker plugin.
3. Internationalization for the TableOperations plugin.
4. People who sent translations are invited to re-iterate through their work and make it up-to-date with lang/en.js which is the main lang file for HTMLArea-3.0. Some things have changed but not all translations are updated.
5. Documentation.

Last modified: Sun Feb 1 13:16:10 EET 2004
<%ARGS> $project => 'HTMLArea' $version => '3.0' $release => 'rc1' $basename => 'HTMLArea-3.0-rc1' <%INIT>; use POSIX qw(strftime); my $time = strftime '%b %e, %Y [%H:%M] GMT', gmtime;