Chris Pavlina f8415633bd Switch component chooser to wxDataViewCtrl, refactor
This refactors COMPONENT_TREE_SEARCH_CONTAINER into a Model-View-Adapter
architecture comprising:

- eeschema/cmp_tree_model.h
    - CMP_TREE_NODE: Base class representing a searchable library
        set with scoring and sorting

        - CMP_TREE_NODE_UNIT
        - CMP_TREE_NODE_ALIAS
        - CMP_TREE_NODE_LIB
        - CMP_TREE_NODE_ROOT

- eeschema/cmp_tree_model_adapter.h
    - CMP_TREE_MODEL_ADAPTER: mediator between wxDataViewCtrl (via
        wxDataViewModel) and CMP_TREE_NODE*

                   +---+                      +------------------+
 +---+  Generates  | A |                      |       VIEW       |
 | M |  from libs  | D |   wxDataViewModel    |------------------|
 | O | <---------- | A | <------------------> |  wxDataViewCtrl  |
 | D |             | P |                      |------------------|
 | E | <---------> | T | <------------------- |    wxTextCtrl    |
 | L | UpdateScore | E | UpdateSearchString() |------------------|
 +---+             | R |                      |                  |
                   +---+                      +------------------+

Representing the data with a proper model allows the wxDataViewCtrl to
be updated in bulk, which is significantly faster than the old method of
populating it one item at a time. This also adds flexibility if more
data is to be added in the future (which may come in handy with the
upcoming .sweet format, as that adds more ways components can be related
to each other).

Replacing the wxTreeListCtrl with a wxDataViewCtrl also significantly
reduces the general GUI quirkiness, as wxDataViewCtrl is much more well
behaved.
2017-03-06 09:50:48 -05:00
2017-02-22 08:53:36 +01:00
2017-03-03 14:18:25 +01:00
2016-10-07 16:52:52 +02:00
2017-03-03 14:18:25 +01:00
2017-03-01 14:55:21 +01:00
2017-01-23 09:08:22 -05:00
2010-02-14 14:59:43 +00:00

KiCad README
============
For specific documentation like Compiling, GUI translation, old
changelogs see the Documentation subfolder.

Files
-----
AUTHORS.txt       - The authors, contributors, document writers and translators list
CMakeList.txt     - Main CMAKE build tool script
COPYRIGHT.txt     - A copy of the GNU General Public License Version 2
CTestConfig.cmake - Support for CTest and CDash testing tools
Doxyfile          - Doxygen config file for KiCad
INSTALL.txt       - The release (binary) installation instructions
TODO.txt          - Todo list (looks outdated)
uncrustify.cfg    - Uncrustify config file for uncrustify sources formatting tool

Subdirectories
--------------
3d-viewer         - Sourcecode of the 3D viewer
bitmap2component  - Sourcecode of the bitmap to pcb artwork converter
bitmaps_png       - Menu and program icons
CMakeModules      - Modules for the CMAKE build tool
common            - Sourcecode of the common library
cvpcb             - Sourcecode of the CvPCB tool
demos             - Some demo examples
Documentation     - Developer documentation. Old changelogs etcetera.
eeschema          - Sourcecode of the schematic editor
gerbview          - Sourcecode of the gerber viewer
helpers           - Helper tools and utilities for development
include           - Interfaces to the common library
kicad             - Sourcecode of the project manager
lib_dxf           - Sourcecode of the polygon library
new               - Staging area for the new schematic library format
pagelayout_editor - Sourcecode of the pagelayout editor
patches           - Collection of patches for external dependencies
pcbnew            - Sourcecode of the printed circuit board editor
plugins           - Sourcecode of the new plugin concept
polygon           - Sourcecode of the polygon library
potrace           - Sourcecode of the potrace library
qa                - Testcases using the python interface
resources         - Resources for freedesktop mime-types for linux
scripting         - SWIG Python scripting definitions
scripts           - Helper scripts for various things
template          - Project and pagelayout templates
tools             - Other miscellaneous helpers for testing
utils             - Small utils for kicad, e.g. IDF tools

Description
No description provided
Readme GPL-3.0 2 GiB
Languages
C++ 61.9%
C 36.3%
CMake 0.8%
Python 0.6%
SWIG 0.1%