Commit Graph

52 Commits

Author SHA1 Message Date
Jeff Young 3939b31027 Integration of netclasses into Eeschema.
This is mostly architecture, with the hookup of the Schematic Setup
dialog's Net Classes page.  Things like assigning to a net on the
canvas to follow.

Fixes https://gitlab.com/kicad/code/kicad/issues/2132

Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-06 20:00:50 +01:00
Jon Evans 8a0277eb2e Fix null graph in some connections
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4747
2020-06-29 20:27:08 -04:00
Jon Evans 13baf548ca Ensure merged buses have all members 2020-05-25 17:35:26 -04:00
Jon Evans df16ea25a8 Properly send cross-probe for nested buses
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4541
2020-05-25 17:03:49 -04:00
Jon Evans 82a2530863 Fix missing inits of graph in a few places
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4532
2020-05-24 19:17:01 -04:00
Jon Evans f4d7c323f5 Coverity fixes 2020-05-18 22:58:28 -04:00
Jon Evans d7bd4c9b04 Move Eeschema globals to new SCHEMATIC object
Set up a new lineage for SCH_ITEMS to get back to the SCHEMATIC
they live on: Items will all be parented to the SCH_SCREEN that
they are added to, and each SCH_SCREEN will point back to the
SCHEMATIC that it is part of.  Note that this hierarchy is not
the same as the actual schematic hierarchy, which continues to
be managed through SCH_SHEETs and SCH_SHEET_PATHS.
2020-05-18 13:04:56 -04:00
Jeff Young 4a1ee40058 Pretty print bus definitions to the menus. 2020-05-13 16:26:53 +01:00
Jeff Young 050191460f Check for empty bus vectors and allow backwards vector specs.
Fixes https://gitlab.com/kicad/code/kicad/issues/4421
2020-05-13 13:42:23 +01:00
Jeff Young 105f85e551 Fix new bus parsers to correctly handle non-buses.
Fixes https://gitlab.com/kicad/code/kicad/issues/4403
2020-05-11 22:56:09 +01:00
Jeff Young cbe4b79107 Add syntax help for bus definitions (and upgrade parser to handle them).
Fixes https://gitlab.com/kicad/code/kicad/issues/4233
2020-05-10 18:40:06 +01:00
Jon Evans c92181621e Use strong check for bus label when netlisting
Fixes #4318
2020-05-06 18:27:03 -04:00
Jon Evans 4b4952b09a Add short-circuits for regex testing 2020-04-30 19:53:25 +00:00
Jon Evans f4f43f51c8 Cache connection names 2020-04-30 19:53:25 +00:00
Jon Evans 2eaefb4874 Improve performance of schematic load and connectivity
Store component paths and references efficiently
Remove redundant calls to RecalculateConnections
2020-04-30 19:53:25 +00:00
Jon Evans e59a3d981e Implement a new settings framework across all of KiCad
CHANGED: Settings are now stored in versioned sub-directories
ADDED: First-run dialog for migrating settings from a previous version
CHANGED: Settings are now stored as JSON files instead of wxConfig-style INI files
CHANGED: Color settings are now all stored in a separate settings file
CHANGED: The symbol editor and footprint editor now have their own settings files
CHANGED: Color settings are no longer exposed through BOARD object
CHANGED: Page layout editor now uses Eeschema's color scheme

Settings are now managed through a central SETTINGS_MANAGER held by PGM_BASE.
Existing settings will be migrated from the wxConfig format on first run of each application.
Per-application settings are now stored in one class for each application.
2020-02-19 23:44:56 -05:00
Jon Evans 41725e6b07 Sort nets in netlist by name; generate ordered net codes 2020-01-22 14:59:02 +00:00
Jon Evans da222d96b1 Fix a few issues with bus unfolding
Bus submenus weren't sending events because tool wasn't set.
Net names need to be unescaped for display.
Unfolding wasn't drawing the new wire segments.
SCH_LINE_WIRE_BUS_TOOL could get caught in an infinite event handling loop.

Fixes https://gitlab.com/kicad/code/kicad/issues/3796
2020-01-21 22:02:46 -05:00
Mark Roszko 70908043a3 Convert enums inside eeschema and the symbol editor to be scoped
Scope: NETLIST_ITEM, CONNECTION_TYPE, ELECTRICAL_PINTYPE,
       NET_CONNECTION, NETLIST_ITEM, GRAPHIC_PINSHAPE

