kicad/TODO.txt

85 lines
3.5 KiB
Plaintext
Raw Normal View History

KiCad TODO List
===============
2010-01-18 19:33:45 +00:00
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.
2010-03-08 19:43:29 +00:00
* 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
------
2010-01-24 02:07:40 +00:00
++PCBNew * Removed Pcb_Frame argument from BOARD() constructor, since it precludes having a BOARD being edited by more than one editor, it was a bad design. And this meant removing m_PcbFrame from BOARD. * removed BOARD::SetWindowFrame(), and BOARD::m_PcbFrame * Removed the global BOARD_DESIGN_SETTINGS which was in class_board.cpp * added BOARD_DESIGN_SETTINGS to the BOARD class, a full instance * a couple dialogs now only change BOARD_DESIGN_SETTINGS when OK is pressed, such as dialog_mask_clearance, dialog_drc, etc. * Removed common/pcbcommon.cpp's int g_CurrentVersionPCB = 1 and replaced it with build_version.h's #define BOARD_FILE_VERSION, although there may be a better place for this constant. * Made the public functions in PARAM_CFG_ARRAY be type const. void SaveParam(..) const and void ReadParam(..) const * PARAM_CFG_BASE now has virtual destructor since we have various way of destroying the derived class and boost::ptr_vector must be told about this. * Pass const PARAM_CFG_ARRAY& instead of PARAM_CFG_ARRAY so that we can use an automatic PARAM_CFG_ARRAY which is on the stack.\ * PCB_EDIT_FRAME::GetProjectFileParameters() may no longer cache the array, since it has to access the current BOARD and the BOARD can change. Remember BOARD_DESIGN_SETTINGS are now in the BOARD. * Made the m_BoundingBox member private, this was a brutally hard task, and indicative of the lack of commitment to accessors and object oriented design on the part of KiCad developers. We must do better. Added BOARD::GetBoundingBox, SetBoundingBox(), ComputeBoundingBox(). * Added PCB_BASE_FRAME::GetBoardBoundingBox() which calls BOARD::ComputeBoundingBox()
2011-12-05 06:15:33 +00:00
* Make the zone hit testing be done in screen coordinates, not internal units.
See the @todos in class_zone.cpp
2012-04-24 14:23:41 +00:00
Dick's Peronal TODO Items (Last Update: 24-April-2012)
2012-02-20 15:21:42 +00:00
-----------------------------------------------------
2012-04-24 14:23:41 +00:00
1) Work through some scroll, pan, zoom overflows in PCBNEW's nanometer build mode.
It is thought that if we can constrain the virtual IU space to within
INT_MIN to INT_MAX then a whole host of other problems will go away. Most
of the evil is in EDA_DRAW_FRAME::AdjustScrollBars() which assumes the
virtual IU space is infinite. This function triggers a movement of the
viewport within the virtual IU space and also a change in size of the virtual
IU space. Once this happens, you can end up thinking there are problems in
functions like EDA_DRAW_PANE::DrawCrossHair(), but this may be an artifact
of having traveled outside a limited virtual IU space.
2012-04-24 14:23:41 +00:00
2) Check that the new load visibility BOARD settings is properly setting the toolbar
2012-03-12 15:18:32 +00:00
buttons like show grid or ratsnest. Add PCB_EDIT_FRAME::SetVisibleElements() so
toolbar crap is not known to a BOARD.
2012-04-24 14:23:41 +00:00
3) 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, since a plugin could
very well be a dynamically loaded DLL/DSO.
2012-04-24 14:23:41 +00:00
One final problem remains with BASE_SCREEN's grid origin, easy solution is to
move just that one field into the BOARD.
2012-02-20 15:21:42 +00:00
2012-04-24 14:23:41 +00:00
4) Do an EAGLE XML import PCBNEW PLUGIN, and possibly add export support to it.
2012-02-20 15:21:42 +00:00
This is PLUGIN::Load() and maybe PLUGIN::Save().
2012-04-24 14:23:41 +00:00
5) Get back to the SWEET work.
2012-02-20 15:21:42 +00:00