#****************************************************************************
#*                           ReleaseTargets.txt
#*
#* Author: Matthew Ballance
#* Desc:   Lists functionality to be targetted by future releases
#****************************************************************************


#********************************************************************
#* 0.2
#********************************************************************
- Provide stable basic simulation and wave viewing
- Support for Linux, Mac OS X, and Solaris
- Requires a patched Icarus Verilog distribution

    #****************************************************************
    #* 0.2
    #****************************************************************
    - change wave cursor to 'resize' when in zoom mode

#********************************************************************
#* 0.3
#********************************************************************
- Adds platform support for Windows
- Removes the requirement for a patched Icarus Verilog distribution.
- Adds simulation close and restart support


    #****************************************************************
    #* 0.3-pre-20030722
    #****************************************************************
*   - Re-implement value formatting (radix)
*       - binary
*	- hexadecimal
*	- octal
*	- string
*	- decimal
*   - Fix time-scale for new VVP RemoteSim
        - done - 20030709
*   - Fix BWidget background colors and padding
        - see Notebook internal padding
	    - done - changed to 2 (from 10) for now
*   - Change PanedWindow back to use "windows"-style resize bars
        - done - 20030709: also reduced width slightly
*   - Deleting SDB doesn't complete removal of SDB pane 
        - fixed... A <Destroy> binding in the SigWindow was accidently 
	  destroying the NoteBook
*   - Remove cursors from wave on close?
        - At least clarify the expected behavior here...
	-> Cursors are part of the waveform, and not related to the source of
	   the waveform data
*   - "Add Separator" dialog should center over wave window
*   - Must fix SDBR/SDB resolution: apparently, remote SDB doesn't get
      resolution properly from Sim
*   - Expanded-trace lists bit values in incorrect order
*   - when zooming, the cursor must change to reflect the current operation
*   - Simulator run period must be specifiable in all units >= current.
        - For example, "run 10 ms" should be supported
*   - Command pane doesn't resize with toolbar...
*   - StubDFIO doesn't handle bit ordering correctly
*   - License window depends on ivi_global(menu_font) being set


    #****************************************************************
    #* 0.3-pre-200308XX
    #****************************************************************
    - Complete cursor-drag value list
        - changing the signal list kills the values
    - Decide how to handle no-cursor value list
*   - Ensure that the 'strlen' malloc fix makes it into the verilog patch
      (vvp/main.cc)
    - Add simulation-control toolbar (allow tearoff?)
        - should have 
*	    - simulation-run (forever)
*	    - simulation break
	    - simulation step
*   - Save enum set to wave-format file
*   - Complete enum editing support
*   - Add mult-sim support to SimMgr and the 'SimCmds' namespace
*   - Enum values >= 10 are clobbered. Seem to grow each time they are 
      retrieved from the hash...




*   - Implement wave preferences dialog (pick colors, etc)
    - Fix "losing cursor off window"
    - Add multi-level configuration 
        - system-wide
	- user
	- project-wide
	- session-wide
    - Allow saving of configuration to a file (modified settings)
    - Complete wave-printing support
        - fix portrait printing
	- fix trace-slop
	- Support drawing cursors...
	- Appears to be large shaded rect on first expanded signal
	- Add vert separator between trace names and signals
    - Add signal-expression breakpoint functionality
    - Support some sort of expression builder (typing long expressions 
      can be tedious)
        - maybe, just want the ability to find signals hierarchically rather
	  than typing the full path names
	- builder would also support a "reference" to the constructs 
	  available
    - Want a summary window/box for info on current breakpoints
    - Support sub-bit cursor snapping: cursor currently only snaps to 
      'major' signal transitions. Cursors should also snap to a sub-bit
      transition
    - Simulation "finish" should grey out the command window
    - Must support rename of separators
    - Opening a design with one already should pop a "close existing"
      confirmation dialog...
    - Need a means to notify the user that simulation is occuring
        - grey out certain icons
    - Create a command manager. The idea is the create a coherent collection
      of commands and results such that various "consoles" maintain a 
      coherent view...
    - Finish fixing bindings
        - binding fixes are required for better cursor support...
    - Set IVI icon on all top-level windows
    - Set IVI icon on application
    - Fix bug with signal display for signals added to the waveform after 
      time zero.
    - Fix wave scrollbar stepping. Currently, I think it steps by pixels.
      This is just too small when zoomed out...
    - Redo DesignDB
       - Want a core object that handles the tree, but doesn't do any 
         scanning
*   - Signals l:h don't display correctly (ie signal[0:31])
    - Wave window should preempt redraw in the case of position change 
      during repaint
    - Fix DFIO search bug for signals that have last transition prior
      to the wave display start...
    - Don't update all signal-values on cursor-move. With lots of signals, 
      this can be a slow process...


    ColorPrefs TODO
    -------------------

*   - Add new color-schemes to selection comboboxes immediately
*   - Save WidgetDefaultScheme to user-prefs
*   - Configure signal-list fg/bg based on color-scheme
*   - Cursor sel/unsel width isn't correct (both 1 pixel)

    Required for 200310XX Release
    -----------------------------
    - Change name of wave windows from 'Window[0-9]+' to 'IVI Wave Window[0-9]+'
*   - Scroll window currently operates on 'current' wave (uses 'wave' command). 
      _MUST_ change to attach to window that was opened from.
*   - Add console manager and stdin console. This will facilitate testing...


    - Get GHDL support released


    Required For Release
    -------------------
    - Simulation toolbar working
*   - StubDFIO bit ordering fixed...


    Next 0.4 release
    ----------------
    -   Support value-change compression on the wave window. Basically, this
      means that invisible changes (changes that take less than 2 pixels)
      are not drawn in detail. A sequence of these invisible deltas is 
      compressed and displayed as a solid rectangle...
        This should improve graphics performance, give better printing
	support.
