TODO file of LabPlot:
*********************

####################################################
BUGS:
	KNOWN BUGS :
	+ SuSE 9.0 : text rotation crashes LabPlot (y-Axis) (see QT example "xform")
		=> use updated qt packages (single letters are still not rotated here)
	+ kpart in konqueror won't resize
		=> use reload function
	+ opening from commandline : maximize doesn't work correct
		=> resize after opening
	+ print preview : "qDrawShadePanel() Invalid parameters."
		=> just ignore it
	+ "make -j N with N>1 -> link error	"ld: cannot find -lLabPlot"
		=> call "make" again
	+ LabPlot on x86_64	: pstoedit links to libEMF, which uses wine-libs
		=> dont use pstoedit
	TODO :
	3 D:
		* mouse shifting of z-axis label in 3d plot doesnt work
		* 3d and matrix switched (see Explorer)
		* 3d : rounding of double values -> +/- 1 errors (boxes style)
		* 3d : plot range for box style
		* 3d : tic label of y and z axis are crossing
	* update graph list when changing grass graph : problems
	* surface : y-axis -> ymin problems
	* open project and close LabPlot -> dont ask for saving
	* label position not shown when enabling axis (AxesDialog)
	* "/" for data/function separation in GraphListDialog isn't smart
	* "repaint" redraws always the whole Worksheet	-> flicker
		(Qt::WResizeNoErase, Qt::WRepaintNoErase doesn't work here)
	* crash when exporting to svg via ImageMagick
	* sqrt scale correct ? (distants 0-1 and 2-3 are equal !)
	NOT REPRODUCABLE/STRANGE BUGS :
	? LabPlot crashes when selecting any drawing method on fresh installation
	? LabPlot crashes when libraries are compiled with icc
	? empty MainWindow on Debian  (no menubar, statusbar, etc.)
	? delete in GraphListDialog  deletes other than selected graph

###################################################

Done :
	* native export to svg, eps and more graphic formats
	* polar plots
	* better plot symbols and brush
	* flexible errorbar plotting
	* improved zooming
	* annotate values
	---
	* ternary plot
	* file info dialog
	* reading of netcdf files
	* (de)convolution
	
new BUGS :
	* KImageIO:: export to eps 	-> settings (format, size) ??
	* Crash : "MAX_NR reached" error missing
	* surface data : first line in plot is missing
	* crash when opening file info with compress-fake.nc
	
LabPlot 1.3.1 :
************** 
0.	* support gzipped *.lpl files
		* compress example projects
		* option : write compressed projects
1.	* connect items in Symbol tab (signal changed -> redraw with other color)
2.	* <GType>Plot::Info()	-> how to use ?
3.	* vertical tic label
4.	* fileinfo / import / export Filter for :
		* audiofile formats (aiff,snd,wav) (see audiofile-0.2.5/examples/linuxtest.c)
5.	* import spreadsheet formats ?
		
	* GraphListDialog :
		* select more than one graph
		* delete all selected graphs
	* speed mode : draw only 100/10x10 points of every data set
		* customize nr of points (Configure LabPlot)
	* improve bar charts (stacked, horizontal, ... )
	* Graphlist :		(ListDialog.cc)
		* enable/disable Z,T column for GRAPH3D, etc.
		* set names accordingly
	* Dump dialog
		* only export selected region or choosen rows ???
		* option : zip exported file
		* export to netcdf
	* Ternary Plot :
		* 3 custom axes label
		* minor tics/grid
		(* draw minor tics, grid)
	* "center axis title on axis" button in axes dialog (check centered axis)
	* collect all ::updateRange() in ListDialog ??? (needs ListDialog::ale,ble)
misc :
	* netcdf
		* configure :  include netcdf (if netcdf not found : use included netcdf ?)
	* standard font in "configure LabPlot"
	* QLabel(<text>,<parent>,0)	-> QLabel(<text>,<parent>)
	* Examples
		* polar plot
		* ternary plot
		* interpolation (different types)
	* SAVE & OPEN
		* date in UNIX format ? (seconds ?) (LANG=ru	-> Cyrillic date format; not portable)
		* AnnotateValues
		* PlotPolar
		* PlotTernary
		* GRAPH4D	(Plot.cc : 155)
		* GraphVTK:
			* int object
			* QColor color
			* bool boxed
		* PlotGRASS
			* gisbase, gisrc, location
	* Documentation :
		* screenshots :
			* file info netcdf file
		* delete hint for richtext line breaks
		* pstoedit problems : Ulrich
		* Ron Crouch : new email address
		* alternative download links
			>    ftp://ftp.gwdg.de/pub/linux/misc/labplot/
			>   http://ftp.gwdg.de/pub/linux/misc/labplot/
			>  rsync://ftp.gwdg.de/pub/linux/misc/labplot/
	* SuSE rpm's -> netcdf required
	* speed measurements (speed mode)	-> points / sec reading, etc.
	* Data statistics with no graph -> show message
	* update GraphList in ListDialog, after editing data. EditDialog::apply()
	* export data (Graph2D, Graph3D, GraphM) -> use QProgressDialog in DumpDialog
	* get the index of the double clicked object (for object dialog list index)
	* create LOGO for LabPlot
	* test LabPlot API
		* improve doxygen documentation

LabPlot 1.3.2:
------------------
	* import spreadsheet formats
		-> see export filter of staroffice, kspread
		* kspread, staroffice
	* opaque symbols
	* +,- zoom (5%)	-> see grace
	* gradient plot background / graph background, etc.
		-> use QBrush in newest qt versions
	* EditDialog : evaluate expression with correct names (x,y,z,t) -> (x,y,dx,dy) ???
	* GRASS Plot :
		* plot type
			* plot raster layer
			* plot site layer
		* range ?
	* import images
		* GRAPHIMAGE for directly saving images ?
		* 2d DataDialog : from x-y-z data to surface plot (what about nx and ny ?)
		* use symbol and style if selected in surface 2d data dialog
		* 3d plot (x-y-z & matrix)
		* import into pixmap (rgb, grayscale, palette)
		-> other data format : image ? (short, int, etc.)
		-> image color ?
	* configure / fileinfo / import / export Filter for :
		* ImageMagick formats (fits ? ,hdf ?)
		* fits, hdf5, cdf (when not possible with ImageMagick)
		* more audio formats (libsndfile, use sox)
			* mp3		-> libmp3 ?, libmad ? (RH9:-)
			* ogg		-> libogg ?, sox -> wav
			* flac, shn	-> ?
		* more image formats (see xv, tnimage, gimp)
	* 3D error plots :
		* DataDialog : "x-y-z-dz" (GRAPH4D : 3D error)
		* plot in Plot3D.cc
	* markers (distance, values)
		
####################
GUI/Application:
***************
	* more symbols
		* connect symbol type, fill and color in Dialog::simpleStyle()
		* character as symbols
		* (x/y/x,y) values as symbol
		* more symbols : 26 types (...)
		* more fills : 16 types (center, corner,...)
	* new method for Point3D *data = new Point3D[MAX_POINTS];
		-> use number of lines of a data file ?
	* richtext strings
		* graph label & save/open
	* plot list as submenu in worksheet list
	* project explorer :
		* exchange graphs between plots
		* exchange plots between worksheets
		* delete items
	* better dialogs
		* exclusive buttongroups (enable/disable) when needed
	* Image processing
	 	* make use of ImageMagick++
	* bounded value line edits -> slider	(QSlider)
	* include kghostview menus and toolbars, etc. in print preview (see kgv_part.rc)
		-> how to delete gv part gui elements ?
	* Splashscreen
		-> see kileapplication.cpp
	* configure LabPlot
		* <Action name="worksheet"/>
			before Action "plot" in LabPlotui.rc	(2 times)
		2. ConfigureDialog
			* number of recent files
			* units ?, colors ?
			(* save data in project as link (yes/no))
			(* open new Plot in active Worksheet or in new Worksheet)
			(* Identity ?)
		3. Template for Plot
			* axes, fonts, colors ?
I/O:
****
	* netcdf
		* read matrix data
	* set cbi-->currentItem with re-read data dialog
	* image object : save in project file?
	* use QSA :
		* make LabPlot scriptable (see grace)
		* defined own analysis plugins
		* define fit functions
		* undo possiblity
		* templates? (for inserting data)
		* needs QT > 3.1.2 (RH 9 QT 3.1.1 seems to work too !)
		* SUSE 9.0 : qsa-1.0.1, 9.1 : qsa-1.1.0 
	* seperate data file from project file
		* saving a data file name in a project file instead of the data itself
		* hotlink data
	* contour & density plots from x-y-z ?
	* multiple data files (read all *.dat, etc.)
	* multiple column files (NXY)
	* binary/other data file support
		-> examples/fileformats/
		* piolib, boomerang and blast (see kst)
		* zip, rar compressed
		* matlab, maple , mathematica
		* (origin), (sigmaplot)
	* real time data import
	* import project files
		* grace, kst, kpl
		* (origin), (sigmaplot)

drawing/ data manipulation :
****************************
	* audio file data editing like normal audio programs
	plots :
		* axis position (left,center,right)
		* mask data points : exclude from plotting
		* period or comma as decimal point (configure LabPlot)
		* broken axes
		* fills
			* gradient fill
			* fill region only
		* zoom plot (extra plot as zoom of another plot)
		* legend background/gradient
		* annotated values :
			* use own format and rounding (see axes settings)
		* handle log axis errorbar problems (y=1,dy=2, etc. )
		* place legend automatical in a corner
		* border, tics, grid thickness
		* 3D Plots
			* brush 3d
			* baseline 3d
			* xy-region for 3d integration, fit, etc.
			* convert 3d type to matrix (NX=64 & NY=1 -> NX=NY=8)
			* 3d data (type 3d) -> draw line
			* 3d data -> set nx,ny
			* 3d matrix display : use nx and ny
			* correct boxes style
				* change x,y actranges (not ranges !)
			* colorscale + contour lines (new style type ?)
			* 3d perspective (rotate angle)
			* see known bugs
		* surface plots :
			* third type : vector field plot.
				* data format ?
			* more than 1 graph
			* reading x-y-z data	(gyrodata.dat)
			* filled contour
			* scaled values (z-Axis)
				* logarithmic z-axis ? (legend)
				(contour lines 1e0,1e1,1e2,1e3 )
			* read date/time matrix
			* contour level label
			* improve  legend (0..1)
				* KGradientSelector
				* rbg vs hsv
		* pie plot
			* explode segments
			* segment label
			* segment legend
			* brush
			* scale pie % with plot
			* legend (1 - 12 %, 2 - 27 %,...)
			* round % (using precision ?)
		* polar plot
			* plot minor tics, minor grid
			(* axes scale )
		* GRASS Plot :
			* vector : info, statistics
			* Range ?
			* zoom (x,y,z, +,-), shift
			* GRASSDialog	: all values (like FunctionDialog)
			* layer selection list
				/pub/sw/grass-5.0.3/src/general/manage/inter/list.c
		* VTK plot:
			* data ?
			* 2d, 3d plot
		* more plot types
			* Pie3D plot
			* Polar3D plot	(r,theta,phi)
			* GIS Plot :
				* GDAL/OGR library	->
					* GeoTiff, Erdas Imagine, Arc/info binary/ascii, SDTS raster, USGS ascii, grass raster, ...
				* see QGIS: ESRI shape files (*.shp)
			* xy chart (xmgrace)
			* smith plot
			* implicit plot (x+2*y=1)
			* space curve (sin(t),t=0..10) (cylinder coordinates r,phi,z)
			* rose plot (polar histogram)	[-> wind directions]
			* polar contour
		* fill only region of a graph
		* support x=f(y) plots (f(x)=sin(y))
		* select datapoints with cursor
		* plotting surface : use pixmap and put it on the screen
		* scale plots with worksheet (fullscreen, lower, resize)
	axes :
		* axis tic label in PI (0,PI,2PI), hexadecimal, binary (000 001 010 011 100 101 110 111)
		* flip x-y graph
		* shifting 3d axes with mouse
		* db axis scale (exp+log)
		* reciprocal (1/x) scale
		* shifting of 3d Axes with mouse ?
		* grid, ticks and numbers : in or out of plotarea
		* 3D axes scale	log10,log2,ln,sqrt
			* axes x,y,z	(Plot3D.cc::drawAxes())
			* data	(Plot3D.cc::drawCurves())
			* special axes tic label
		* minor tic label (?)	(for log10)
		* use major tic number (?)
	analysis :
		* substract, add data & functions
		* all :
			* smooth		: 2derr, 3d, matrix		2DSurface, 3D
			* prune		: 2derr, 3d, matrix		2DSurface, 3D
			* hist		: 2derr, 3d, matrix		2DSurface, 3D
			* diff		: 2derr, 3d, matrix		2DSurface, 3D
			* int			: 2derr, 3d, matrix		2DSurface, 3D
			* reg	ression	: 2derr, 3d, matrix		2DSurface, 3D
			* fft			: 2derr, 3d, matrix		2DSurface, 3D
			* fit			: 2derr, 3d, matrix		2DSurface, 3D
			* interpolation
			* convolution
		* FFT
			* inverse ( gsl_fft_complex_inverse/ fftw REDFT00,RODFT00, etc.)
			* data window
			// halflen (all values)
			// amp_correction
		* nonlinear fitting
			* custom fit function
			* guess initial parameters
		* regression :
			* non linear	:
				* a*x^b,a*exp(b*x),a+b*ln(x),1/(a+b*x)
			* weighted	:
				* 1/dy^2 (2derr), custom (function)
			* 2derr data -> weight = 1/dy^2
		* differences		(dy(x))
			* use gsl numeric differences
		* integrate
			* gsl numerical integration
			* weighted
			* use the correct function if available	(checkbox) -> undefinite integral (?)
		* histogram :
			* weighted	: gsl_histogram_accumulate (h,x,weight)
				-> weight what ?
		* (de)convolution of two data sets
			* check values of convolution (y-value)
			* use fftw too
			* use mixed radix fft 
		* autocorrelation/crosscorrelation	-> see kst
		* extrapolate ?
		* peak find
		* smooth Savitzky-Golay (point-wise polynomial fit)
	misc :
		* arrange plots axes to axes |1|2|3|4|
		* world/viewport coordinates
			* range from 2..4 in graph
		* fill of steps and boxes
		* supporting errorbars in 3D
		* 3D view changes (angles)
		* select range by mouse
		* lens (zoom by mousearea)
		* Style in Dialog : show symbols (draw it)

misc :
*****
	* tex style support for strings
	* use STL contructs for some critical objects (see C++-Unleashed & SGI docu)
	* C functions -> C++ (sprintf, etc.)
	* animations

Docs :
*****
	* more languages (using dictionaries ?)
	* Tutorial :
		* worksheet,plot,graph label,tics,etc.
	* add more "WhatsThis" infos
FAQ :
	* Debian libGl.la, libGl.so problems
