/**\page future Future Plans

See this page:http://scidavis.sourceforge.net/contributing/plans.html
for an updated plans and tasks description. 
As SciDAVis (since Sep. 2008) collaborates closely with the LabPlot project, 
looking here:http://sourceforge.net/projects/labplot/ and especially 
here:http://sourceforge.net/mailarchive/forum.php?forum_name=labplot-devel 
is also a good idea.

- Make SciDAVis easier to extend and maintain by modularizing it and add 
 generic plug-in support, support for implementing extensions in Python. 
For example, ideally it should be possible to implement new plot or marker
 types without modifying existing classes.
- A full-featured multi-level undo/redo framework (based on QUndoCommand).
 [ undo/redo assigned to thzs; plug-in/Python extension support assigned to knut_f ]
- Revise some internal APIs that use undocumented protocols for the
 strings that get passed around. Wherever possible, consistency should be
 checked at compile-time. This would also probably eliminate the need to
 place restrictions on object/column names.
- Switch file format to a completely XML-based one so we can write a
 more robust parser based on Qt's XML support. Legacy support for the old
 format could be a plug-in. Use the new XML reader/write in Qt 4.3 for 
this since it is very fast.
- Document as much as possible using doxygen and write simple demo
 plug-ins. Also a collection of demo projects, tutorials etc. would
be nice. The latter could be contributed by non-developers.
- Modularize the build process so that Python support could use SIP's
 build system instead of the current hacks. Support for muParser,
 liborigin and zlib could also be split out into plug-ins on the basis
 that you shouldn't have to install libraries you don't use. Also reduces
 compile times during bugfixing.
 [ assigned to knut_f ]
- Change some internal APIs that depend on the notion of a selected/current item.
 This will lead to a cleaner and simpler interface for plug-ins and Python scripts. 
This will have to wait until the model/view implementation is done since it
will extend the handling of selections to non-contiguous selections.
- Replace or fork Qwt by a system based on Qt4's features and optimize it for
 optimum export quality. Very important: Eliminate the restriction to integer
coordinates and implement true plot scaling.
- Add support for custom page sizes once Trolltech fixes this issue:
 http://trolltech.com/developer/task-tracker/index_html?method=entry&id=99441
.

%Note about modularization: this is mainly about internal reorganizations.
Most of the current features should remain part of the main executable, but use interfaces similar or
identical to those used by plug-ins. This should ease maintanance and make adding new features
to the core application a no-brainer once they're available as plug-ins.
Support for Python, liborigin and zlib could be real, external plug-ins since many people probably
don't need them, but this can be decided shortly before distribution and ideally by
modifying just a few lines in a build script.

\section features Other Planned Features
- Waterfall plots
- Polar charts
- Ternary plots
- Improved data analysis: base-line detection tool, more built-in fit functions...
- Improved import of Origin project files
- More import/export filters including Open Document spreadsheets (plugin)

\sa ApplicationWindow, Graph, Layer, Graph3D, ImageMarker, Legend, MyWidget, SelectionMoveResizer, MyParser, Note, ScriptEdit, Spreadsheet
*/
