# Keeping visual progress notes (a.k.a clinical sketches)

Sometimes a picture is worth a thousand words. Therefore GNUmed allows adding imagery as so called visual progress notes.

## Workflow

The functionality is found in the Progress Notes plugin at the bottom of the encountlet thread editors notebook. A clinical sketch can be created either from a visual progress note template in the database or from a file on your harddrive. Templates pre-installed with GNUmed cover a range of anatomical images (Thanks, John !). Creating a note from a file will be most useful when, say, you've taken a clinical photograph which you want to annotate and include with an encounter.

Upon selection of the template or file a configurable image editor will open to allow you to edit the image (add arrows, shade areas, insert notes, etc.). When you close the editor GNUmed will read your changes and store the visual progress note into the patient's chart. If you created the note from a file on disk GNUmed will ask for confirmation before deleting the original file.

From the iconic display of clinical sketches for the current encounter one can single-click to display or double-click to re-edit a sketch.

## Adding templates

Templates for visual progress notes are nothing but standard paperwork/document templates with the type `visual progress note`. They can be added just like any other document template. The processing engine should be set to `image editor`.

## Technical background

Technically, a visual progress note is nothing but a document of the document type visual progress note attached to a patient record. As such it can be browsed, displayed, reviewed, signed, and described by metadata like any other document. The other way round any existing document can be turned into a visual progress note by setting the document type to visual progress note. There's two caveats with that, however: GNUmed assumes that visual progress notes only contain data in typical image formats (`.png`, `.gif`, `.jpg` etc). Documents containing data of other mime types won't work well with the visual notes handling code. Secondly, when handling visual progress notes GNUmed will ignore all but the first data part (page, object) of a document, no matter how many parts there are.

If no explicit episode is given to a visual note the default episode visual progress notes will be used (and created if necessary). The episode can be changed at any time just as with any other document.

If there's no document comment given and the note was templated from a file on disk (rather than a progress note template) the file name stripped of path and extension will be used. If the note was created from a template the document type (`.instance_type`) will be used.

Ultimately, which image formats are supported as visual progress notes depends on wxPython and the capabilities of the configured image editor.

The configured image editor call must block until the user is done editing or else GNUmed cannot reliably read back the modified image. Each `%(img)s` anywhere within the command line definition of how to call the editor will be replaced by the filename of the template data. If there is no `%(img)s` the filename will be appended to the command line.

Feel free to send artwork to include as templates (such as from here). The license must explicitely allow free redistribution, however, such as those from Creative Commons.

## Image editors

On the Mac OS, the supplied application "Preview" is suitable. Entering `/Applications/Preview.app/Contents/MacOS/Preview` into the menu `GNUmed > Preferences… > External tools… > Visual SOAP editor` should do the trick.

For other OS including Mac OS X, John Jaarsveld thankfully invested time to investigate and evaluate image editors loosely based on the following criteria:

- drawing circles, ellipses, polygons etc
- inserting arrows
- adding pictograms (think ultrasound)
- adding text
- adding a bit of free-hand drawing (texturizing, shading)
- available on Linux, Windows and MacOSX

He came up with the following list of suggestions:

1. Shutter-editor
2. Drawpile
3. ALchemy
4. OpenOffice Draw

The full details of his research:

I compared all the paint programmes I could easily find, and that were available for Linux, MacOS and Windows. Here is my list:

Alchemy: I like it, the interface is very intuitive. It is very much like a sketchboard. But no support for text, arrows. WIndows, Linux and Mac versions. http://al.chemy.org/download/ or getdeb.net

Drawpile: Good program, easy to use. No arrows. http://drawpile.sourceforge.net/about/ Special feature: more than one user can work on same drawing. Not sure if that is useful for GNUmed, but who knows.

Dia: not useful.

GrafX2: could not get it to load a picture succesfully. Hate the interface, way too small.

GNUpaint (gpaint): specifically for GNOME desktop. I don't like the interface, feels like a bad copy of Kolourpaint.

Kolourpaint: pretty good program. But only for KDE desktop, not windows.

GIMP: too heavy in features and memory, for my taste. Still, a good program, especially for someone already familiar with it. Otherwise, I would say the learning curve is too steep.

mpaint: I couldn't get how it works, so I guess many users will have the same problem.

Openoffice Draw: has arrows! And symbol support too. Not the lightest drawing program, but I think pretty good.

Pinta: (http://pinta-project.com/) meant as an alternative for MS paint. NET. okay, but not great.

RGBpaint: nice and simple. No arrows, and to save the text on the picture, I needed to right-click, not left-click, which is confusing. Acutally it is a fork from mpaint. Could not find a windows version of RGBpaint.

*Scribus: vector graphics. I think for the GNUmed feature a pixel-based program would be better.

Shutter-editor: I really like it. Not available for Windows, though. I send a feature request to the programmers to see if they will make the editor directely available, as some other people have asked for this as well. We'll see.

Xara Xtreme: Windows version should be bought. But the interface is pretty good. Supports arrows. May have too many features for our purpose, though.

Xfig: can only open .fig files, as far as I can find. Not useful.