kicad/include
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
..
core Pcbnew: major swig fix. 2016-07-18 13:23:09 -04:00
gal Add WithAlpha method to COLOR4D 2017-03-02 13:58:20 +01:00
geometry router: snap to clearance boundaries in Highlight Collisions mode 2017-01-19 17:47:15 +01:00
kicad_curl GitHub plugin: fix threading issues when libcurl is build against openssl. 2016-01-14 10:17:13 -05:00
math Refactor COMPOSITOR/OPENGL_COMPOSITOR to enable customization of scene rendering and presentation 2017-01-11 16:20:35 +01:00
plugins Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
tool Store VIEW_CONTROLS settings on a stack 2017-03-06 15:04:27 +01:00
ttl Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
view Store VIEW_CONTROLS settings on a stack 2017-03-06 15:04:27 +01:00
widgets Fix FOOTPRINT_PREVIEW_PANEL loader thread synchronization 2017-03-05 22:22:25 -05:00
base_struct.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
base_units.h Fix a bunch of misspellings of length. 2016-07-10 23:09:18 -04:00
basic_gal.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
bezier_curves.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
bin_mod.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
bitmap_types.h Move bitmaps.h out of base_struct.h 2017-02-21 09:50:15 -05:00
bitmaps.h Move bitmaps.h out of base_struct.h 2017-02-21 09:50:15 -05:00
block_commande.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
build_version.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
class_base_screen.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
class_bitmap_base.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
class_board_design_settings.h Remove a few coverity warnings. Fix some comments which were incorrect, due to the changes in code. Remove not compiled code (kept as comments), now outdated or useless 2015-03-13 17:48:42 +01:00
class_board_item.h Fixed a crash on finishing line drawing in the legacy FP editor 2016-12-13 17:25:34 +01:00
class_collector.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
class_colors_design_settings.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
class_draw_panel_gal.h Component chooser: event and focus cleanup 2017-03-04 11:14:04 -05:00
class_drawpanel.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
class_drc_item.h Fix uninitialized member in DRC_ITEM constructor. 2014-08-16 14:12:11 -04:00
class_eda_rect.h 3D Viewer: complete refactor of the 3D viewer. 2016-07-19 13:35:25 -04:00
class_layer_box_selector.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
class_marker_base.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
class_page_info.h Move the non shared file class_sch_screen.h to eeschema folder. Code cleaning. Remove some wxCHECK_VERSION tests now useless. 2015-07-29 20:06:45 +02:00
class_pcb_screen.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
class_title_block.h Removed a few more headers from base_struct.h 2017-02-22 17:54:01 +01:00
class_undoredo_container.h Unified undo buffer handling code for PCB & module editor. 2016-09-12 11:50:06 +02:00
class_worksheet_dataitem.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
colors.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
colors_selection.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
commit.h Added possibility to disable undo entries creation in COMMIT/BOARD_COMMIT 2017-03-03 20:26:34 +01:00
common.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
config_map.h Sanitise incoming GAL config options using mapping tables 2017-02-20 10:52:34 +01:00
config_params.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
confirm.h Clean up includes in confirm.cpp, confirm.h 2016-01-18 00:17:56 -05:00
convert_basic_shapes_to_polygon.h Prepare rounded rect and custom shaped pads: add plot functions. It fixes also a pcbnew crash in HPGL mode when plotting trapezoidal pads. 2016-02-10 17:02:40 +01:00
convert_to_biu.h convert_to_biu: Changed defines & functions to constexpr 2016-12-12 16:45:52 +01:00
dialog_env_var_config.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
dialog_get_component.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
dialog_helpers.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
dialog_hotkeys_editor.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
dialog_shim.h MACOS Setfocus and CancelButtonIssue moved into dialog_shim. 2017-01-29 23:51:35 +01:00
dlist.h Refinement to commit #4993. 2014-07-14 16:43:21 +02:00
draw_frame.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
drawtxt.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
dsnlexer.h More Coverity scan error fixes. 2015-02-22 16:25:29 -05:00
eda_dde.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
eda_doc.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
eda_pattern_match.h Switch component chooser to wxDataViewCtrl, refactor 2017-03-06 09:50:48 -05:00
eda_text.h Changed COLOR4D defines to static consts 2017-02-22 17:35:00 +01:00
fctsys.h removed wx carbon include in fctsys as it is unnecessary 2015-12-12 23:03:35 +13:00
filter_reader.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
footprint_info.h Replace BOOST_FOREACH with C++11 range based for. 2016-06-29 16:07:55 -04:00
fp_lib_table.h Make footprint ID into a generic library ID. 2016-11-20 18:35:08 -05:00
frame_type.h Revamp component chooser and add footprint preview 2017-02-18 21:39:55 -05:00
gbr_netlist_metadata.h Gerbview: locate item now does not take in account not visible layers. Remove an unused file 2016-08-19 09:45:59 +02:00
gestfich.h Default and most recently used path fixes. (fixes: 1494210) 2015-09-25 15:38:09 -04:00
gl_context_mgr.h Reverted 6912 with minor changes (LockCtx requires to specify canvas that locks a context). 2016-06-13 16:43:33 +02:00
gr_basic.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
grid_tricks.h *) Factor out Cut, Copy, and Paste for wxGrid into class common/GRID_TRICKS. 2013-10-23 13:56:03 -05:00
hashtables.h Pcbnew: major swig fix. 2016-07-18 13:23:09 -04:00
hotkeys_basic.h Add zoom-to-selection tool 2016-06-08 07:19:53 -04:00
html_messagebox.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
i18n_utility.h Try to fix a compil issue on OSX (no viable conversion from 'const wxString' to 'const wxChar *', in colors.cpp) 2016-05-17 09:10:15 +02:00
id.h Make show/hide icons in menus a run time option, instead of compil option. 2017-03-02 15:45:54 +01:00
import_export.h Use _WIN32 instead of __MINGW32__ in 2 conditional compilations which are Windows specific, not especially mingw32 specific. 2016-03-01 16:55:44 +01:00
incremental_text_ctrl.h Add a class to govern an "incrementing" text control 2017-02-20 10:52:34 +01:00
ki_exception.h Add SWIG support for NETCLASSPTR. Reduce SWIG visibility from C++ headers. 2016-09-21 19:52:04 -04:00
ki_mutex.h More missing source license fixes. 2014-10-22 11:51:34 -04:00
kicad_device_context.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
kicad_string.h Display more information in component selector 2017-02-07 15:01:20 -05:00
kiface_i.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
kiway.h Make show/hide icons in menus a run time option, instead of compil option. 2017-03-02 15:45:54 +01:00
kiway_express.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
kiway_mgr.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
kiway_player.h Icons options menu: code rework 2017-03-03 14:18:25 +01:00
layers_id_colors_and_visibility.h Fix shadowed warnings with overzealous compilers 2017-02-23 13:17:23 +01:00
length.h.usuned Namespace KiGfx->KIGFX. 2013-10-14 16:13:35 +02:00
lib_id.h Eeschema: fix schematic I/O plugin symbol name issue. 2017-02-11 13:44:17 -05:00
lib_table_base.h Make the schematic I/O plugin the only option. 2017-02-10 08:36:57 -05:00
lru_cache.h 3D Viewer: complete refactor of the 3D viewer. 2016-07-19 13:35:25 -04:00
macros.h EDA_TEXT object refactor. 2017-01-25 08:03:32 -05:00
mail_type.h Remove excessive schematic symbol library re-linking. 2017-03-04 16:02:33 -05:00
make_unique.h Add C++14-style std::make_unique 'polyfill' for C++11 2017-01-23 11:41:00 +01:00
menus_helpers.h Make show/hide icons in menus a run time option, instead of compil option. 2017-03-02 15:45:54 +01:00
msgpanel.h Changed COLOR4D defines to static consts 2017-02-22 17:35:00 +01:00
newstroke_font.h Fix incorrect (too small) bounding box EDA_TEXT, noticeable when chars like j or { are used in zone fill functions. 2016-03-11 13:08:34 +01:00
observable.h OpenGL antialising code clean up & formatting 2017-01-11 16:20:37 +01:00
origin_viewitem.h fixed post-rebase issues 2016-12-12 16:45:52 +01:00
pad_shapes.h Remove duplicate definitions only needed only by old python wizards. No more useful in master branch, since a long time. 2016-11-25 13:30:11 +01:00
painter.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
pcb_draw_panel_gal.h Fixed VIEW_ITEM memory leaks 2017-03-02 23:57:13 +01:00
pcbstruct.h pcbnew legacy: remove option to hide via drill 2016-05-10 16:47:37 -04:00
pgm_base.h Icons options menu: code rework 2017-03-03 14:18:25 +01:00
plot_auxiliary_data.h Prepare Plot Gerber file to include advanced aperture and net attributes. 2016-09-19 13:01:36 +02:00
plot_common.h Changed COLOR4D defines to static consts 2017-02-22 17:35:00 +01:00
profile.h Performance counter: use correct std::chrono clock 2017-01-06 09:54:38 -05:00
project.h Resync with main branch r6482 2016-01-16 19:10:53 +11:00
properties.h Store information about buffering & caching in properties 2017-02-28 15:18:58 +01:00
ptree.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00
reporter.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
richio.h Explicitly mark overriding functions. 2016-09-24 14:53:15 -04:00
scoped_set_reset.h Add context menu to GAL DRAWING_TOOL, including the zone menu 2017-01-11 10:41:08 +01:00
search_stack.h Fix windows help path bug. (fixes lp:1313412) 2015-09-20 14:23:17 -04:00
streamwrapper.h Fix compil issue on Windows 2017-03-04 17:35:33 +01:00
trigo.h EDA_TEXT object refactor. 2017-01-25 08:03:32 -05:00
utf8.h Pcbnew: major swig fix. 2016-07-18 13:23:09 -04:00
validators.h Envrionment variable dialog improvments. 2015-08-16 20:30:29 -04:00
wildcards_and_files_ext.h KiCad: add html file support to tree view. 2015-06-24 15:30:35 -04:00
worksheet.h Change from EDA_COLOR_T to COLOR4D globally; arbitrary color support 2017-02-22 17:35:00 +01:00
worksheet_shape_builder.h Changed COLOR4D defines to static consts 2017-02-22 17:35:00 +01:00
worksheet_viewitem.h Code formatting 2016-12-12 16:45:52 +01:00
wxBasePcbFrame.h Cosmetic enhancement in pcbnew menubar: use specific icon in menuitems to switch canvases, and add a marker to the mode currently in use 2017-01-14 14:43:45 +01:00
wxPcbStruct.h Added AUTOROUTER_CONTEXT to keep objects used by autorouter 2017-03-03 13:28:19 +01:00
wx_status_popup.h Code formatting. 2015-02-18 17:53:46 +01:00
wx_unit_binder.h Method to check WX_UNIT_BINDER value validity. 2015-07-09 13:35:50 +02:00
wxstruct.h Icons options menu: code rework 2017-03-03 14:18:25 +01:00
wxunittext.h Fix many doxygen warnings (due to missing info, old comments, typo ...) when building the doxygen doc. 2014-11-02 17:25:04 +01:00
xnode.h Minor coding style fixes in headers 2016-01-12 11:33:33 -05:00