KiCad TODO List
===============

WXMAC Platform
--------------
* Fix hotkey list to match CMD key
* Fix AddHotkeyName to let wxWidgets handle Ctrl to CMD key
* Fix toolbar button tooltips.

Common
------
* Grep for @TODO or TODO for sourcecode tasks
* Use doxygen compatible comments on member functions (.h files)
* Add tooltip text to all non-obvious controls in every dialog window.
  Use wxFormBuilder.
* Component and module search displays in which library the
  module or component lives.
* List auto up and down scrolling.
* Push file open semantics down to one of the base frame classes ( likely candidate is
  WinEDA_BasicFrame ) so that file open behavior is consistent across all applications.

* Look over Brian's python BOM generation scripts, which are now in
  scripts/python/ky and sort them out, and get something into the installation as well.
  Code came from Brian in this posting's attachment, which is ky2.zip:
  https://lists.launchpad.net/kicad-developers/msg06763.html
  but is now in scripts/python/ky temporarily.


EESchema
--------
* Drag and drop between two EESchema windows.

Wayne:
E2)  Finish adding replace capability to new Find dialog.
E3)  Hook up perform last library search hot key to replace search libraries for
     component support removed from find dialog.
E4)  Change add component dialog search text control to combobox and add component
     search history save and restore capability.  Also add session save and restore
     to component history list control.  Add advanced search capability similar to
     new find dialog.
E6)  Start initial work for changing component library file format to use Dick's
     dsnlexer.  See note C2 above.  Come up with a workable library file format to
     handle the wishes of the library implementation group.  Add initial clipboard
     support to the library editor.



PCBNew
------

* Make the zone hit testing be done in screen coordinates, not internal units.
  See the @todos in class_zone.cpp


Dick's Peronal TODO Items  (Last Update: 20-Feb-2012)
-----------------------------------------------------
1) Finish removing global access requirements from KICAD_PLUGIN, so that:
   *)   a BOARD is a fully self contained document description.
   *)   plugin developers do not have to access globals, which assumes there were ever
        only be one BOARD in RAM.  Problems remain with BASE_SCREEN and PLOT params.

2) Extend PLUGIN API to facillitate loading and saving of modules.

3) Switch to PLUGIN, kill off ioascii.cpp and item_io.cpp, deleting them.

4) Check back with Vladimir about finishing the nanometer work.

5) Do an s-expression PCBNEW PLUGIN at least the output side for discussion,
   assuming Wayne does not get to this first.

6) Do an EAGLE XML import PCBNEW PLUGIN, and possible add export support to it.
   This is PLUGIN::Load() and maybe PLUGIN::Save().

7) Get back to the SWEET work.

