Jon Evans
5248f2952e
Use schematic default line width for GetPenWidth on zero-size lines
2020-05-20 00:03:27 -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
301ac3461c
Fix some more pen width issues from global removal.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4408
2020-05-12 15:20:17 +01:00
Jeff Young
1535c83b88
Lay some groundwork for adding distances to DRC errors.
...
modified: eeschema/lib_rectangle.cpp
2020-04-24 14:46:22 +01:00
Jeff Young
9c8941e040
Remove a bunch of globals.
2020-04-16 17:34:46 +01:00
jean-pierre charras
952e7a5fb4
Eeschema: move some default values to default_values.h.
...
These default values are used in many files, and some files were using
magic numbers.
2020-04-14 20:15:18 +02:00
jean-pierre charras
6148461484
Eeschema plot: fix (temporary) line 0 thickness.
...
Plotting lines having 0 thickness is not acceptable and create issues.
2020-04-14 12:43:51 +02:00
Jeff Young
591428b0d9
Remove some problematic global variables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4121
2020-04-05 16:17:04 +01:00
Wayne Stambaugh
7dc64f08b7
Eeschema: implement s-expression schematic file formatter.
...
Please note that the symbol cache is not embedded in the schematic file
to allow for round robin testing with the existing file format. Once
the parser round robin testing is complete, the symbol cache will be
embedded in the schematic file.
2020-03-16 09:05:16 -04:00
Jon Evans
643c97a2f4
ADDED: Schematic plotting can use a dedicated color theme
...
ADDED: PDF, PS, and SVG plots can optionally include the page background color
Fixes #1830
2020-03-06 00:01:02 -05:00
Jon Evans
8660b4c144
ADDED: New color theme editor and multi-theme support
2020-03-06 00:01:03 -05:00
Jonathan Warner
469c1c14ef
Eeschema: adjusted component sorting to work better
2020-02-06 06:02:51 -07:00
Jon Evans
ac875e26a8
Fix handling of SCH_PINs on multi-unit parts
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3770
2020-02-04 11:51:29 +00:00
Seth Hillbrand
55eb687184
Eeschema: Force output ordering
...
The RTree does not have a deterministic iterator, so extracting items
may be in arbitrary order, causing issues as the schematic appears to
change when comparing to previous revisions.
This uses the SCH_ITEM comparison operator to for ordering by type, then
by custom sorting within type.
For the netlist, we choose the first available unit in the sheet for
each component.
Fixes #3811 | https://gitlab.com/kicad/code/kicad/issues/3811
2020-01-28 13:31:52 -08: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
Seth Hillbrand
2321da702f
Fix SCH_LINE::GetBoundingBox()
...
Instead of returning a fixed line width that was rather large, we use
the actual line width
2020-01-07 11:56:50 -08:00
Mark Roszko
19ceb11ae7
Change more enums over to scoped enums
2019-12-28 00:55:11 +00:00
Mark Roszko
d3edeaec50
Fix "Properties" not appearing in right click menu for graphic line.
2019-12-26 15:15:34 +00:00
Mark Roszko
11ff16be4e
Switch to scoped enums
2019-12-20 14:11:39 +00:00
Seth Hillbrand
cda291adae
eeschema: Clean bits of DLIST
...
Removes the extra DLIST manipulation from SCH_LINE_WIRE_BUS_TOOL and
moves the static storage into class storage
2019-12-13 11:22:18 -08:00
Jeff Young
b5742d09f8
Performance enhancement.
2019-09-09 23:24:33 +01:00
Jeff Young
5e353e8967
Fix another case of selection getting out of sync with dragged items.
...
Use a big hammer this time.
Fixes: lp:1839780
* https://bugs.launchpad.net/kicad/+bug/1839780
2019-08-31 20:23:06 +01:00
Jeff Young
7349fe2e72
Move line rendering to the proper layer.
2019-08-03 17:20:54 -06:00
Jeff Young
9328ec8b52
Separate default line and wire thicknesses.
...
Fixes: lp:1834324
* https://bugs.launchpad.net/kicad/+bug/1834324
2019-06-30 11:12:42 +01:00
Jeff Young
3a0256aade
Add handle-based editing for eeschema bitmaps.
...
Also cleans out a bunch of duplicated functionality from the image
editor dialog.
Fixes: lp:1828722
* https://bugs.launchpad.net/kicad/+bug/1828722
2019-06-19 18:35:17 +01:00
Jeff Young
c0e1f7a17a
Add dragging of wire ends, corners and junctions.
...
Fixes: lp:1830007
* https://bugs.launchpad.net/kicad/+bug/1830007
2019-06-11 21:20:19 +01:00
Jeff Young
d6e9bdf07b
Convert remaining legacy drawing code to print code.
2019-05-31 21:54:22 +01:00
Jon Evans
3e5005698c
Add a bit of margin to line selection hit testing
2019-05-07 22:51:46 -04:00
Jeff Young
32765ebffd
Do some refactoring in prep for sharing some sch tools with libedit.
2019-05-05 17:14:30 +01:00
Jeff Young
7e3ad4585a
Fix issues with dragging, moving and rotating wires.
2019-05-05 17:14:30 +01:00
Jeff Young
de347998d1
Implement drag in modern toolset.
2019-05-05 17:12:59 +01:00
Jeff Young
57a491357f
Improve encapsulation. SCH_LINE has no business knowing about drags.
2019-05-05 17:12:59 +01:00
Jon Evans
9741b43dae
Make lines and bus entries less frustrating to select
2019-04-29 21:28:53 -04:00
Jeff Young
460909ea9a
Move click-to-place tools to modern toolset.
2019-04-16 16:20:52 +01:00
Jeff Young
2aad4a5e57
Remove dead code from removal of eeschema legacy canvas.
2019-04-05 15:54:31 +01:00
Jeff Young
95635804bf
Replace pin mark/sweep with method that doesn't invalidate iterators.
...
Also removes some no-longer-used drawing code (the Draw() routines
are only used for printing with the modern eeschema canvas in place).
2019-04-04 12:08:33 +01:00
Jon Evans
591894c7e6
Properly construct new line from old
...
Fixes: lp:1823072
* https://bugs.launchpad.net/kicad/+bug/1823072
2019-04-03 16:26:43 -04:00
Jon Evans
b11f9fc873
Performance: don't construct temporary SCH_LINEs in MergeOverlap()
2019-04-02 22:46:22 -04:00
Jeff Young
81d4a45e73
Ignore BRIGHTENED state when printing.
...
Fixes: lp:1788480
* https://bugs.launchpad.net/kicad/+bug/1788480
2019-04-01 13:23:37 +01:00
Jon Evans
83c7e7fc65
New connectivity algorithm and bus upgrades
...
Bus upgrades: core new connectivity code
Bus upgrades: eeschema integration and modifications
Bus upgrades: eeschema dialogs
Bus upgrades: netlist export
Bus upgrades: file format changes
2019-03-31 19:53:41 -04:00
Jeff Young
9b7d6a27de
Don't show dangling symbols at ends of wires with no-connect flags.
...
Fixes: lp:1805255
* https://bugs.launchpad.net/kicad/+bug/1805255
2018-11-27 14:44:13 +00:00
jean-pierre charras
0d3637c2ee
Fix a few minor I18n issues.
...
Avoid translation of debug messages.
2018-11-11 10:46:26 +01:00
Jeff Young
4030eec939
Implement proper dangling end handling for block moves.
...
(Most of this is actually fixing the IsDanglingStateChanged() to
correctly indicate that it *updates* the dangling state, not just
tests it.)
2018-10-30 11:33:49 +00:00
Jeff Young
268565ee41
Refresh component when children change.
2018-10-09 11:08:56 +01:00
Jeff Young
d7178c7833
Implement GAL refresh for a bunch of operations.
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
90c7c60471
eeschema-gal: initial GALified version. Lots of stuff still to do!
2018-10-09 11:08:52 +01:00
Jeff Young
5f3ee1e7ce
More g_UserUnit erradication.
...
(cherry picked from commit 3f08780)
2018-07-17 15:12:31 +01:00
Jeff Young
eacaa39aa2
Remove global units usage from GetSelectionText...
...
... and GetMsgPanelInfo.
Step 4 in the g_UserUnit eradication effort.
Also removes a couple of conversion routines that were close
enough to extinction.
(cherry picked from commit c75da51)
2018-07-17 15:11:09 +01:00
Jeff Young
b99ea159c8
Rationalize select menu texts.
...
Be consistent with order, formatting, etc.
Remove debug stuff such as zone timestamp and net code.
Clean up misleading pad messages.
(cherry picked from commit 2132109)
2018-07-17 15:09:48 +01:00
jean-pierre charras
8022f1cc01
fix code after renamin files
2018-01-30 11:49:51 +01:00