Moved all library entry manipulation code scattered throughout EESchema into
the component library object itself. Adding, removing, and searching is now
handled by the library object. This is the precursor to replacing the current
priority queue code.
================================================================================
+eeschema
* commiting my changes to allow multiple instances of a given schematic file within
a hierarchy:
** internally, m_currentScreen has been replaced with m_currentSheet,
which is a list or 'path' of screens. The path of screens is used to
generate
a series of timestamps, which is converted to flat component reference via
a look-up
table in the schematic files.
** this means that m_currentScreen is no longer used -- use GetScreen().
** GetScreen is virtual, as some of the dialogs keep around a WinEDA_BaseScreen
pointer.
** all sub-sheets in a given schematic must have different names to generate a
meaningful netlist.
* fixed a bug in hierarchal shematics where a loop (e.g. same file included at different points in the
hierarchy) would cause infinite memory use.
* added a edit footprint hotkey to eeschema, since it seems I'm always editing '0603' '0402' etc. on the
common components, and it was difficult to edit this information before.