[c16582]: TODO Maximize Restore History

Download this file

TODO    125 lines (74 with data), 3.8 kB

o playback: get error messages out of the thread

o create a ThreadCondition class for synchronizing

o use a MenuManager in the plugins (e.g. sonagram)

o resample signal before inserting into a signal with a different sample 
  rate (when doing copy/paste)

o channel mixing dialog

o amplifymax does not work

o amplifyclip does not work

o feature "pulse train" is not yet implemented

o move label handling to class LabelManager

o SignalProxy1 and SignalProxy should be merged

o SignalProxy1 implementation is very inefficient for simple data types
  like bool, char, int etc. Uses to much new/delete.

o links to the kwave help: do recursive cleanup in rpm's %postun section

o check at program startup: does the help directory exist? If not, show
  a message and make a symbolic link

o in some rare cases there are deadlocks if a plugin's thread does not
  respond to stop() and has to be shut down. This blocks the whole
  application. However, this should never happen if all plugins can
  shut down synchronously / per stop()

o look at CurveWidget::CurveWidget()
o ProgressDialog::timedProgress()
o SignalWidget::appendLabel()
o ClipBoard::toWindow()
o SonagramWindow::toSignal()

o in CurveWidget: something goes wrong when mirroring to left

o possible memory leaks due to controls/menus in CurveWidget, FFTWindow

o possible memory leak in MultiStateWidget: when do the images get released ?

o review all calls to DynamicLoader::getDialog, in: FFTWidget

o ClipBoard::appendChannel should append a _copy_ of the channel instead
  of the channel itself (problem if channel gets deleted!)

o search for plugins and other files only in the global directory,
  use the .kde structure in the user's home directory too

o bugfix: crash on "additive synthesis"

o some commands do not work: fft, averagefft, options/menu,
  options/memory, distort

o bugfix: channel mixer dialog causes segmentation fault -> disabled

o amplifyfree: interpolation type is ignored (by SignalManager ?), always
  uses linear interpolation

o use standard KDE accelerators (see KStdAccel)

o playback with 24 and 32 bit (or 18, 20 bits) -> maybe needs ALSA support

o re-enable usage of memory mapped files

o make a menu group for @SELECTION

o import of multi-channel ASCII files

o label handling doesn't work (currently disabled), work on LabelManager
  has started

o the clipboard does not work between other kwave instances

o splitting of i18n for kwave, libgui and each plugin

o more complete i18n

o internationalization for other languages than german

o use the KDE's clipboard

o support for KDE's session management

o find the reason for that short noise at the end of playback
  (does not occur when the selected range ends with some silence !)

o fix bug in Fx->Periodic Silence (segmentation fault)

o pluginize/ put into library  the following files in src/ :
  mdialog_sweep.cpp mdialog_frequency.cpp mdialog_fixedfreq.cpp addsynth.h 

o context menu for right mouse button in SignalWidget

o macro recorder

o positioning the cursor to start/end of the file with Pos1 / End

o >>> COMPLETE DOCUMENTATION OF THE WHOLE API <<<

o globally use the data types from sys/types.h instead of just "int"

o somewhere in far future: compile on architectures with a different
  size of int (not 32-bit), handle data in original data width

o use some audio library, like libasound for import/export of other
  file formats

o plugins for import/export of different file formats (e.g. MP3)

o error handling in SignalWidget/Manager needs complete rework !
  -> see next issue "how to work with exceptions"

o figure out how to work with exceptions:
  - works if ALL libraries use rtti and we compile with -frtti
  - does never work with --no-rtti
  - the program doesn't link under RedHat with -frtti
  => no rtti and no exceptions :-(