XNotesPlus: Future Plans
As incentive to users to pay for their use of XNotesPlus, here is a
list of proposed features and udpates to XNotesPlus. While these
aren't cast in concrete, it is a basic plan for where I want XNotesPlus
to go. If I can get enough users to pay for the software (or a company
to sponsor development), I may be able to work on it full time.
This is the current plan for future releases.
Michael J. Hammel
February 2004
--------
Version 3.7
3.7 Built in configuration manager
3.7 Add hidden title bar that becomes visible with Ctrl-t in note
see global_accel_group in menus.c and make it a menu option (that's easiest)
3.7 Change category names in Todo list.
3.7 Need a way to add categories to XNotes, but not lose the category when stuffed in
Unfiled on the the Pilot.
3.7 Roll up window - in case window manager doesn't let you (hide main widget, leaving just menu bar)
3.7 New Pilot features:
Get system info (battery, memory, etc.): dlp_ReadSysInfo(), dlp_ReadStorageInfo()
Pilot user info: dlp_ReadUserInfo(), dlp_WriteUserInfo()
3.7 Fix bugs noted at bottom of this list
3.7 Make xnotes+ a GNOME applet?
Doesn't look too hard except for making sure mouse button bindings are kept by xnotes+ and
not given to over to the panel
http://developer.gnome.org/doc/API/panel/index.html
http://cactus.rulez.org/doc/articles/panelapplet/
http://cactus.rulez.org/projects/radioactive//
---------
Version 3.?
3.? write real documentation in PDF and HTML format
3.? Check security by running "its4" on all source code
This will require evaluating strcpy, sprintf calls to find out if they're vulnerable.
That will be vary labor intensive, cuz there are lots of these calls.
---------
Version 4.0
4.0 GTK 2.0 port
4.0: Change main windows menu to be more fun: pinup board for xnotes, something similar for other
tools.
4.0: Add "Scribbles" - simple drawing areas and image viewer
draw primitives: rectangles, circles, arcs, lines, freehand
libart vector library: http://www.gnome.org/~mathieu/libart/libart.html
http://www.artofcode.com/libart.html
ftp://ftp.gnome.org/pub/gnome/pre-gnome2/sources/libart_lgpl/
double buffer
read PNG, TIFF, GIF, and JPEG formats
See http://www.gtk.org/faq/#AEN654 (FAQ on adding images to GTK+ widgets)
Emailing notes should send Scribbles as uuencoded compressed TIFF files
Scribbles numbered the same as corresponding note and saved in "scribbles" directory
Don't know how I can upload images to Pilot
PilotSketch?
AALib - convert image to ascii and upload as a note?
PalmPix - not sure if this is the right name or not.
Also look at GdkRGB and Imlib packages
See testrgb.c in GTK+ source - it has examples of gdk_draw_grey_image() which might help
to get images painted onto the screen, though I still need read/write routines.
Look into GdkPixbuf or GtkCanvas - probably the best method as it will be rolled into Gtk+ 2.0
4.0: Add Work Manager - manage time sheets
Needs to be connected to both Todo Lists and Calendars
4.0: Make the individual notes menu bars hideable.
4.0: Make scrollbars hideable.
4.0: preferences dialog and rc file: save state information
use XML file formats for this, I think.
look at libxml -
current insert date format
data directories
cascade options
uniform sized notes
cascade by projects
ToolTips state
save on exit state
Notice dialog state
Print options
Pilot options
include/exclude xnote header lines
Allow user to make notes stay on top or beneath all other windows (is this possible?)
Allow user to specify removing window borders - how do you deal with moving/resizing notes?
Levels of Undo to save
4.0: Better import features
File import should read some other file format, say Word or RTF files.
See http://www.wotsit.org/ for file format specs (also in src/X/xnotes)
Email should import external mail programs address databases by calling
external programs that write the database in Pilot CSV format to
standard out. This is configurable via a colon seperated list of
programs to call at init time.
4.0: cascade by projects, if set
4.0: new Find Text search options
search all/selected notes
prompt user to bring forward any notes with matching text.
Replace text option for Find Text feature
4.0: Add better print support, including Postscript output
Print dialog must be callable from various places, like the Envelopes dialog
and from individual notes. Probably need to use both lpc and lpstat, like
Gimp plug-in, to find which printers are available.
look at src/X/motif for printer widget/support
4.0: Add Cut/Copy/Paste/Undo options for Erase.
4.0: Gnome and KDE aware
4.0: move all text strings to englishUS-text.h to make translation easier.
Change error messages to XP_E instead of XP_S, put in separate file.
4.0: Projects
allow changing project name
allow deleting projects
4.0: Replace text/ Replace All option for Find Text feature
4.0: Add GtkHtml widget for HTML help files.
config.h option has to be added to make this optional
4.0: look into disabling close/delete options for window managers.
4.0: Sort xnotes by title for exporting to Pilot Memos
4.0: Add support for scanning business cards? Needs driver for one of those business card scanners.
4.0: Simple calendaring functions? calender.c has support, but which features need calendars?
4.0: note sized to fit in the pilot correctly.
4.0: merge Insert Date with Show Calendar
add "Set Date" button to InsertDates dialog
Add SetTime option to ShowCalendar dialog
Save date/time info in pn_caldata structure.
4.x: Save current insertion points for notes
this requires change to note file headers
use insertion point to position text windows when reopened
This will work once GTK 2.0 comes out, which will require major updates to XNotesPlus anyway
4.x: Font support for individual notes - also requires GTK 2.0
4.x: Loadable modules: This looks easier than I thought:
http://www.linuxgazette.com/issue84/bradley.html
---------
Version 5.0
5.0: Groupware Release
5.0: linked Address databases - personal and workgroup addresses
xnotes+ can show either, or merge personal with workgroup addresses
5.0: Client server architecture
default server runs on muse.com
notes are stored on server so they can be accessed from anywhere
Things to investigate: SSL and encrypting messages
5.0 Support for Linux based PDAs
|