Note, the pin type enum had PT_ added to the front to prevent
shadowing of the INPUT symbol on msys2 (see discussion at
c17c9960d8)
2020-01-18 20:51:28 +00:00
Jon Evans 856decc29b Fix a few issues with bus member propagation to subsheets
Fixes #3728
2020-01-04 10:38:50 -05:00
Jon Evans 5255a29bc0 Always use local bus member names for unfolding menu 2020-01-03 22:11:00 -05:00
Jon Evans 112be3bfd1 Allow unannotated power connections to drive nets 2020-01-03 22:09:56 -05:00
Mark Roszko 11ff16be4e Switch to scoped enums 2019-12-20 14:11:39 +00:00
Seth Hillbrand c6f5df134c Minor speed cleanup
This adjusts iterators to use const reference when only used for
copy.  It also ensures pre-allocation of vectors when size is known
ahead of time.
2019-12-05 14:20:59 -08:00
Jeff Young a25368cc6b Improve spelling.
The groundwork here is thanks to kunda1.

Fixes: lp:1831510
* https://bugs.launchpad.net/kicad/+bug/1831510
2019-08-20 19:14:05 +01:00
Jon Evans 4c33320cbc Stop erroneously accepting bus alias labels without curly braces 2019-05-23 23:06:51 -04:00
Jon Evans 8c89847627 Properly handle tildes at the end of bus vector names
Fixes: lp:1825532
* https://bugs.launchpad.net/kicad/+bug/1825532
2019-05-23 22:47:01 -04:00
Jon Evans 1401d8a8ea Revert "Allow commas in group bus signal lists"
This reverts commit cc290715a2.

(pushed accidentally; then decided behavior should be different)
2019-05-20 19:28:32 -04:00
Jon Evans 9d56102210 Prevent unannotated components from driving connectivity
Fixes: lp:1829301
* https://bugs.launchpad.net/kicad/+bug/1829301
2019-05-19 11:40:24 -04:00
Jon Evans cc290715a2 Allow commas in group bus signal lists 2019-05-19 11:09:25 -04:00
Jon Evans 7a715904ad Fix copy-paste error 2019-05-12 23:24:11 -04:00
Jon Evans 8341e3f972 Ensure prefixes and suffixes make it on to bus members 2019-05-07 22:48:25 -04:00
Jeff Young f187f91f57 Seth's fixes to regex processing. 2019-05-05 17:14:30 +01:00
Jon Evans efa0c97da9 Make sure net name prefixes carry through to netlist 2019-05-01 20:48:27 -04:00
Jon Evans a5a2152ff4 Cache subgraphs by sheet path 2019-04-29 19:58:02 -04:00
Jon Evans c054944d67 Set real-time connectivity to on by default with a safety valve 2019-04-29 18:59:32 -04:00
Jon Evans 96d2fc840b A tiny optimization for SCH_CONNECTION 2019-04-28 23:36:41 -05:00
Jon Evans 782b8227fa Clean up connection message panel info 2019-04-22 22:58:41 -04:00
Jon Evans e2c12d8c25 Overhaul connectivity neighbor and global connection processing 2019-04-21 19:10:44 -04:00
Jon Evans 5b226f6c96 Allow extra tildes at end of bus names
Fixes: lp:1825579
* https://bugs.launchpad.net/kicad/+bug/1825579
2019-04-19 22:26:24 -04:00
Jeff Young 460909ea9a Move click-to-place tools to modern toolset. 2019-04-16 16:20:52 +01:00
jean-pierre charras 2529346940 Some fixes for I18N. Mainly do not translate debug messages or strings giving only a print format (like "%d"). 2019-04-13 10:12:24 +02:00
Seth Hillbrand d70ae19cb8 eeschema: Move realtime connectivity to adv config
This allows realtime connectivity testing by modifying the
kicad_advanced setting rather than recompiling
2019-04-12 08:37:44 -07:00
Seth Hillbrand 8c9244e677 Revert "eeschema: Connectivity threading"
This reverts commit 1a031e771f.

Some nets broken in commit.
2019-04-10 20:08:42 -07:00
Seth Hillbrand 1a031e771f eeschema: Connectivity threading
This threads the first step (update item) in the connectivity routine.
Also eliminates the duplicate call for multiple copies of the same
sheet.
2019-04-10 15:04:22 -07:00
Jon Evans bd487d2c25 Rework logic for linking local subgraphs together 2019-04-07 23:54:47 -04:00
Jeff Young 3ace73fbdd Fold various SCH pin shadow data structures into SCH_PIN. 2019-04-03 10:18:11 +01:00
Jeff Young 52246121b9 Add pins to net highlighting.
Fixes: lp:1763873
* https://bugs.launchpad.net/kicad/+bug/1763873
2019-04-03 10:18:11 +01:00
Jon Evans 3c27617782 Check driver instead of parent for prepending path to connection name 2019-04-01 20:21:50 -04:00
Jon Evans f1882f333e Don't call OnModify() before placing new parts
Remove unnecessary calls to TestDanglingEnds()

Disable real-time connectivity updates for now

Revert "Remove unnecessary calls to TestDanglingEnds()"

This reverts commit d93e3894f2bcd6239862ac9eae0cb2f994b9d52a.

Remove debug code
2019-03-31 19:58:08 -04:00