kicad/common
Wayne Stambaugh 54f066fed7 Implement simple inheritance for library symbols.
This change completely removes the LIB_ALIAS design pattern an replaces
it by allowing LIB_PART objects to inherit from other LIB_PART objects.
The initial implementation only allows for single inheritance and only
supports the mandatory fields in the derived part because that is all
that the current symbol library file format will support.  Once the new
file format is implemented and saving to the old file format is deprecated,
more complex inheritance will be added.  The LIB_ALIAS information saved
in the document files was move into the LIB_PART object.  This change
impacts virtually every part of the schematic and symbol library editor
code so this commit message is woefully incomplete.

REMOVE: Removed the symbol aliases concept from the schematic and symbol
editors and the symbol viewer.

NEW: Replace the symbol alias concept with simple inheritance that allows
a library symbol to be derived from another library symbol.
2019-12-06 11:33:52 -05:00
..
dialog_about Make build date update whenever build version does 2019-11-11 18:01:38 +00:00
dialogs Minor speed cleanup 2019-12-05 14:20:59 -08:00
gal Suppress false warning of uninit var 2019-12-06 06:27:47 -08:00
geometry Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
kicad_curl Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
libeval Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
math Remove superflous includes. 2015-07-31 09:50:47 -04:00
page_layout Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
plotters Minor speed cleanup 2019-12-05 14:20:59 -08:00
preview_items pcbnew: Fix 45° snapping polygons 2019-10-24 16:01:14 -07:00
swig Python scripting: fix missing definition of uint32_t (and some other similar defs). 2019-07-25 20:53:26 +02:00
system Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
tool tool manager: Don't adjust the iterator to invalid 2019-11-03 10:15:21 -08:00
view view: Check for viewData in IsVisible() 2019-10-15 09:44:16 -07:00
widgets Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
CMakeLists.txt Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
advanced_config.cpp Make pin function in pads an advanced feature. 2019-11-23 09:12:44 +01:00
array_axis.cpp Pcbnew: add a step field to the array tool 2019-05-16 11:20:52 +01:00
array_options.cpp Arrays: isolate axis code in a new class 2019-05-16 11:20:52 +01:00
base_screen.cpp Cleanup some left-over vestiages of the legacy canvas architecture. 2019-06-13 15:51:32 +01:00
base_struct.cpp Allow EDA_RECT to properly be uninitialized 2019-08-16 10:54:16 -07:00
base_units.cpp Pcbnew: add a board layer stack manager 2019-09-05 18:51:18 +02:00
basic_gal.cpp Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
bezier_curves.cpp FIX: add parameter to GAL::DrawCurve to control the curve to polyline conversion. Cairo supports curves, but not Opengl, that needs a conversion to polyline. This control allows optimization in conversion 2019-11-09 11:41:29 +01:00
bin_mod.cpp Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
bitmap.cpp Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal. 2019-06-13 19:58:37 +01:00
bitmap_base.cpp Common: Fix copy-construction of empty BITMAP_BASE 2019-05-23 16:58:08 +01:00
board_printout.cpp When printing, pads are not always printed (especially on tech layers) 2018-12-22 13:44:49 +01:00
build_version.cpp Make build date update whenever build version does 2019-11-11 18:01:38 +00:00
colors.cpp 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
colors_design_settings.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
commit.cpp keepout in footprint: fix some crashes and issues. Create a specific type (PCB_MODULE_ZONE_AREA_T) for zones in footprint. The new class (MODULE_ZONE_CONTAINER) is the same as ZONE_CONTAINER, but the type ID is PCB_MODULE_ZONE_AREA_T instead of PCB_ZONE_AREA_T. 2019-10-29 11:24:57 +01:00
common.cpp Common: do not conditionally define wxPoint/Size operator<< 2019-05-28 13:52:36 +01:00
config_params.cpp Eradicate globals for PCB_GENERAL_SETTINGS. 2019-06-26 21:54:03 +01:00
confirm.cpp Improve spelling. 2019-08-20 19:14:05 +01:00
convert_basic_shapes_to_polygon.cpp Performance enhancement for pad drawing. 2019-09-09 13:45:06 +01:00
cursor_store.cpp Eeschema: construct simulator cursors on demand 2019-04-02 18:26:33 +01:00
dialog_shim.cpp Implement simple inheritance for library symbols. 2019-12-06 11:33:52 -05:00
displlst.cpp Fix some issues with the previous commit. 2019-12-02 23:35:19 +00:00
dlist.cpp Fixed an assert in DHEAD::append() 2018-05-11 10:23:40 +02:00
dpi_scaling.cpp Add configuration of Hi-DPI canvas scaling in OpenGL 2019-03-25 15:00:55 +00:00
draw_panel_gal.cpp some other WXDEBUG replacement 2019-10-14 12:38:52 +02:00
dsnlexer.cpp Revert "Don't be pedantic about the file format." 2018-03-16 18:11:36 +00:00
eagle_parser.cpp Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
eda_base_frame.cpp Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
eda_dde.cpp Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out. 2019-06-10 23:46:00 +01:00
eda_doc.cpp Move env var substitution into GetAssociatedDocument 2019-03-10 08:39:36 -07:00
eda_draw_frame.cpp Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
eda_pattern_match.cpp C++14: Remove unused make_unique.h 2019-08-07 09:27:31 -07:00
eda_size_ctrl.cpp Clean up units infrastructure after g_UserUnit removal. 2018-07-17 15:12:36 +01:00
eda_text.cpp Add super- and subscript support to Eeschema. 2019-11-05 17:22:51 +00:00
env_paths.cpp Fixed normalizeAbsolutePaths() condition 2018-05-25 11:07:51 +02:00
env_vars.cpp Add configuration of Hi-DPI canvas scaling in OpenGL 2019-03-25 15:00:55 +00:00
exceptions.cpp Fix bugs in Eeschema paste. 2019-08-15 10:00:23 +01:00
executable_names.cpp Move executable name constants to own file 2017-03-23 09:23:45 -04:00
filehistory.cpp Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
filename_resolver.cpp Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
filter_reader.cpp Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
footprint_filter.cpp Cleanup to make implementation names consistent with what they now do. 2019-09-03 19:29:30 +01:00
footprint_info.cpp Move remaining hard-coded segment counts 2019-05-16 08:49:55 -07:00
fp_lib_table.cpp Workaround an issue where a throw terminates (even when there's a catch for it). 2019-08-31 15:18:27 +01:00
gbr_metadata.cpp ADDED: Pcbnew, add "pin function" (pin name in eeschema) to pads. 2019-11-23 09:12:43 +01:00
gestfich.cpp Fix a compil issue on Windows. 2019-12-06 08:40:58 +01:00
getrunningmicrosecs.cpp Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
gl_context_mgr.cpp Dealing with inconsistent wxGLCanvas::IsDisplaySupported() 2018-06-11 12:26:59 +02:00
gr_basic.cpp Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
gr_text.cpp New selection highlighting model for eeschema. 2019-07-29 19:57:41 -06:00
grid_tricks.cpp Fix a wxWidgets alert (on wxWidgets 3.1.3) 2019-11-04 17:30:50 +01:00
hash_eda.cpp Gencad export: fix an issue in hash_eda calculation, that can generate the same hash for 2 different footprints. 2019-10-10 20:18:48 +02:00
hotkey_store.cpp Preferences, Hotkey list: Avoid list to be shown twice. 2019-07-16 18:30:14 +02:00
hotkeys_basic.cpp Improve gesture lables for better consistency with key labels. 2019-06-14 16:54:46 +01:00
html_messagebox.cpp Pcbnew: fix size of graphics import warning dialog. 2019-09-06 14:57:04 -04:00
kiface_i.cpp Removed old debug output 2017-12-17 18:43:43 +01:00
kiway.cpp Clean up compile warnings 2019-12-05 20:05:21 -08:00
kiway_express.cpp Support synchronous messaging over KIWAY EXPRESS. 2019-04-08 13:26:09 +01:00
kiway_holder.cpp Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out. 2019-06-10 23:46:00 +01:00
kiway_player.cpp Push KIWAY_HOLDER down a level so we can move a bunch of stuff that doesn't belong there out. 2019-06-10 23:46:00 +01:00
languages_menu.cpp Add checking to languages menu. 2019-06-16 20:26:43 +01:00
lib_id.cpp Unify string lists of forbidden footprint chars 2019-10-29 13:31:11 -07:00
lib_table.keywords Added "enabled" parameter for LIB_TABLE_ROW 2017-11-21 08:18:06 -05:00
lib_table_base.cpp Alphabetize Library Table returns 2019-08-19 16:07:13 -07:00
lib_tree_model.cpp Return control of Symbol and Footprint chooser col widths to user. 2019-08-26 18:27:49 +01:00
lib_tree_model.h libtree: Update width automatically 2019-02-12 21:56:47 -08:00
lib_tree_model_adapter.cpp Fix width of part selector columns 2019-09-18 16:12:45 -07:00
lib_tree_model_adapter.h Fix width of part selector columns 2019-09-18 16:12:45 -07:00
lockfile.cpp Move file locking utilities to a separate file 2017-03-23 09:23:45 -04:00
lset.cpp Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
marker_base.cpp Cleanup: Replace push_back with emplace_back 2019-12-05 13:41:21 -08:00
md5_hash.cpp Add MD5_HASH::Format for debug purposes. 2019-03-21 11:42:15 +01:00
msgpanel.cpp Remove colours from message text items. 2018-07-17 15:11:40 +01:00
netlist.keywords ADDED: Pcbnew, add "pin function" (pin name in eeschema) to pads. 2019-11-23 09:12:43 +01:00
newstroke_font.cpp Rescale and flip Chinese characters 2019-10-05 07:42:15 -07:00
observable.cpp Coverity fixes (mostly initializing variables) 2017-02-01 17:31:55 +01:00
origin_viewitem.cpp Fix compiler warnings. 2019-11-05 17:22:51 +00:00
page_info.cpp Fix code after renaming files 2018-01-29 11:37:29 +01:00
painter.cpp GAL: Make high-contrast meld into background 2019-06-09 08:16:58 -07:00
pcb.keywords ADDED: Pcbnew, add "pin function" (pin name in eeschema) to pads. 2019-11-23 09:12:43 +01:00
pcb_plot_params.keywords Add Gerber job file writer in Pcbnew, and a basic reader in Gerbview. Currently disabled 2017-08-30 11:04:33 +02:00
pgm_base.cpp Add clear recent files action to the menus 2019-11-23 23:35:21 +00:00
prependpath.cpp Fix some issues related to the footprint wizard frame: 2015-09-07 12:52:16 +02:00
printout.cpp Removed default line width setting from the printing dialog 2018-10-31 19:17:30 +01:00
project.cpp Ensure we have a destination for config template 2019-01-28 17:16:53 -08:00
properties.cpp Eeschema: initial schematic I/O plugin. 2016-07-06 05:22:56 -04:00
ptree.cpp Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
refdes_utils.cpp Fix broken GetReferencePrefix function 2019-01-30 15:41:36 -08:00
reporter.cpp Optionally sort reporter messages 2018-05-22 13:55:02 -07:00
richio.cpp Uniformly quote strings which may have user content. 2019-04-07 00:24:10 +01:00
search_stack.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
searchhelpfilefullpath.cpp Replace log debugging output with tracing. 2018-10-17 15:03:33 -04:00
settings.cpp Multiple improvements concerning colors, configuration handling and legacy features in pcbnew: 2017-08-04 16:06:57 +02:00
single_top.cpp Update frame type enum to match current class names. 2019-09-06 23:38:20 +01:00
status_popup.cpp Grid rid of GetCanvas/GetGalCanvas distinction now that there's only gal. 2019-06-13 19:58:37 +01:00
streamwrapper.cpp Replace WIN32 preprocessor symbol by the official symbol _WIN32, used almost everywhere 2018-10-20 09:22:24 +02:00
string.cpp Cherry pick of line-ending-safety fix from 5.1. 2019-09-07 03:14:03 +01:00
strtok_r.c Add strtok_r.c 2013-12-10 17:52:51 -06:00
systemdirsappend.cpp Minor fixes: remove a few useless includes and move a few others to the right file. Remove a few coverity warnings about not initialized members. 2015-05-15 14:49:11 +02:00
trace_helpers.cpp Add log trace for tool handling 2019-07-31 21:56:53 -06:00
undo_redo_container.cpp eeschema: Remove UR_WIRE_IMAGE 2019-04-13 07:11:24 -07:00
utf8.cpp Cleanup: Replace C-only deprecated headers 2019-12-05 11:03:15 -08:00
validators.cpp Unify string lists of forbidden footprint chars 2019-10-29 13:31:11 -07:00
wildcards_and_files_ext.cpp Minor speed cleanup 2019-12-05 14:20:59 -08:00
wxdataviewctrl_helpers.cpp Move wxDataViewCtrl manipulators out of dialog_choose_component.cpp 2017-03-30 21:47:14 -04:00
xnode.cpp Escape slashes in labels and netnames. 2019-04-07 00:24:10 +01:00