
TODO for gpaint 
Working toward version 0.4.0


=========================================================================
BUGS

* File Save As: Prompt to confirm file overwrite if filename already exists

* Flip image while selection is blinking causes selection line droppings.

* Multiline problems
  - line segment banding is not right. second point should be set
    upon mouse release, not mouse down
  - need to indicate current end point (blink?)
  - need to clear end point when drawing is cleared
  - sometimes color is inverted at corners

* Font cursor droppings
  - font cursor is blinking while rotate selected can cause cursor
    droppings on the image.

* gdk-critical
  - select long font name, line width widget disappears
  - detaching tool bar causes gdk-critical errors and crashes

* tool button selection weirdness? sometimes the tool needs to be
  selected more than once because it is being deselected after
  the first click (?)

* prompt to save file does not allow the user to select a the file name
  when it is untitled. Picks untitled.png and overwrites the existing
  untitled.png without warning.

=========================================================================
To be finished

* Curve Tool Button - implement or drop? This is implemented as a spline
                      in Xpaint. Most likely this button will be replaced
                      with a spray can tool button.
                      
* Spray Paint Tool - The spray can tool, also known as the airbrush.

* Bold/Italics buttons are grayed out.

=========================================================================
Critical Missing Features

* Undo Feature - Should be able to undo and redo changes to the drawing.

* Help Topics - online user documentation


=========================================================================
Nice to have new features

* Nicer about box, with credits and a better logo.

* Paint Brush Tool - select different kinds of brush tips.
  Note: square brush is the only tip now.

* Following xpaint, the "image processing" routines need dialog boxes to
  allow users to change certain parameters. (Right now the parameters are
  hard coded to certain default value, not adjustible by the user.)

* We want fill patterns and line widths selectable by the user. (Right
  now there is a crude line width select control and no fill pattern
  dialog box.) 

* Printing--right now there is little or no printing control (user
  interfaces)--we may borrow the code from eog for this.

* Cursors - Need better mouse cursors to indicate the current selected
  tool, and to indicate the area to be changed. For example, the eraser
  cursor should show which pixels will be erased. Currently there is a
  cross hair, which shows just the center of the area.

* Tool Bar Icons - I would like to see nicer icons for some of the
  tools. 

* Blocking Operations - Some menu selections, such as grabbing the
  desktop and some of the image processing functions, take a very long
  time. When these functions are running, the application is not
  responsive and the main window does not repaint after the menu pop up
  is dismissed. Could these time expensive tasks be processed in "the
  background"?

* File Formats - It would be nice to be able to select the format type
  in the save dialog.

* Zoom - Fixed size zoom (like the "fat bits" feature of xpaint,
  set to 1:6)

* print, zoom-in/out adjustment (right now user has no control)


=========================================================================
Future Release

* adding variable zooming to the image window (like xpaint can do)

* Drag and drop support

* libglade support (?)

