kicad/TODO.txt

120 lines
4.1 KiB
Plaintext

KiCad TODO List
===============
CMAKE
-----
* Add install targets for binaries and resources on Mac.
* Add Python.
WXMAC Platform
--------------
* Fix hotkey list to match CMD key
* Fix AddHotkeyName to let wxWidgets handle Ctrl to CMD key
* Fix About dialog crash, or trash wxAboutDialog and create our own
About dialog to match all platforms. (wxAboutDialog different on platforms)
* 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.
Need to do this using DialogBlocks.
* Component and module search displays in which library the
module or component lives.
* List auto up and down scrolling.
* Integer/long/double input boxes should handle comma and dot separated values,
not only comma.
CvPCB
-----
* Preview of the already assigned footprint.
EESchema
--------
* Use collector classes.
* Drag and drop between two EESchema windows.
GerbView
--------
* Need work as good as gerbv from gEDA
* Named layers
* List control for layer sort on the fly
* Add excellon2 drill file support (small good library)
* Fix the polygon bug.
* Switch to use ZONE instead of SEGZONE for polygons.
KiCad
-----
Add to the Wiki what the minimum screen size resolution requirement is to run
Kicad, so that people do not try and use the program and then whine that they
cannot see everything they need. We cannot make everyone happy, and by trying
to make those with crappy computers happy, we risk making those with high res
computers unhappy. Establish a minimum, then ignore support complaints coming
from folks with less than that minimum.
PCBNew
------
P1) Fix the color box which shows which layer is selected, or change tool tip.
It is not tracking layer changes. Look into WinEDA_PcbFrame::syncLayerBox(),
which is probably where fix should go.
* Fix block copy/move preview to not view only a border, we should
see the moved/copied parts.
* Fix DIALOG_PAD_PROPERTIES_BASE class to use actual layer names in the BOARD.
* Use BOARD_ITEM::MenuIcon() in the onrightclick.cpp
* Document specctra round tripper, and fix the english translation of help.
* Add ARC support to gerber polygons.
* Need to add polygon aperture type.
Then example 2 in RS274xrevd_e.pdf will draw properly.
* Complete the migration to PCB_VISIBLEs and put them into the board,
including grid, so they are saved with a board. All drawing code should
use BOARD::IsElementVisible() to test, not the EDA_BoardDesignSettings
functions for anything in the PCB_VISIBLES enum. Then eventually we
can remove the elements that are contained in the set PCB_VISIBLES from
the EDA_BoardDesignSettings and simply leave them in the BOARD.
* Write accessors for grid control, so that the write accessor can fire
change notifications to known listeners. But again, grid boolean should
be in the board and accessed via BOARD::IsElementVisible( GRID_VISIBLE );
* Figure out why BOARD::IsElementVisible( PAD_{FR,BK}_VISIBLE ) is never tested,
and why the pads cannot be turned off. Did something get broke?
* Via visibility does not respond to the LAYER_WIDGET.
Dick:
* Get the nested quote support for DSNLEXER fixed up and committed.
LAYER_WIDGET for PCBNEW
-----------------------
L5) Add to moved popu menu code the ability to save the current layer widget
color and enable settings with an additional menu item.
L6) Test, and fix up any remaining issues with the PCB_VISIBLE support, several
items which are stored on globals could and should be stored in
EDA_Settings.m_VisibleElements using enum PCB_VISIBLE. Initial Render
checkbox settings are probably not correct, for example grid.
L7) make the bitmapbutton a staticbitmap, and make its size dependent on
the point size.
L8) LAYER_WIDGET::GetBestSize() needs platform independence.
L9) On board load, ReFill() is called, this should also update the Render
checkboxes and colors. Will need to extend the widget API.
Dick:
L9) still thinking about background colors, easier now without wxformbuilder.