############# TODO #############

configurable word wrap and line wrap

update function put_stringlist() so it will never create strings > MAX_STRING (in stringlist.c)

look at projects - when are they modified and when not.

converter for umlauts etc. to the appropiate HTML tag

key combination to switch documents

modification indicator in the document tab

auto indenting ?
but with a funcion which can remove indenting (because of images in tables, the bug in browsers)

Add TIDY as a HTML checker (www.w3.org)
Implement spell checking (Ispell ?)
both perhaps as plugin?

allow external filters (tidy, dos2unix, striphtml etc.)

update broken links

some javascript stuff eventually
have had a request for an on mouseover image change wizard and other javascripts
a good start would be if somebody would write a couple of javascripts that are
easy to use for dialogs.

change case for only the first char of the current selection, or the whole
selection, or lowercase this

Insert \" instead of " for PHP mode

Line delete function <control>y

The rename and delete buttons in the file dialogs do not work!

The parser to make relative links for images doesn't do the job perfectly. Links
like ../ are not (yet) introduced.

tab filename completion for links / images etc,

update broken links when renaming a file

A Netscape bookmarks file parser to add to the urllist would be cool! (get every
 URL out of bookmarks.html)

use the statusbar more, 

A total cleanup is also needed. The program is getting too large without a good 
organisation. This is slowly improving, but also slowly getting worse.

An optional (compile time) GNOME-ify

Modify the color insert so you can *change* a color, like select the color, 
click the button, and it will show the color, change it a bit and click OK
and the color is updated

More on the color select: allow a couple of preset colors, so you can define
a couple of colors to use in your documents 

Line numbers in the editor. The GtkText widget doesn't really support this
 so the only thing I can think of is count every \n up to the cursor but
 this would be very time consuming

##########################
##   a big change idea  ##
can we build _one_ function which can build the GUI for _every_ HTML tag
based on some information?

For the "anchor" tag you would for example need:
name = string
href = string in urllist
target = string in targetlist
(we can remove the description, you type the description, select it and
then hit the anchor button)

Then we can build an interface which has all these options, and a callback
which can make HTML out of these options. This way we can reduce the size
of html.c (so make it a lot more efficient) and we can easily add new tags
(for php3 for example) without adding a lot of code.

Another important improvement is that we then can add a new feature: 
right-click on the tag in the text, and get the menu of the tag. The only
thing you need to do is 
1) find which tag it is, and then find the info which belongs to that tag
2) extract the value of the parameters of the tag
3) generate the GUI for that tag with the values already in there
4) insert it again on the right place of the text

I think this whole idea should be pretty good possible, if we add enough
information about every tag. This information can be stored in a GList for
example, or in a structure. It is not possible for some of the wizards,
but I think it is possible for most of the tags. Wouldn't it be cool if
you can click on a tag, and it will give a menu with all the options of
the tag? It happens to often now that I simply remove a tag, and insert it
again because I need some more options.

## end of big change idea ##
############################
