• Maciej Suminski's avatar
    BOARD_CONNECTED_ITEMs do not store net code anymore (m_NetCode field), instead... · d62b47a0
    Maciej Suminski authored
    BOARD_CONNECTED_ITEMs do not store net code anymore (m_NetCode field), instead net info is stored using a pointer to NETINFO_ITEM.
    GetNet() refers to the net code stored in the NETINFO_ITEM. SetNet() finds an appropriate NETINFO_ITEM and uses it.
    Removing GetNet() & SetNet() (and the whole net code idea) requires too many changes in the code (~250 references to the mentioned functions).
    BOARD_CONNECTED_ITEMs by default get a pointer to NETINFO_ITEM that stores unconnected items. This requires for all BOARD_CONNECTED_ITEMs to have a parent (so BOARD* is accessible). The only orphaned item is BOARD_DESIGN_SETTINGS::m_Pad_Master, but it does not cause any issues so far.
    Items that do not have access to a BOARD (do not have set parents) and therefore cannot get net assigned, by default get const static NETINFO_LIST::ORPHANED.
    
    Performed tests:
    - loaded .kicad_pcb, KiCad legacy board, Eagle 6.0 board, P-CAD board - all ok
    - load a simple project, reload netlist after changing connections in eeschema - ok
    - save & reload a board - ok, but still contain empty nets
    - remove everything, restore with undo - ok
    - remove everything, reload netlist - ok
    - changing net names (all possibilites: empty->existing, empty->not existing, existing->empty, existing->not existing) - all ok
    - zones: when net is changed to a net that does not have any nodes besides the zone itself, it does not get filled
    d62b47a0
Name
Last commit
Last update
..
gal Loading commit data...
geometry Loading commit data...
math Loading commit data...
tool Loading commit data...
ttl Loading commit data...
view Loading commit data...
HersheyCyrillic.h.unused Loading commit data...
appl_wxstruct.h Loading commit data...
base_struct.h Loading commit data...
base_units.h Loading commit data...
bezier_curves.h Loading commit data...
bitmaps.h Loading commit data...
block_commande.h Loading commit data...
build_version.h Loading commit data...
class_base_screen.h Loading commit data...
class_bitmap_base.h Loading commit data...
class_board_design_settings.h Loading commit data...
class_board_item.h Loading commit data...
class_collector.h Loading commit data...
class_colors_design_settings.h Loading commit data...
class_drawpanel.h Loading commit data...
class_drawpanel_gal.h Loading commit data...
class_drc_item.h Loading commit data...
class_layer_box_selector.h Loading commit data...
class_macros_record.h Loading commit data...
class_marker_base.h Loading commit data...
class_pcb_screen.h Loading commit data...
class_sch_screen.h Loading commit data...
class_title_block.h Loading commit data...
class_undoredo_container.h Loading commit data...
class_worksheet_dataitem.h Loading commit data...
colors.h Loading commit data...
colors_selection.h Loading commit data...
common.h Loading commit data...
confirm.h Loading commit data...
convert_basic_shapes_to_polygon.h Loading commit data...
convert_from_iu.h Loading commit data...
convert_to_biu.h Loading commit data...
dcsvg.h.unused Loading commit data...
dialog_get_component.h Loading commit data...
dialog_helpers.h Loading commit data...
dialog_hotkeys_editor.h Loading commit data...
dialog_shim.h Loading commit data...
dlist.h Loading commit data...
drawtxt.h Loading commit data...
dsnlexer.h Loading commit data...
eda_dde.h Loading commit data...
eda_doc.h Loading commit data...
eda_text.h Loading commit data...
fctsys.h Loading commit data...
filter_reader.h Loading commit data...
footprint_info.h Loading commit data...
fp_lib_table.h Loading commit data...
fpid.h Loading commit data...
gestfich.h Loading commit data...
gr_basic.h Loading commit data...
grid_tricks.h Loading commit data...
hashtables.h Loading commit data...
hotkey_grid_table.h Loading commit data...
hotkeys_basic.h Loading commit data...
html_messagebox.h Loading commit data...
id.h Loading commit data...
ki_mutex.h Loading commit data...
kicad_device_context.h Loading commit data...
kicad_string.h Loading commit data...
layers_id_colors_and_visibility.h Loading commit data...
length.h.usuned Loading commit data...
macros.h Loading commit data...
menus_helpers.h Loading commit data...
msgpanel.h Loading commit data...
newstroke_font.h Loading commit data...
online_help.h Loading commit data...
pad_shapes.h Loading commit data...
painter.h Loading commit data...
param_config.h Loading commit data...
pcbcommon.h Loading commit data...
pcbstruct.h Loading commit data...
plot_common.h Loading commit data...
profile.h Loading commit data...
ptree.h Loading commit data...
reporter.h Loading commit data...
richio.h Loading commit data...
sch_base_frame.h Loading commit data...
sch_item_struct.h Loading commit data...
trigo.h Loading commit data...
utf8.h Loading commit data...
validators.h Loading commit data...
wildcards_and_files_ext.h Loading commit data...
worksheet.h Loading commit data...
worksheet_shape_builder.h Loading commit data...
worksheet_viewitem.h Loading commit data...
wxBasePcbFrame.h Loading commit data...
wxEeschemaStruct.h Loading commit data...
wxPcbStruct.h Loading commit data...
wxstruct.h Loading commit data...
xnode.h Loading commit data...