jean-pierre charras
62a5302bc4
Fix issues created by commit cbb0d74bd5
.
...
This commit redirected too many menuitem IDs to the tool manager.
Only some context menu items have to be redirected, not all inside ACTION_EVENT events.
This hack is not perfect. It needs a better handling of ACTION_EVENT handling.
2019-05-21 12:48:37 +02:00
Jon Evans
c5f8a6b26e
Add a nicer bus / net name validator
2019-05-20 22:52:39 -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
Tomasz Włostowski
bc52f0a03b
eemodern: clean printf debug gibberish, implement inline drag, move & cursor warp/reference point options
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
af30eca3cb
eemodern: hover selection should autoclear after invoking properties dialog
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
aff3243f3b
eeschema: fix use-after-free crash in GetScreen()/GetCurrentSheet()
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
034669bf30
eemodern: implement drag-related settings in the Preferences window
2019-05-20 21:04:46 +02:00
Tomasz Włostowski
5ea46e8b78
eemodern: initial attempt at inline drag/move actions
2019-05-20 21:04:46 +02: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
Jeff Young
813de6a1f3
Implement brightening for Eeschema Find/Replace.
2019-05-18 14:28:22 +01:00
Jeff Young
21a7621ddb
Fix issues with multiple M or G commands in a row.
2019-05-18 14:11:19 +01:00
Jeff Young
7d9a0b06e0
Push help menu down into EDA_BASE_FRAME.
2019-05-18 13:14:08 +01:00
Jeff Young
952108dd43
Implement SCH_SHEET_PIN selection, rotation and mirroring.
...
Fixes: lp:1829521
* https://bugs.launchpad.net/kicad/+bug/1829521
2019-05-18 00:23:12 +01:00
Jeff Young
5f851a4bad
Add AutoplaceFields to symbol tool context menu.
2019-05-18 00:21:49 +01:00
Jeff Young
7c25001622
Implement immediate actions for adding and importing sheet pins.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-18 00:21:49 +01:00
Jeff Young
38cdafd407
Remove vestiges of legacy BLOCK architecture from eeschema.
2019-05-18 00:21:49 +01:00
Jeff Young
e33871fbf0
Make code easier to read/understand.
2019-05-18 00:21:49 +01:00
jean-pierre charras
0961614df2
Eeschema: fix incorrect position of fields of a hierarchical sheet when rotated
...
Fixes: lp:1829048
https://bugs.launchpad.net/kicad/+bug/1829048
2019-05-17 08:30:16 +02:00
Jeff Young
69339f341b
Don't double-collect refs, values, etc. They were already collected in the fields case.
...
Fixes: lp:1828701
* https://bugs.launchpad.net/kicad/+bug/1828701
2019-05-17 01:42:24 +01:00
Jeff Young
6b3fe33d6f
Improve selection logic for sloppy selections.
2019-05-17 00:48:39 +01:00
Jeff Young
5dd71b5563
Disable pin table and part properties when there's no part.
...
Fixes: lp:1828962
* https://bugs.launchpad.net/kicad/+bug/1828962
2019-05-16 23:53:33 +01:00
Jeff Young
68224e0fcd
Don't double-add pins to parent part when pasting.
...
Also adds undo to paste operations in LibEdit.
Fixes: lp:1829355
* https://bugs.launchpad.net/kicad/+bug/1829355
2019-05-16 23:53:11 +01:00
Jeff Young
0dd1584394
Add import-sheet-pin error message and move messages to status popups.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-16 23:11:22 +01:00
Jeff Young
6630a7227d
Constrain SHEET_PIN movement, and keep them attached when resizing SHEET.
...
Fixes: lp:1829314
* https://bugs.launchpad.net/kicad/+bug/1829314
2019-05-16 22:36:19 +01:00
Jeff Young
fbb807f3bb
Move some more menu & toolbar items to modern toolset.
2019-05-16 19:57:06 +01:00
Jeff Young
eba892009d
Improve hit-test logic by gradually increasing threshold.
...
Fixes: lp:1828222
* https://bugs.launchpad.net/kicad/+bug/1828222
2019-05-16 19:57:05 +01:00
John Beard
8378f97a78
Eeschema: enable grid change hotkey
...
Add the N/Shift+N hotkeys to the eeschema hotkey file.
Also adjust the COMMON_TOOLS::GridNext/Prev to work when
the screen's grid definitions do not have consecutive command
IDs (they do not in eeschema).
This is related to lp:1811018 (but doesn't constitute a fix).
* https://bugs.launchpad.net/kicad/+bug/1811018
2019-05-16 14:10:43 +01:00
Jeff Young
69afa27a5f
Implement ACTION_TOOLBAR and update some of the menus to ACTION_MENU.
...
This gives us better separation of MVC in line with the design of
the modern toolset. It also reduces a whole bunch of duplicated
data.
2019-05-15 17:50:52 +01:00
Jeff Young
f9e4ee1fc9
CONTEXT_MENU -> ACTION_MENU. (Now used for menu-bar menus too.)
2019-05-15 17:50:52 +01:00
Jeff Young
e850592587
Cleanup.
2019-05-15 17:50:52 +01:00
Jeff Young
053c26c96e
Refresh shown_text cache when incrementing label name.
...
Fixes: lp:1828874
* https://bugs.launchpad.net/kicad/+bug/1828874
2019-05-15 17:50:52 +01:00
Wayne Stambaugh
6f27ef7f66
Fix library table editor dialog environment variable grid column names.
...
Fixes lp:1825977
https://bugs.launchpad.net/kicad/+bug/1828459
2019-05-14 07:57:58 -04:00
Jeff Young
ef5c69167a
Start moving some LibEdit and SchEdit menubar menus to actions.
...
Also includes a bunch of bug fixes that got intermingled.
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828793
* https://bugs.launchpad.net/kicad/+bug/1828793
2019-05-13 21:44:29 +01:00
Jeff Young
d290154dd3
Fix rectangle resizing in LibEdit.
...
Fixes: lp:1828791
* https://bugs.launchpad.net/kicad/+bug/1828791
2019-05-13 21:44:29 +01:00
Wayne Stambaugh
3c4f8c1bf7
Fix frame name capitalization in all about dialogs.
...
This is a stop gap fix. It should be possible to use the wxFrame title
string for this but some of the frame windows have appropriated the title
string for configuration file naming purposes which is less than ideal.
Fixes lp:1825977
https://bugs.launchpad.net/kicad/+bug/1825977
2019-05-13 15:40:44 -04:00
Jon Evans
7a715904ad
Fix copy-paste error
2019-05-12 23:24:11 -04:00
Jon Evans
ee095a6711
Make sure secondary drivers are followed-up on after absorption
2019-05-12 20:23:16 -04:00
Jon Evans
019f63cd95
Don't merge subgraphs by matching sheet pin names
2019-05-12 18:41:04 -04:00
Jeff Young
924a5e68f0
Fix missing superclass call.
2019-05-12 18:20:41 +01:00
Jeff Young
25209516a6
Adjust net highlighting after edits.
...
Fixes: lp:1800291
* https://bugs.launchpad.net/kicad/+bug/1800291
2019-05-12 18:20:41 +01:00
Jeff Young
f602ccd814
Insert EE_TOOL_BASE under SchEdit and LibEdit tools, and fix errant rename scope which clobbered PCBNew's PICKER_TOOL.
2019-05-12 13:47:08 +01:00
Jeff Young
5c39521149
Move Symbol Properties and Pin Table to actions.
...
Fixes: lp:1804273
* https://bugs.launchpad.net/kicad/+bug/1804273
2019-05-11 15:38:49 +01:00
Jeff Young
7995b5cc3c
Restore selection on abort and undo/redo.
...
Also includes a related bug fix to not create an undo record for
the initial schematic cleanup.
Fixes: lp:1825975
* https://bugs.launchpad.net/kicad/+bug/1825975
2019-05-11 15:38:49 +01:00
Jeff Young
76a915d472
Fix highlighting when initiated via ctrl-click.
...
Fixes: lp:1796755
* https://bugs.launchpad.net/kicad/+bug/1796755
2019-05-11 15:38:49 +01:00
jean-pierre charras
0a308c4584
Fix minor compil warnings
2019-05-11 11:12:39 +02:00
jean-pierre charras
17ac5b6d13
DIALOG_EDIT_COMPONENT_IN_LIBRARY: fix a dialog resize issue (grid not resized).
2019-05-11 10:07:30 +02:00
jean-pierre charras
e19141bdc8
LIB_CIRCLE: fix missing transform of m_EndPos in mirror and rotate.
...
Fixes: lp:1828655
https://bugs.launchpad.net/kicad/+bug/1828655
2019-05-11 08:46:27 +02:00
Jeff Young
9cc3d6764f
fixup! Fix some legacy set-to-idle statements.
2019-05-10 23:25:54 +01:00
Jeff Young
b83dac68d0
Fix drag-select hit-testing of LibEdit items.
2019-05-10 23:24:27 +01:00
Jeff Young
5e08be7018
Fix some legacy set-to-idle statements.
2019-05-10 23:24:02 +01:00
Jeff Young
792c4328aa
Cleanup.
2019-05-10 21:40:08 +01:00
Jeff Young
a9f663d5ef
Soften hit-testing in SchEdit and LibEdit a bit.
...
Old threshold was 0; new is 5 pixels.
2019-05-10 20:46:28 +01:00
Jeff Young
0c2ba94b16
More sharing between SchEdit and LibEdit.
2019-05-10 20:22:26 +01:00
Jeff Young
86d1592777
Fix bug with re-enting selection main loop.
2019-05-10 19:56:20 +01:00
Jeff Young
c1539ae014
Naming changes to reflect sharing between SchEdit and LibEdit.
2019-05-10 19:56:20 +01:00
Jeff Young
f3c95ad83c
Clean up the RepeatItem architecture and finish deleting the UndoItem facility.
2019-05-10 19:56:20 +01:00
Jeff Young
7da2631b27
Check item before concluding that ConvertText has run.
...
Otherwise we set item from nullptr back to the selection, and then
we think we're dragging again which causes all kinds of grief.
Fixes: lp:1828067
* https://bugs.launchpad.net/kicad/+bug/1828067
2019-05-10 16:11:57 +01:00
Jeff Young
f6e07f575a
Rename for clarity.
...
SetOffset() didn't set anything; it performed an action.
Move() suggests a delta, when it in fact does a SetPosition().
2019-05-10 16:11:57 +01:00
Jeff Young
ea0941cab3
Implement modern tools for LibEdit.
2019-05-10 16:11:57 +01:00
Jeff Young
40f41133b3
Move Circle, Arc, Rectangle and PolyLine tools to modern toolset.
2019-05-10 16:11:57 +01:00
Wayne Stambaugh
ae54f34392
Eeschema: fix corrupted schematic and symbol library files.
...
Prevent user from pasting text with carriage return and/or line feed
characters in field value edit control in the schematic symbol and symbol
library properties dialogs.
Make all objects derived from GRID_CELL_TEXT_BUTTON use validators
correctly.
Add validators to FIELDS_GRID_TABLE object for field values other than
the mandatory fields.
Create a validator to check that a string is a valid LIB_ID.
Fixes lp:1828214
https://bugs.launchpad.net/kicad/+bug/1828214
2019-05-10 08:21:37 -04:00
Seth Hillbrand
589a37bfe8
eeschema: Don't segfault on empty drawlist
2019-05-09 15:11:36 -07:00
Seth Hillbrand
0e5f5d37d1
eeschema: Fix sign error in comparison
2019-05-09 14:10:53 -07:00
Seth Hillbrand
2f782ac7a4
eeschema: Prevent double-commit on duplicate/copy
...
When activating the move from a drag extension, we need to add
additional components to the commit. This breaks for duplicate/copy
when we have already added the correct components
2019-05-09 13:46:35 -07:00
jean-pierre charras
c716d66e53
Fix typo
2019-05-08 14:28:31 +02:00
Jon Evans
3e5005698c
Add a bit of margin to line selection hit testing
2019-05-07 22:51:46 -04:00
Jon Evans
c02777a721
Clean up some unnecessary header dependencies
2019-05-07 22:50:10 -04:00
Jon Evans
8341e3f972
Ensure prefixes and suffixes make it on to bus members
2019-05-07 22:48:25 -04:00
Jon Evans
1de5b83d82
Promote net names to higher in hierarchy when possible
2019-05-07 21:59:36 -04:00
Jon Evans
81993eef83
Ensure bus member links get updated in hierarchical situations
2019-05-07 21:31:53 -04:00
Jon Evans
3d3c280f22
Fix hierarchical linking if parent sheet has a weak driver
2019-05-07 21:31:53 -04:00
Jeff Young
a40367ce17
Add a wire between direct-connect items when only is being dragged.
...
Fixes: lp:1798968
* https://bugs.launchpad.net/kicad/+bug/1798968
2019-05-07 20:39:46 +01:00
Jeff Young
469231ae15
Move Pin, Symbol Text and Symbol Anchor to modern toolset.
2019-05-07 20:39:46 +01:00
Jeff Young
2e4d948535
Fix some more hotkey issues.
...
Also reformatted the file to make it easier to see what is there and
what is missing. Apologies to the 100-char-width folks, but we were
just missing to many command IDs in this file.
Fixes: lp:1828006
* https://bugs.launchpad.net/kicad/+bug/1828006
2019-05-07 20:39:46 +01:00
Jeff Young
cf046e0548
Anchor a selected wire at the edge of a drag which is connected to a non-drag item.
...
Fixes: lp:1827846
* https://bugs.launchpad.net/kicad/+bug/1827846
2019-05-07 12:04:19 +01:00
Jeff Young
f40408187e
A couple of temp hacks for LibEdit <esc> processing while in transition.
...
Fixes: lp:1828004
* https://bugs.launchpad.net/kicad/+bug/1828004
2019-05-07 12:04:19 +01:00
Jeff Young
11ec7d4651
Invert the Y axis of SCH_PIN coords when hit-testing.
...
Fixes: lp:1827849
* https://bugs.launchpad.net/kicad/+bug/1827849
2019-05-07 12:04:19 +01:00
Jeff Young
2097411550
Refresh RequestSelection selection if all items were filtered out.
...
If you have, for instance a pin selected and do a cmd-E we'll filter
out the pin and then do nothing. We should instead treat it as a
hover selection if everything got filtered.
2019-05-07 12:04:19 +01:00
jean-pierre charras
2c43d4d6bf
Eeschema: fix incorrect display of the page number in a complex hierarchy.
...
When, inside a complex hierarchy, one switch from an instance of a sheet to an other instance of this sheet,
the page number shown in the worksheet was not updated on screen, and the initial number was displayed.
Fixes: lp:1827981
https://bugs.launchpad.net/kicad/+bug/1827981
2019-05-07 10:55:26 +02:00
Jon Evans
316be464ab
Handle higher-priority connection drivers located in subsheets
...
Fixes: lp:1827850
* https://bugs.launchpad.net/kicad/+bug/1827850
2019-05-06 22:09:05 -04:00
Jeff Young
f1a38a6d41
Respond to <esc> from selection tool.
...
Fixes: lp:1827917
* https://bugs.launchpad.net/kicad/+bug/1827917
2019-05-06 21:56:19 +01:00
Jeff Young
cd2bd23c37
Fix a bunch of issues with hotkeys, IDs and event processing.
...
Fixes: lp:1827894
* https://bugs.launchpad.net/kicad/+bug/1827894
2019-05-06 21:42:00 +01:00
Jeff Young
e5151ed639
Use parent's transform when moving SCH_FIELDs.
...
Fixes: lp:1827873
* https://bugs.launchpad.net/kicad/+bug/1827873
2019-05-06 21:41:44 +01:00
Jeff Young
a76bcc204f
Use parent's transform when moving SCH_FIELDs.
...
Fixes: lp:1827873
* https://bugs.launchpad.net/kicad/+bug/1827873
2019-05-06 16:59:23 +01:00
Jeff Young
b97d65e791
Fix crash bug when deleting sheet pin and disappearing bug when moving them.
...
Fixes: lp:1827890
* https://bugs.launchpad.net/kicad/+bug/1827890
2019-05-06 16:31:02 +01:00
Jeff Young
13beb344ca
Fix LIB_FIELD selection bug. (It wasn't checking for convert == 0.)
2019-05-06 16:01:39 +01:00
Jeff Young
d12eee9c98
Process new sheets after drawing.
2019-05-06 15:31:23 +01:00
Jeff Young
207900e4f9
Move libedit message panel updating to the Inspection Tool.
2019-05-06 15:31:23 +01:00
Jeff Young
a12d769074
Code clarification and commenting.
...
Also renames toolbar files to reduce confusion with the modern toolset
tool files.
2019-05-06 15:31:23 +01:00
Jeff Young
8e75824d29
Use selection tool for locateItem.
2019-05-06 15:31:23 +01:00
Jeff Young
f87d371b8b
Move to shared COLLECTORS for sch and lib.
2019-05-06 15:31:23 +01:00
Jeff Young
cc439f9ab0
Replace accidentally deleted mouse processing for LibEdit.
2019-05-06 03:30:51 +01:00
Jeff Young
49231ac08f
Fix missing event processing for Leave Sheet button in toolbar.
2019-05-06 03:30:51 +01:00
Jon Evans
09c9db472e
Properly handle buses that have been linked by net wires only
...
Fixes: lp:1825532
* https://bugs.launchpad.net/kicad/+bug/1825532
2019-05-05 19:48:55 -04:00
Jon Evans
e9eacbc91c
Ensure subgraphs with multiple labels get sorted
2019-05-05 19:09:05 -04:00
Jon Evans
019a731e03
Back-propagate from child sheets when two parents point to one child
2019-05-05 16:05:36 -04:00
Jeff Young
b7e67073ef
Fix bugs in bus unfold logic.
...
The worst of which left you in the bus unfold popup menu event loop
if you cancelled the menu by clicking outside it.
2019-05-05 19:48:11 +01:00
Jeff Young
0b2e1d00ea
Don't allow motion between two clicks of a dblclick to spoil forceHV.
2019-05-05 18:38:49 +01:00
Jeff Young
d881f4b21f
When unfolding a bus from the selection tool, stay in that tool.
2019-05-05 18:36:18 +01:00
Jeff Young
c4fac81dbb
Transition from bus to wire tool when unfolding bus.
2019-05-05 17:14:30 +01:00
Jeff Young
a42a4b0b52
Implement immediate bus unfold and add bus unfold to selection context menu.
2019-05-05 17:14:30 +01:00
Jeff Young
fd546da640
Homogenize hit testing and selection return types.
...
Prep work for sharing SCH_SELECTION_TOOL with LibEdit.
2019-05-05 17:14:30 +01:00
Jeff Young
2d28ab7dd2
More cleanup.
2019-05-05 17:14:30 +01: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
ed0e6af66d
Move to direct tool registration.
...
It was confusing that the primary frames registered their tools
differently than the other frames. In addition, since the other
frames also added their own tools, foo_actions::RegisterAllTools()
didn't really register all tool but rather those used by the
principal frame (PCB_EDIT_FRAME, SCH_EDIT_FRAME, etc.)
2019-05-05 17:14:30 +01:00
Jeff Young
dd9c426922
Cleanup a TODO.
2019-05-05 17:14:30 +01:00
Jeff Young
b5fd7b9842
Move Leave Sheet to the top of the context menu.
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
2edb09e583
Double click action should enter sheet.
2019-05-05 17:14:30 +01:00
Jeff Young
4ccfa17ff9
Fix bugs in sheet duplicate & copy/paste.
...
Don't edit sheet during AddToScreenAndUndoList() call. If it's
cancelled and we delete the item, callers will still own pointers
to the freed memory. Do it in New and Paste instead.
2019-05-05 17:14:30 +01:00
Jeff Young
554094ada6
Fix de-reference of freed memory issue.
2019-05-05 17:14:30 +01:00
Jeff Young
a825cdfa5a
Fix new image drawing issue.
2019-05-05 17:14:30 +01:00
Jeff Young
bcdc3ad90a
Set IS_NEW flag on new images. And a bunch of cleanup of dead code.
2019-05-05 17:14:30 +01:00
Jeff Young
21b315f2af
Finish removing GetCurItem() from eeschema.
2019-05-05 17:14:30 +01:00
Jeff Young
6e695aac25
Move bus unfold and symbol unit selection to modern toolkit.
2019-05-05 17:14:30 +01:00
Jeff Young
f4b92e6acf
Refactor as SCH_DRAWING_TOOL was getting too big.
2019-05-05 17:14:30 +01:00
Jeff Young
2774af928a
Remove extra Show Datasheet menu item.
2019-05-05 17:14:30 +01:00
Jeff Young
20b63174dc
Support wire & bus drawing from selection tool.
2019-05-05 17:14:30 +01:00
Jeff Young
f95f202f81
Restore Jon's change which I accidentally nuked.
2019-05-05 17:14:30 +01:00
Jeff Young
f187f91f57
Seth's fixes to regex processing.
2019-05-05 17:14:30 +01:00
Jeff Young
1cc3055481
Allow rotation/mirroring of wires.
2019-05-05 17:14:30 +01:00
Jeff Young
4ca0f4da10
Fixes to the context menu logic around wire/bus drawing.
2019-05-05 17:14:30 +01:00
Jeff Young
7273748c57
Context menu cleanup for eeschema modern toolset.
2019-05-05 17:14:30 +01:00
Jeff Young
90a663facd
Implement sheet cleanup in modern toolset.
2019-05-05 17:14:30 +01:00
Jeff Young
1e5334f5d4
Implement DeMorgan conversions in modern toolset.
2019-05-05 17:14:30 +01:00
Jeff Young
7c54fc9c46
Cleanup.
2019-05-05 17:14:30 +01:00
Jeff Young
29f1787af2
Logic improvements and fixes for wire segment selection states.
2019-05-05 17:14:30 +01:00
Jeff Young
c09817e08c
Context menus for labels.
2019-05-05 17:14:30 +01:00
Jeff Young
0ea156042b
Fix over-zealous wire-grabbing for drag.
2019-05-05 17:14:30 +01:00
Jeff Young
a61bbea4bd
Fix issue with selection being inadvertantly cleared via ClearFlags().
...
Also fixes an undo bug when pick-component-rotate-place-undo.
2019-05-05 17:14:30 +01:00
Jeff Young
59af079cbd
Fix some hotkey collisions.
2019-05-05 17:14:30 +01:00
Jeff Young
58ba573038
Handle cascading selections in placement.
...
See https://forum.kicad.info/t/call-for-testers-eemodern/16663/32
2019-05-05 17:14:29 +01:00
Jeff Young
e9dd8542d1
Allow user to change from move to drag and vice versa.
...
Also fixes bugs when doing a duplicate in the middle of a move.
2019-05-05 17:14:29 +01:00
Jeff Young
0af7c87277
Add resize sheet to context menus. Fix bugs in it.
...
Also assign a bunch of icons that were missing.
2019-05-05 17:14:29 +01:00
Jeff Young
bbd8659f69
Implement explicit cross-probing (mainly for sheets which are too slow to do automatically).
...
Also moves the message panel updaters to SCH_INSPECTION_TOOL.
2019-05-05 17:14:29 +01:00
Jeff Young
588d13a912
Fix gcc issue with temp variable and move some collection specs.
...
Having the collection specs localized with their code improves
encapsulation.
(Thanks to crasic for the original patch.)
2019-05-05 17:14:29 +01:00
Jeff Young
35e8a340ca
Add enter/leave sheet to modern toolset.
2019-05-05 17:14:29 +01:00
Jeff Young
423d430b58
Replace deleteNode and deleteConnection with selectNode and selectConnection.
2019-05-05 17:14:29 +01:00
Jeff Young
1ff7869ec3
Move Edit with Symbol Editor to modern toolset context menu.
2019-05-05 17:12:59 +01:00
Jeff Young
f81007f74b
Some clean-up and moving message panel update to selection event.
2019-05-05 17:12:59 +01:00
Jeff Young
2244dcd567
Move show datasheet to SCH_INSPECTOR_TOOL and add show marker info.
2019-05-05 17:12:59 +01:00
Jeff Young
902be18a04
More modern toolset context menu work.
...
Text/label type changes and bus entry shape changes. And some
context menu bug fixing.
2019-05-05 17:12:59 +01:00
Jeff Young
ddbd92c274
Add some more context menu stuff to eeschema modern toolset.
2019-05-05 17:12:59 +01:00
Jeff Young
b526461a8e
Fix colliding hotkeys issue.
...
All grid commands need to be shared now as they're implemented
by a common tool.
2019-05-05 17:12:59 +01:00
Jeff Young
f2474d074b
Clean out stuff that's already been moved.
2019-05-05 17:12:59 +01:00
Jeff Young
42383ae871
Build out some of the modern toolkit context menus.
2019-05-05 17:12:59 +01:00
Jeff Young
da988428cf
Add modern toolset cut/copy/paste. They now use the system clipboard.
2019-05-05 17:12:59 +01:00
Jeff Young
2bd4a1b58c
Implement properties dialogs in modern toolset.
2019-05-05 17:12:59 +01:00
Jeff Young
9e2bbcb8b6
Clean up delete and fix bug with juctions getting double-deleted.
2019-05-05 17:12:59 +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
Jeff Young
eacc3e67a5
Implement repeatDrawItem in modern toolkit and fix bugs.
...
Fixes moving of SCH_FIELDS.
Fixes undo operations around SCH_FIELDS and SCH_PINS.
2019-05-05 17:12:59 +01:00
Jeff Young
4e0208dfba
Move duplicate item and block to modern toolset.
2019-05-05 17:12:59 +01:00
Jeff Young
a80f7432b7
Update dangling ends when dragging block.
2019-05-05 17:12:59 +01:00
Jeff Young
1c8461bec7
Transition mirroring to modern toolset.
2019-05-05 17:12:59 +01:00
Jeff Young
8c00dac3c7
Add modern toolset notification to eeschema undo/redo.
2019-05-05 17:12:59 +01:00
Jeff Young
f200c61897
Start transitioning block operations to modern toolset.
2019-05-05 17:12:59 +01:00
Jon Evans
6d918ea1f1
A few fixes and refactors to connectivity propagation
2019-05-05 00:03:58 -04:00
Jon Evans
2f2d48938e
Ensure connection sheet is properly reset at reinit time
2019-05-04 22:23:35 -04:00
Jon Evans
e0ada1379f
Allow clearing PcbNew highlight through cross-probing
...
Fixes: lp:1821486
* https://bugs.launchpad.net/kicad/+bug/1821486
2019-05-04 16:18:51 -04:00
Michael Kavanagh
2a09664ebc
Clean up import and export menus
...
Fixes: lp:1822907
* https://bugs.launchpad.net/kicad/+bug/1822907
2019-05-02 12:25:59 -04:00
Jon Evans
839f0fbfcf
Refactor and fix a few issues with bus unfolding
2019-05-01 22:29:02 -04:00
Jon Evans
cbc8faf49b
Restore start segment behavior to unfold bus action
...
This must have gotten lost in the move
Fixes: lp:1826682
* https://bugs.launchpad.net/kicad/+bug/1826682
2019-05-01 21:03:30 -04:00
Jon Evans
efa0c97da9
Make sure net name prefixes carry through to netlist
2019-05-01 20:48:27 -04:00
Jon Evans
4efed8a4dd
Ensure global labels get flagged as lonely in all circumstances
...
Fixes: lp:1827214
* https://bugs.launchpad.net/kicad/+bug/1827214
2019-05-01 20:15:21 -04:00
Wayne Stambaugh
7d803437e2
Eeschema: fix broken symbol library links.
...
Force the symbol library links whenever the symbol library table has been
modified. This will use the cache as a fallback when a library has been
removed that contains links in the schematic rather than display.
Fix the SCH_COMPONENT symbol resolver when falling back to the cache. The
resolver was using the LIB_ID ':' notation which was failing. Replacing
':' with '_' fixed this issue. This was also an issue when generating the
symbol message panel information.
Convert wxLogDebug to wxLogTrace in symbol resolver code path. Add new
trace type KICAD_SYM_RESOLVE.
Fixes lp:1821606
https://bugs.launchpad.net/kicad/+bug/1821606
2019-04-30 13:05:27 -04:00
Jon Evans
9741b43dae
Make lines and bus entries less frustrating to select
2019-04-29 21:28:53 -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
John Beard
42d20cbd96
Pcbnew: use same null check as eeschema for recently used
...
When Pcbnew's add footprint browser is run up, it constructs
the recently used list without checking for nulls.
Although the DoAddLibrary call does internally check for
null, it's easier to filter these out before placing into
the vector in the first place.
The same logic in the symbol tree is already handled in the
same way.
2019-04-29 16:52:39 +01:00
Jon Evans
96d2fc840b
A tiny optimization for SCH_CONNECTION
2019-04-28 23:36:41 -05:00
Jeff Young
3aaba79b87
Fix crash when unfolding bus.
...
Thanks to Julien Faucher for the investigation into the problem.
2019-04-28 18:41:17 +01:00
John Beard
fcc4a84e0e
GAL: add some trace to GAL display options config
...
This can be helpful when tracing where certain configurations
come from (some apps load from other apps' config basenames).
2019-04-27 14:57:14 +01:00
John Beard
33fe9a2761
Eeschema: Symbol preview widget needs common config for Hi-DPI
...
Currently, this widget doesn't read the common library settings.
This means it doesn't use the configured DPI scaling or anti-aliasing
settings.
Use the ReadConfig method on the GAL options to fix (rather than
only ReadAppConfig).
Fixes: lp:1825913
* https://bugs.launchpad.net/kicad/+bug/1825913
2019-04-27 14:57:09 +01:00
John Beard
eccadd92fb
Eeschema: fix resizing of pin table and edit symbol dialog
...
These dialogs had logic to avoid a table re-adjustment unless
the width changed. This was done to avoid spurious resizing
calls under GTK+3. This was commit
13249b723b
, fixing bug lp:1817810.
However, by only calling event.Skip() when the width changed,
redraws were inhibited when only the height changed.
Placing the Skip() outside the width-change check fixes this,
and does not re-introduce the lp:1817810 bug (it is the column
adjust call that causes that).
Fixes: lp:1826615
* https://bugs.launchpad.net/kicad/+bug/1826615
2019-04-27 14:01:05 +01:00
Jeff Young
6536b4766c
Move DeactivateTool until after the block items list has been updated.
...
Fixes: lp:1825855
* https://bugs.launchpad.net/kicad/+bug/1825855
2019-04-26 14:49:43 +01:00
Jeff Young
50a9a6e1f7
Fix bug with swapping pin data for undo.
2019-04-26 12:44:35 +01:00
Jeff Young
0844a5c478
Implement more robust pinMap.
...
In particular, one that doesn't suffer from pointers going stale
when the m_pins vector is re-sized.
2019-04-25 23:10:45 +01:00
Jeff Young
f9dd1324da
Cleanup problems with fighting event loops.
2019-04-25 22:58:58 +01:00
Jeff Young
8049c07a34
Add filtering to RequestSelection().
2019-04-25 22:58:58 +01:00
Jeff Young
e476cfcec5
Move SPICE tools to modern framework.
2019-04-25 22:58:58 +01:00
Jon Evans
3233bedc7a
Ensure pin map pointers are valid after pin vector is filled
2019-04-25 16:04:01 -04:00
Jon Evans
0ce32f7be1
Remove UpdatePins call from connectivity calculation
2019-04-25 15:32:51 -04:00
Jon Evans
098102220e
Fix detection of lonely local labels
2019-04-25 15:31:44 -04:00
Jon Evans
f0376f1379
Improve ERC checking of labels
...
Fixes: lp:1824629
* https://bugs.launchpad.net/kicad/+bug/1824629
2019-04-25 15:10:39 -04:00
Jon Evans
e06d37090a
A few connectivity performance tweaks
2019-04-25 00:37:10 -04:00
Jon Evans
ed27c50692
Improve handling of non-unique connections
2019-04-24 23:47:57 -04:00
John Beard
15bba27406
BITMAP_BASE: Add const image data accessor
...
This allows a const BITMAP_BASE to expose const image
data. This is currently done with const_casts, which is
"OK", only as long as the source image is not declared
const, in which case it's undefined behaviour.
Also immediately dereference the pointer to a reference
if it's not checked to make the non-null requirements
explicit at the point of access.
2019-04-24 17:31:22 +01:00
Jeff Young
5e556f0c6a
Fix segfault when finishing a wire at a connection point.
2019-04-24 14:43:10 +01:00
Jeff Young
e046e8f593
Fix crash when <esc>ing from Hierarchical Sheet drawing tool.
2019-04-24 13:43:46 +01:00
Jeff Young
d281f051ed
Move eeschema delete tool to modern toolset.
2019-04-23 14:19:55 +01:00
Jeff Young
a967adbf26
Don't toggle selection twice when trying to select.
...
Also fixes issues with trying to use a CONTEXT_MENU as a wxMenu.
2019-04-23 14:19:55 +01:00
Jeff Young
b6674e3bcb
Prevent segfault when running selection disambiguation menu.
2019-04-23 10:59:07 +01:00
Jon Evans
ff6a8cd537
Revert "Remove UpdatePins call from connectivity calculation"
...
This reverts commit b351e70d13
.
Causes crashes on entering subsheets; don't have time to debug yet
2019-04-22 23:31:11 -04:00
Jon Evans
782b8227fa
Clean up connection message panel info
2019-04-22 22:58:41 -04:00
Jon Evans
b351e70d13
Remove UpdatePins call from connectivity calculation
2019-04-22 22:49:24 -04:00
Jon Evans
62811d3209
Squish some warnings
2019-04-22 21:18:47 -04:00
Jeff Young
c994961ebf
Fix for SCH_PIN operator= from Simon Richter.
2019-04-23 00:27:59 +01:00
Jeff Young
b03e9061ff
Have another go at fixing 'w' command when wire tool is already active.
2019-04-23 00:11:26 +01:00
Jeff Young
0445a9913f
Deactivate tool on block action.
...
Fixes: lp:1825855
* https://bugs.launchpad.net/kicad/+bug/1825855
2019-04-23 00:11:19 +01:00
Jeff Young
f6d0166584
Don't exit wire tool at end of wire.
...
Fixes: lp:1825871
* https://bugs.launchpad.net/kicad/+bug/1825871
2019-04-22 22:13:47 +01:00
Jeff Young
1a007c3e4b
Implement SCH_SELECTION_TOOL (but still with legacy semantics).
2019-04-22 22:08:18 +01:00
Jeff Young
8e812c012d
Second activation of wire or bus tool should start drawing.
...
Fixes: lp:1825871
* https://bugs.launchpad.net/kicad/+bug/1825871
2019-04-22 22:08:18 +01:00
Jeff Young
17b3b8f30d
Fix wandering text problem.
...
Setting a variable on a temp copy doesn't do much of use.
Fixes: lp:1825853
* https://bugs.launchpad.net/kicad/+bug/1825853
2019-04-22 22:08:18 +01:00
Jeff Young
5e2cf51309
Improve robustness of SCH_PIN storage architecture.
...
In particular, allow short-term storage of pointers to SCH_PINs.
2019-04-22 11:19:43 +01:00
Jeff Young
a461eae8b9
Fix 100s of usages of GetFlags() which conflated != 0 with being edited.
...
While this was true long ago, many flags have been added since which
have nothing to do with editing (HIGHLIGHTED, BEGIN_ONPAD, etc.)
2019-04-22 09:58:06 +01:00
Jeff Young
64ba866146
Fix ignoreMouseEvents getting stuck in drawing tool.
...
Fixes: lp:1825613
* https://bugs.launchpad.net/kicad/+bug/1825613
2019-04-22 09:32:57 +01:00
jean-pierre charras
6e8dd598c0
Minor fixes in translatable strings. Fix also a minor compil warning.
2019-04-22 09:34:28 +02:00
Jon Evans
e2c12d8c25
Overhaul connectivity neighbor and global connection processing
2019-04-21 19:10:44 -04:00
Simon Richter
ed4c9f7ddb
Use format string for composed strings
...
Some translations may need this.
2019-04-20 22:01:43 +01:00
Jon Evans
77fe7d8325
Remove netlist QC code; it's outlived its usefulness
2019-04-19 22:53:16 -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
Jon Evans
eca9cc35c6
Update all labels on a migrated bus
2019-04-19 22:10:30 -04:00
Jon Evans
a92bb94612
Ignore multiple identical bus labels
...
Fixes: lp:1825560
* https://bugs.launchpad.net/kicad/+bug/1825560
2019-04-19 22:03:22 -04:00
Jeff Young
f2d9887409
Make usage of BRIGHTENED consistent (m_Flags, not m_Status).
2019-04-19 17:19:41 +01:00
Jeff Young
5113c3cc58
Hook up <esc> to cancelInteractive ACTION.
2019-04-19 17:08:19 +01:00
Jeff Young
954998ec9a
Lay the foundation for handling selected SCH_ITEMs.
2019-04-19 16:54:29 +01:00
Jeff Young
e9c1cd2371
Fix duplicate hotkeys.
2019-04-19 01:07:36 +01:00
Jeff Young
d88126e519
Tidy up and fix end sheet command.
2019-04-19 01:00:54 +01:00
Jeff Young
f274e0f68b
Move some more immediate actions to modern toolset.
2019-04-19 00:42:50 +01:00
Jeff Young
d0bc84bcbf
Don't allow legacy and modern toolset to fight over moving objects.
...
Fixes: lp:1825427
* https://bugs.launchpad.net/kicad/+bug/1825427
2019-04-19 00:42:36 +01:00
Jeff Young
2bcf38d2b6
Add try/catch block around writing a new library.
...
Fixes: lp:1825203
* https://bugs.launchpad.net/kicad/+bug/1825203
2019-04-18 22:00:32 +01:00
Jeff Young
cc18464f8f
Move sheet drawing and resizing to modern toolset and fix some bugs.
...
Fixes: lp:1825204
* https://bugs.launchpad.net/kicad/+bug/1825204
2019-04-18 18:19:12 +01:00
Jeff Young
8e2ef339b6
Handle modern-toolset panning.
...
Fixes: lp:1748850
* https://bugs.launchpad.net/kicad/+bug/1748850
2019-04-17 23:56:00 +01:00
Jeff Young
0772b54845
Move eeschema zoom-selection to modern toolset.
...
Fixes: lp:1825164
* https://bugs.launchpad.net/kicad/+bug/1825164
2019-04-17 21:49:50 +01:00
Jeff Young
c88fd514a0
Implement drawing tools in modern toolset.
...
Fixes: lp:1825192
* https://bugs.launchpad.net/kicad/+bug/1825192
2019-04-17 21:49:50 +01:00
Jeff Young
460909ea9a
Move click-to-place tools to modern toolset.
2019-04-16 16:20:52 +01:00
Jeff Young
ecfa05e2ca
Allow adding symbols/footprints from editors and browsers.
...
This was always possible from modal browsers and from the footprint
editor, but it's now also possible from non-modal browsers and the
symbol editor.
Fixes: lp:920380
* https://bugs.launchpad.net/kicad/+bug/920380
2019-04-16 16:20:51 +01:00
Jeff Young
32c86a4ca4
Move place symbol to modern toolset.
2019-04-16 16:20:51 +01:00
Jon Evans
895d4c9e1a
Hide simulator settings tabs that aren't implemented yet
...
Calling Hide() is apparently not enough in Windows
2019-04-15 23:11:39 -04:00
Seth Hillbrand
1437e56b72
eeschema: Prevent invalid '0' element in components
...
In the component, an m_unit/m_convert element is 1-indexed as opposed to
the library where they are 0-indexed. The 0-index in the library is
reserved for those elements that are shared across all conversion/unit
whereas it is invalid for the component.
Fixes: lp:1824764
* https://bugs.launchpad.net/kicad/+bug/1824764
(cherry picked from commit c4be74a9d0
)
2019-04-15 12:40:59 -07:00
jean-pierre charras
6cdde97e6f
ngspice dll search: add auxiliary search paths on Linux, like on other platforms
2019-04-15 11:04:59 +02:00
jean-pierre charras
6d4fbcd5bb
SIM_PLOT_FRAME_BASE: very minor fix.
2019-04-15 10:13:47 +02:00
jean-pierre charras
ad5a1fd963
SIM_PLOT_FRAME: cosmetic enhancement: add icons in main menu.
...
Fix also Upeer/lower case issues in main menu strings.
2019-04-14 15:31:46 +02:00
Jeff Young
b63fab92cf
Move Eeschema net highlighting to modern toolset.
2019-04-14 12:10:48 +01:00
Jon Evans
078fdb9077
Fix rotation of global and hierarchical labels
...
Fixes: lp:1824432
* https://bugs.launchpad.net/kicad/+bug/1824432
(cherry picked from commit 593a5181d7
)
2019-04-13 17:03:27 -04:00
Jon Evans
77706a7ea6
Fix ngspice nested DC sweep command
...
Fixes: lp:1824336
* https://bugs.launchpad.net/kicad/+bug/1824336
(cherry picked from commit c29274e760
)
2019-04-13 16:39:00 -04:00
Jon Evans
eadf6d93bc
Fix ngspice netlisting when net names contain '/'
...
Fixes: lp:1821502
* https://bugs.launchpad.net/kicad/+bug/1821502
(cherry picked from commit 216573bf48
)
2019-04-13 15:37:22 -04:00
Jeff Young
94a948fdd1
Move grid selection for both Eeschema and Pcbnew to COMMON_TOOLS.
2019-04-13 18:43:35 +01:00
Jeff Young
fc7f5630c7
Move eeschema zoom operations to modern toolset.
2019-04-13 18:43:26 +01:00
Jon Evans
734e61d4c2
Properly initialize sheets when loading them from ERC dialog
...
When displaying a sheet from this path, it's possible the sheet will
not have been initialized yet. Call DisplayCurrentSheet() to make sure
it is initialized, and then call RedrawScreen to update the zoom level.
Fixes: lp:1824362
* https://bugs.launchpad.net/kicad/+bug/1824362
(cherry picked from commit 1c235a5c89
)
2019-04-13 12:30:24 -04:00
jean-pierre charras
68c2f06074
Eeschema: fix crash when exporting a netlist, if the schematic netlist cannot be built.
...
It happens when a symbol is not annotated, and if the user closes the opened annotate dialog without making the annotation
2019-04-13 17:54:33 +02:00
Seth Hillbrand
9ea7fe5338
eeschema: Finish moving Advanced Config bus
...
Missed a definition for unfolding bus
Fixes: lp:1824628
* https://bugs.launchpad.net/kicad/+bug/1824628
2019-04-13 07:29:33 -07:00
Seth Hillbrand
3e7969ab8d
eeschema: Place bus unfold on the stack
...
When activating a bus unfold, the results should be placed with the new
line generation to allow proper undo ordering.
2019-04-13 07:28:22 -07:00
Seth Hillbrand
3bdd69ad6b
eeschema: Fix undo stacking for break wire
...
The break wire command is actually two commands: modify the existing
wire and add a new wire. This means that the command must append to the
previous commit to avoid breaking the undo stack
Fixes: lp:1824251
* https://bugs.launchpad.net/kicad/+bug/1824251
2019-04-13 07:11:24 -07:00
Seth Hillbrand
822cd9c6ef
eeschema: Remove UR_WIRE_IMAGE
...
The wire image undo/redo option required special handling and was only
used in a single location. Replacing with single change handling
reduces the code complexity
2019-04-13 07:11:24 -07:00
Seth Hillbrand
94470f7da6
eeschema: Avoid modifying the schematic in undo
...
OnModify() is called when staging the undo/redo modifications. This
requires that it not create changes that themselves need to be placed
in the undo/redo stack
2019-04-13 07:11:24 -07: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
2d7ef9813f
Fix backward logic in REALTIME
2019-04-12 09:38:12 -07: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
John Beard
ab2281d26f
GAL opts: move config reading into GAL_DISPLAY_OPTIONS
...
Move repeated GAL config reading routines into GAL_DISPLAY_OPTIONS.
THe app-level config is in here already, do the same for the
common config.
This means that the configs are loaded consistently, which fixes
the symbol-chooser preview window, which previously didn't use the
same config routine as other GAL canvases.
Future work could move these functions to free functions that
act on the public interface of GAL_DISPLAY_OPTIONS to avoid
GAL_DISPLAY_OPTIONS having to know about wxConfig and wxWindow.
Fixes: lp:1824524
* https://bugs.launchpad.net/kicad/+bug/1824524
2019-04-12 16:08:11 +01:00
Jon Evans
c1ee395303
Don't propagate secondary connections with the same name
2019-04-12 09:26:07 -04:00
Jon Evans
6ff1919ae0
Fix subgraph neighbor calculation
...
Subgraphs are not in any particular order so the entire set must be
scanned, not starting at subgraph_it + 1
2019-04-12 00:23:52 -04:00
Jon Evans
49d8c29608
Fix a few issues with global buses
2019-04-11 23:38:32 -04:00
Jon Evans
df600fc1a2
Fix a few ERC issues with no-connects and power pins
...
Fixes: lp:1824359
* https://bugs.launchpad.net/kicad/+bug/1824359
2019-04-11 21:24:39 -04:00
Jeff Young
3c11b89e4c
Hook up refresh buttons to library tree synchronisation.
...
Fixes: lp:1820057
* https://bugs.launchpad.net/kicad/+bug/1820057
2019-04-11 19:45:10 +01:00
jean-pierre charras
0fae86b1ba
Pcbnew: suppress incorrect wx alert when opening the plot dialog from File/Plot menu
2019-04-11 17:36:51 +02:00
Jon Evans
232b1c799f
Add a workaround for bus unfolding without real-time connectivity
...
Fixes: lp:1822728
* https://bugs.launchpad.net/kicad/+bug/1822728
2019-04-11 00:17:22 -04:00
Jon Evans
3b46253056
Add profiling to SchematicCleanUp portion of connectivity calculations
2019-04-10 23:29:17 -04: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
e28c937a5c
Limit number of subgraph checks
...
Candidate subgraphs only need to be checked once, so start the iteration
from the next element in the driver vector
2019-04-10 16:40:24 -07:00
Seth Hillbrand
1c93b122f1
SCH_PIN: Guard the calculated map
...
Pins are used in threaded application so we need to keep the
precalculation map guarded
2019-04-10 15:29:00 -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
Jeff Young
e90452d0e2
When checking for duplicate aliases look in the dialog not the symbol.
...
Fixes: lp:1821543
* https://bugs.launchpad.net/kicad/+bug/1821543
2019-04-10 21:21:00 +01:00
Jon Evans
105520b235
Fix neighbor detection candidate logic
2019-04-10 00:45:41 -04:00
Seth Hillbrand
a0981d06a7
Remove std:: aliasing
2019-04-09 21:16:05 -07:00
Seth Hillbrand
9ef442b3a3
eeschema connectivity - Adjust performance in init
...
This allow single init for map structures, improving first-run
performance.
2019-04-09 21:00:11 -07:00
Jon Evans
541c2fdb29
Performance: Move vector inside SCH_SHEET_PATH so hash can be cached
2019-04-09 21:09:48 -04:00
Seth Hillbrand
86d32fa34d
CONNECTION_GRAPH: Performance mods
...
Reduce loop count and pre-set the needed vectors. Also thread the
dangling ends calculation on a per-sheet basis.
2019-04-09 21:09:48 -04:00
Jeff Young
fe1c2310e4
Readjust Edit Symbol Properties when symbol references changes.
...
The new reference may contain different numbers of units and/or
different deMorgan conversion settings.
Fixes: lp:1822316
* https://bugs.launchpad.net/kicad/+bug/1822316
2019-04-09 17:06:27 +01:00
Wayne Stambaugh
3d33cba574
Eeschema: fix schematic text object plotting issue.
...
Save and restore text thickness in SCH_TEXT::Plot() function to prevent
the plotting default thickness value from stepping on the original text
thickness and causing all of the text objects to magically change to bold.
Fixes lp:1823165
https://bugs.launchpad.net/kicad/+bug/1823165
2019-04-09 10:14:32 -04:00
jean-pierre charras
59e6d3bf22
Ensure netlist is always up to date when creating a netlist.
...
A previous commit updated the netlist only on cross probing, that not covered all cases.
2019-04-09 10:36:39 +02:00
Seth Hillbrand
cf69cb5637
eeschema: Return CONNECTION when initing
2019-04-08 21:59:49 -04:00
Jon Evans
bf051b5c41
Cache InNetlist status for components
2019-04-08 21:54:41 -04:00
Jon Evans
94ba1bcb87
Update connection graph before sending netlist to pcbnew
...
Fixes: lp:1823449
* https://bugs.launchpad.net/kicad/+bug/1823449
2019-04-08 21:36:16 -04:00
Jeff Young
c78c3c8198
Allow no-connects to be dragged.
...
Fixes: lp:1821342
* https://bugs.launchpad.net/kicad/+bug/1821342
2019-04-09 00:34:26 +01:00
Jeff Young
d88df890ed
Fix merge issue between fetch netlist stuff and new connectivity graph.
2019-04-08 21:13:46 +01:00
jean-pierre charras
3b194d6993
Fix a collision name between lib_pin.cpp and a Windows header.
2019-04-08 17:10:55 +02:00
Jeff Young
77f15eeeaf
Support synchronous messaging over KIWAY EXPRESS.
...
This allows us to make the various netlist and pcb update routines
more atomic and less reliant on carefully sequenced asynchronous
messages.
This is also a prelude to adding support for footprint testing
without a netlist.
2019-04-08 13:26:09 +01:00
Jeff Young
b6c0aeb608
Move cut/copy/paste part (in libedit tree) to real clipboard.
...
Fixes: lp:1821547
* https://bugs.launchpad.net/kicad/+bug/1821547
2019-04-08 11:21:58 +01:00
Jon Evans
bd487d2c25
Rework logic for linking local subgraphs together
2019-04-07 23:54:47 -04:00
Jon Evans
2162b53d72
Allow selecting more items for highlighting
2019-04-07 23:54:47 -04:00
Jon Evans
c07de84c05
Suppress false ERC warnings for invisible power pins
2019-04-07 23:54:47 -04:00
Jeff Young
684bb62fd8
Escape slashes in labels and netnames.
...
Also re-allows spaces, as they can already come in through sheet
names.
Fixes: lp:1798621
* https://bugs.launchpad.net/kicad/+bug/1798621
2019-04-07 00:24:10 +01:00
Wayne Stambaugh
615c49315f
Minor symbol library rescue dialog fixes.
...
Adjust the sizer proportions slightly to eliminate the reported bug.
This may not be the ideal way to do this and there could be some issues
on other platforms but it does resolve the issue on gtk3.
Fixes lp:1820084
https://bugs.launchpad.net/kicad/+bug/1820084
2019-04-06 08:15:44 -04:00
Jeff Young
d928aa9780
Infer pin properties from last pin and default pin pitch.
...
Fixes: lp:1822183
* https://bugs.launchpad.net/kicad/+bug/1822183
2019-04-05 18:52:51 +01:00
Jeff Young
ea43866563
Move legacy netlist read/write to import/export.
...
Fixes: lp:1610529
* https://bugs.launchpad.net/kicad/+bug/1610529
2019-04-05 16:11:15 +01:00
Jeff Young
2aad4a5e57
Remove dead code from removal of eeschema legacy canvas.
2019-04-05 15:54:31 +01:00
Jeff Young
30f7d6a2c1
Clean up some translation issues.
...
(As in coordinate translation, not I18N.)
2019-04-05 11:42:45 +01:00
Wayne Stambaugh
ee14da3093
Minor schematic formatter fix.
...
Apparently at some point in KiCad's development, a '~' character was
prefixed to the symbol name to indicate that it was not visible. The
visibility state is now saved in the name field so remove the prefix.
The parser was kept unchanged.
Fixes lp:1632048
https://bugs.launchpad.net/kicad/+bug/1632048
2019-04-04 10:43:04 -04:00
Jeff Young
3a1b412fbf
Use a bigger hammer when refreshing fields in table.
...
Fixes: lp:1823050
* https://bugs.launchpad.net/kicad/+bug/1823050
2019-04-04 12:26:29 +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
ec2c571abb
Fix merging of subgraphs with multiple labels
2019-04-03 23:15:45 -04:00
Jon Evans
ff8b7cc6c1
Fix SCH_PIN location calculation
2019-04-03 23:15:22 -04:00
Jon Evans
99e57724e6
Hierarchical ports count as strong drivers
2019-04-03 22:58:14 -04:00
Jon Evans
5a0944e9a0
Don't de-conflict subgraphs across sheets
2019-04-03 22:58:14 -04:00
Jon Evans
d5990100e1
Promote locally-labeled nets to global when tied to global buses
...
Fixes: lp:1822964
* https://bugs.launchpad.net/kicad/+bug/1822964
2019-04-03 22:58:14 -04: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
Jeff Young
d8cc2f8280
More cleanup from non-reference return from GetText().
2019-04-03 19:35:25 +01:00
Jeff Young
5ac96c6127
More mutex locking for SCH_FIELDs.
...
Fixes: lp:1822678
* https://bugs.launchpad.net/kicad/+bug/1822678
2019-04-03 17:04:59 +01: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
8a9b82c2a2
Switch CONNECTION_GRAPH to wxLogTrace
2019-04-02 22:58:11 -04:00
Jon Evans
b11f9fc873
Performance: don't construct temporary SCH_LINEs in MergeOverlap()
2019-04-02 22:46:22 -04:00
Jon Evans
948a61711d
Add thread-safety to SCH_FIELD::IsVoid()
...
Fixes: lp:1822678
* https://bugs.launchpad.net/kicad/+bug/1822678
2019-04-02 19:56:53 -04:00
John Beard
4eb30f6b85
QA: Enable eeschema tests
...
Redesignate the eagle test as eeschema tests and build
more like the other unit tests.
Enable as a test in Ctest now that the test executes without
crashing.
The loading of the file with the hardocded part is still
not enabled, as this needs more infrastructure to support it.
2019-04-02 18:26:33 +01:00
John Beard
6f1c3f5ef8
Eeschema: construct simulator cursors on demand
...
Statically constructing wxCursors as used for the probe
and tune cursors crashes the qa_eagle_plugin test
instantly.
Fix this by introducing a new class CURSOR_STORE,
which allows to abstract the platform wierdness of wxCursors
and allow the simulator to laziliy init its own cursors
at runtime.
This code isn't properly tested, as these cursors are never
actually used. However, it does allow the eeschema unit test
to run.
Fixes: lp:1781191
* https://bugs.launchpad.net/kicad/+bug/1781191
2019-04-02 18:26:33 +01:00
Michael Kavanagh
b0674b8802
Add Ctrl+, hotkey to preferences dialog
...
Also change interactive router settings from Ctrl+, to Ctrl+Shift+,
2019-04-02 12:57:27 -04:00
Michael Kavanagh
fe6bc411dd
Fix 'hokey' -> 'hotkey' typo
2019-04-02 12:57:26 -04:00
Jon Evans
3eef4bceac
Don't assert unnecessarily when collapsing power ports
...
See lp:1822678
2019-04-02 11:38:35 -04:00
jean-pierre charras
e7900e994d
Add a specific bitmap to Bus definition menu entry.
2019-04-02 14:31:28 +02: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
8b30cd4389
Fix edge case crash when processing invisible power pins
2019-04-01 20:21:50 -04:00
Jeff Young
b9a8680735
Disable alias controls when no alias is selected.
...
Fixes: lp:1821698
* https://bugs.launchpad.net/kicad/+bug/1821698
2019-04-01 13:23:37 +01: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
Jeff Young
3da5396c8d
Fixes for importing board setup properties.
...
Save/restore default netclass.
Read layers back in with correct syntax ('.' between keyword and layer name).
Write layers to project file.
Read/write layer enablement bits.
Don't set solder paste margin min to 0 (most of them are negative).
Fixes: lp:1811990
* https://bugs.launchpad.net/kicad/+bug/1811990
2019-04-01 13:23:37 +01:00
Jon Evans
0f1ab3be2d
Update connectivity before engaging highlight tool
2019-03-31 19:58:23 -04:00
Jon Evans
2466b4363d
Cache subgraph driver connections for improved performance
2019-03-31 19:58:15 -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
Jon Evans
74ace97249
Don't update graph when entering/leaving sheets
2019-03-31 19:57:25 -04:00
Jon Evans
05ed906aea
Restore ERC checks that were accidentally removed
2019-03-31 19:57:12 -04:00
Jon Evans
babdc9fd7b
Improve naming of weak subgraphs
2019-03-31 19:57:06 -04:00
Jon Evans
9589427960
Refactor how at-load schematic normalization is called
...
Don't prepend "/" for nets at the top level
Revert "Don't prepend "/" for nets at the top level"
This reverts commit fa9533222f7d33eee5f3fa2320bd9f3167e28076.
2019-03-31 19:57:00 -04:00
Jon Evans
4bc7e6fdfa
Add missing junctions during schematic cleanup
2019-03-31 19:56:54 -04:00
Jon Evans
b687a178ef
Suppress ERC warnings about multiple labels if the text is the same
2019-03-31 19:56:47 -04:00
Jon Evans
b15da3c656
Don't connect bus entries and bus labels that happen to overlap
2019-03-31 19:56:40 -04:00
Jon Evans
65af2c8b6c
Bump file format version
2019-03-31 19:56:35 -04:00
Jon Evans
82d4029831
Clean up cruft in netlist export
2019-03-31 19:56:22 -04:00
Jon Evans
e98debfeb2
Fix a few issues with hierarchical propagation
2019-03-31 19:56:07 -04:00
Jon Evans
3c714f1d8c
Fix undo handling of SchematicCleanUp
2019-03-31 19:55:57 -04:00
Jon Evans
7b9f186464
Fix false assert when CONNECTIVITY_DEBUG is enabled
2019-03-31 19:55:49 -04:00
Jon Evans
54bfeb742c
Fix issues with bus unfolding position
2019-03-31 19:55:42 -04:00
Jon Evans
464fa820b1
Support bus entries with highlighting
2019-03-31 19:55:30 -04:00
Jon Evans
9cd2e65787
Don't generate connections between two bus-wire entries
2019-03-31 19:55:20 -04:00
Jon Evans
5cf82f1a9e
Begin refactoring netlist creation
2019-03-31 19:55:12 -04:00
Jon Evans
c8c0b89eef
Fix issue where some power symbols would show up in netlist
2019-03-31 19:55:00 -04: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
jean-pierre charras
b00413b7d6
Symbol editor, DIALOG_LIB_EDIT_PIN_TABLE: fix crash when trying to delete a pin when the table is empty.
...
Fixes: lp:1822406
https://bugs.launchpad.net/kicad/+bug/1822406
2019-03-30 09:29:38 +01:00
Wayne Stambaugh
37edf0e9a6
Remove superfluous build library dependencies.
...
It looks like someone's paste keys got stuck and added repeated sets of
link libraries in multiple places.
2019-03-29 09:01:56 -04:00
Wayne Stambaugh
2447933b54
Eeschema: do not merge graphical lines with different attributes.
...
Fixes lp:1821728
https://bugs.launchpad.net/kicad/+bug/1821728
2019-03-28 13:46:05 -04:00
John Beard
edd94ce2d6
Eeschema: internal tidying of field editor ApplyData
...
Make a few things const (specficially the reference into
m_fieldStore - we should commit to not modifying that in this
function.
Also avoid a couple of needless string copies.
Also explicitly dereference the into a (non-const) reference at the outset.
For the whole if this function, comp is the same object and may not
be null (as it is used unchecked).
2019-03-27 10:22:21 +00:00
Baranovskiy Konstantin
11f03c8551
Eeschema: place new field near parent component
...
For now fields created in Fields Editor are placed at
position (0, 0).
Every new field must be placed at the origin of
the parent component.
2019-03-27 10:22:21 +00:00
jean-pierre charras
9e5bc5d2d3
Eeschema: fix incorrect handling of Escape key.
...
Key events do not have to be skipped after they are handled.
2019-03-27 10:09:16 +01:00
jean-pierre charras
175a2bc0b4
Force time stamp to 32 bits unsigned values, and make it tolerant to files using 64 bits values.
...
define timestamp_t as uint32_t.
Fixes: lp:1821476
https://bugs.launchpad.net/kicad/+bug/1821476
2019-03-26 14:28:14 +01:00
Jon Evans
ab74445df4
Fix loading of components with convert parameter set to zero
2019-03-23 18:51:13 -04:00
Wayne Stambaugh
a7c8df5666
Symbol editor: improve tooltip in symbol properties dialog.
...
Make the "Define as power symbol" checkbox tooltip more descriptive so
the user has a better understanding of enabling this option.
Fixes lp:1804932
https://bugs.launchpad.net/kicad/+bug/1804932
2019-03-20 15:54:30 -04:00
Seth Hillbrand
078320e2fb
Unify and correct Autosave functions
...
Autosave was not working correctly, partly due to different
implementations in eeschema and pcbnew and partly due to a mistaken
refactor at some point during v5 development. This unifies the expected
autosave prefix to _autosave- for both pcbnew and eeschema. It also
unifies the expected suffix for the backup files to -bak.
Fixes: lp:1820433
* https://bugs.launchpad.net/kicad/+bug/1820433
2019-03-18 10:25:26 -07:00
Wayne Stambaugh
07c61be7f0
Symbol editor: fix superfluous dialog display.
...
Call base object TransferDataFromWindow() to prevent Validate() from
being called twice. Validation is handled completely under the hood
so there is no need to call Validate() directly.
Fixes lp:1820301
https://bugs.launchpad.net/kicad/+bug/1820301
2019-03-18 11:44:44 -04:00
Seth Hillbrand
0943c176a3
libedit: Don't move the field below the last item
...
There needs to be at least one item below the one we want to move down
in order to allow the action.
Fixes: lp:1820532
* https://bugs.launchpad.net/kicad/+bug/1820532
2019-03-17 20:20:17 -07:00
jean-pierre charras
d6f565e452
Eeschema: do not draw dangling symbol (circle) for PIN_NC pin types.
...
These pins are never connected, so a dangling symbol makes no sense.
Fix also a fex minor coding style issues.
2019-03-17 20:50:18 +01:00
Seth Hillbrand
f96d16eba3
Restore LINK_MAP linker options
...
Removing invalid TO_LINKER missed a few segments where it was used.
This fixes the ability to enable link maps
2019-03-16 20:37:14 -07:00
Wayne Stambaugh
cf7639b4da
Fix coding policy violations of previous patch.
2019-03-15 09:09:42 -04:00
Brian Henning
79bacd15e1
Made LIB_PART parsing and formatting (from/to string) static and public
2019-03-15 08:32:28 -04:00
jean-pierre charras
bec2d7861e
Eeschema: shows the opened sheet info in title bar.
...
Fixes: lp:1819564
https://bugs.launchpad.net/kicad/+bug/1819564
2019-03-15 13:09:04 +01:00
Brian Henning
2bd2cf6a6b
Added an include to tell the compiler where to find wxIsdigit
2019-03-14 09:28:24 -07:00
Wayne Stambaugh
aef0221d3b
Replace isdigit() with wxIsdigit() when testing wxString characters.
...
This is a continuation of commit 8a03025a
. All known instances of
using isdigit() to test a character in a wxString have been replaced
by wxIsdigit().
2019-03-14 09:47:14 -04:00
Seth Hillbrand
c61ec8ee3b
GAL: Handle negative line widths
...
When displaying negative line width elements, the outline of the item
should be hidden rather than displayed.
Fixes: lp:1819247
* https://bugs.launchpad.net/kicad/+bug/1819247
2019-03-11 12:08:16 -07:00
Seth Hillbrand
94fa734c61
eeschema: Fix plot line width for negative lines
...
Negative width lines are used to hide the outline of shapes in eeschema.
Plot should not show these lines.
2019-03-11 12:08:16 -07:00
Seth Hillbrand
d25d62295a
Ensure LIB_ALIAS elements are always drawn
...
We add LIB_ALIAS to the VIEW rtree when choosing a new symbol or
browsing. The actual display element may change based on the unit or
demorgan representation but there will only ever be a single one drawn.
This will set the view bbox to maximum to ensure it is always checked
for drawing.
Related to lp:1796960
https://bugs.launchpad.net/kicad/+bug/1796960
2019-03-10 20:16:03 -07:00
Seth Hillbrand
9bfce26ce7
Move env var substitution into GetAssociatedDocument
...
We always want the documents to have their variables replaced when
opening the associated file.
Fixes: lp:1819309
* https://bugs.launchpad.net/kicad/+bug/1819309
2019-03-10 08:39:36 -07:00
jean-pierre charras
26acd39129
Fix a few Coverity warnings.
2019-03-07 20:01:47 +01:00
Jeff Young
69f003ba4a
Remove previous cell selection fixes in favour of slow-click hack.
...
wxWidgets has several bugs that result in cell editors being closed
right after they're opened. There are two wxWidgets hacks to
partially address this: the SetInSetFocus() hack, and a slow-click
hack. We used to try and work-around these bugs ourselves for
single-click access, but this changelist moves those over to
wxWidget's slow-click hack.
Fixes: lp:1817965
* https://bugs.launchpad.net/kicad/+bug/1817965
2019-03-04 11:09:33 +00:00
jean-pierre charras
a128ffdea6
DIALOG_LIB_NEW_COMPONENT_BASE: fix minor issues.
...
Fixes: lp:1818471
https://bugs.launchpad.net/kicad/+bug/1818471
2019-03-04 08:27:00 +01:00
Seth Hillbrand
38be0fccb7
Symlib table: Need button handler for files
...
The folder button handler works will for footprint libraries but we
needed a specific class for the schematic libraries as well.
Fixes: lp:1818346
* https://bugs.launchpad.net/kicad/+bug/1818346
2019-03-02 20:05:28 -08:00
Seth Hillbrand
db31b7902a
libedit: Resolve path substitutions
...
Fixes: lp:1818220
* https://bugs.launchpad.net/kicad/+bug/1818220
2019-03-02 08:00:54 -08:00
Seth Hillbrand
84a1772e66
libedit: Control resize requests
...
Another GTK3 dialog with excessive resize requests. Control the number
for re-draws based on grid size.
Fixes: lp:1818325
* https://bugs.launchpad.net/kicad/+bug/1818325
2019-03-02 05:49:18 -08:00
jean-pierre charras
c2a7e5536e
Eeschema: fix regression: set the max number of units per package to 64.
...
64 is the max number of units per package in 5.0.x
Fixes: lp:1818061
https://bugs.launchpad.net/kicad/+bug/1818061
2019-03-01 16:47:31 +01:00
Frank Severinsen
71a62bb782
Change pin on grid test in symbol editor.
...
The pin on grid test always used a fixed grid spacing of 25 mils. The
change uses the current grid setting for the on grid test. Grid sizes
below 25 mils are clamped to 25 mils to prevent issues when connecting
wires to pins in the schematic editor.
Fixes lp:1817896
https://bugs.launchpad.net/kicad/+bug/1817896
2019-02-28 09:46:57 -05:00
Seth Hillbrand
13249b723b
Handle excessive resize requests
...
For unknown reasons, GTK3 may send resize events when editing grid
fields. This can cause the grid editor to exit, losing the focus and
overwritting the characters at the next input.
We avoid this by filtering the size events when the size doesn't change.
Fixes: lp:1817810
* https://bugs.launchpad.net/kicad/+bug/1817810
2019-02-27 11:32:30 -08:00
Jeff Young
22229fbba4
Re-parent items being copied from the clipboard.
...
Their original parent might have been freed by now if they came
from a different symbol.
Fixes: lp:1815525
* https://bugs.launchpad.net/kicad/+bug/1815525
2019-02-27 19:09:45 +00:00
Jeff Young
f494a24404
Resync lib_tree after editing aliases.
...
This also fixes an unrelated bug where the current part highlighting
would get lost after a rename.
Fixes: lp:1817639
* https://bugs.launchpad.net/kicad/+bug/1817639
2019-02-27 18:13:49 +00:00
Wayne Stambaugh
5315d1be22
Eeschema: fix an option toolbar refresh bug.
...
For some reason, changing languages was causing the options (left) toolbar
to get redrawn with some of the main toolbar entries. Changing the window
size causes the toolbar to be redrawn correctly. The normal call to
function wxWindow::Refresh() does not.
Fixes lp:1816492
https://bugs.launchpad.net/kicad/+bug/1816492
2019-02-25 13:26:14 -05:00
jean-pierre charras
8ad15b1d66
Symbol editor: fix issues related to axis not shown.
...
In Symbol editor, axis are always shown. However after switching the backend, axis were no longer drawn.
In Cairo engine, fix a bug preventing axis to be shown.
2019-02-24 12:56:17 +01:00
Seth Hillbrand
643d9901c7
eeschema: Refresh canvas after clearing
...
Forces a canvas update to change the highlighting after clearing the
selected item.
Fixes: lp:1809731
* https://bugs.launchpad.net/kicad/+bug/1809731
2019-02-23 11:07:00 -08:00
Seth Hillbrand
f002382b4a
eeschema: Set modifying transparency on edits
...
While modifying elements in eeschema/libedit, they are overdrawn on the
rest of the schematic. This prevents alignment with existing elements
as the underlying elements are not visible. We set a slight
transparency on elements while being modified to allow the user to view
existing elements at the same time.
Fixes: lp:1817233
* https://bugs.launchpad.net/kicad/+bug/1817233
2019-02-23 08:19:50 -08:00
John Beard
82734e7116
Adjust tab ordering in some dialogs
...
Introduce a shortcut method to set tab ordering and use it in
the dialogs that override the tab traversal orders:
* Eeschema sheet properties
* Pcbnew Move exact
* Pcbnew Move relative
Also set some initial focus fields in the same dialogs.
Tidy a few includes.
Fixes: lp:1816009
* https://bugs.launchpad.net/kicad/+bug/1816009
2019-02-23 14:49:38 +00:00
John Beard
29c8f92c27
Eeschema: move EDIT_COMPONENT_IN_SCHEMATIC to own header
...
Move the class DIALOG_EDIT_COMPONENT_IN_SCHEMATIC to its own
header, and move the SCH_EDIT_FRAME::EditComponent out of the
dialog implementation file. Thus, users of the dialog are
coupled only by the dialog header, as usual.
Also tidy some includes and comments.
2019-02-21 10:04:29 +00:00
John Beard
75406e2742
Libedit: Fix cancel button in symbol edit dialog
...
In DIALOG_EDIT_COMPONENT_IN_SCHEMATIC, the Cancel button is
connected to a dedicated handler to deal with the footprint
browser widget. DIALOG_EDIT_COMPONENT_IN_LIBRARY should have
the same logic.
Fixes: lp:1816636
* https://bugs.launchpad.net/kicad/+bug/1816636
2019-02-20 23:00:22 +00:00
Seth Hillbrand
f40dfa2765
eeschema: Refresh canvas when the options change
...
Windows doesn't appear to properly re-paint after an options change.
This forces the repaint when setting options
Fixes: lp:1816506
* https://bugs.launchpad.net/kicad/+bug/1816506
2019-02-19 17:04:51 -08:00
Seth Hillbrand
b4c0af021e
eeschema: Handle Windows click ordering
...
Click to add/edit footprint filters under MSW requires handling the
listbox double click first before the item is handled.
Fixes: lp:1816182
* https://bugs.launchpad.net/kicad/+bug/1816182
2019-02-19 12:51:40 -08:00
Seth Hillbrand
d1c9dd67ac
eeschema: Clean up last RefreshRect
...
Unimplemented call in GAL canvas.
2019-02-19 10:52:38 -08:00
Tomasz Włostowski
9a8afdf6fd
eeschema: SCH_PAINTER should draw LIB_BEZIERs too!
2019-02-19 10:42:23 +01:00
Seth Hillbrand
ef60e523a1
libedit: Fix missing canvas selection
...
Analogous to fp editor, libedit needs the ability to switch between
fallback and accelerated while running.
2019-02-18 18:26:03 -08:00
Jeff Young
23aa838a03
Mark block for AppendUndo when a command is executed.
...
This (aside from getting both parts into a single undo stack item)
will ensure that we clean up both parts on an abort.
Fixes: lp:1816284
* https://bugs.launchpad.net/kicad/+bug/1816284
2019-02-17 10:38:06 +00:00
Jeff Young
d751fecd8a
Tooltip and error message improvements.
2019-02-17 10:20:29 +00:00
Tomasz Włostowski
bbee30671a
gal: pixel alignment hacks, works for Retina display too now.
...
gal: pixel alignment for Cairo.
gal: pixel alignment for OpenGL
Cleanup of pixel alignment patches
gal/opengl: more pixel alignment patches:
- works on Retina displays now
- pixel alignment for circles
- correct 1-pixel strokes
- fixed unfinished 1-pixel line ends
GAL: Restore antialiasing options in Cairo
GAL: Fix arc drawing
Removes DrawArcSegment, which drew arcs whose edge was optionally
stroked (a feature that we did not use). Fixes Cairo arc drawing issue
where arcs were not visible in pcbnew.
gal: further cleanup
gal: removed unused shader parameter
2019-02-16 20:03:13 +01:00
Seth Hillbrand
813578eba6
Fix a few coverity errors
2019-02-15 20:15:04 -08:00
Seth Hillbrand
bf814b25da
eeschema: Update pin cache after conversion
...
Pin caches need to be updated when the unit is converted as the pin
location may have changed in conversion.
Fixes: lp:1816207
* https://bugs.launchpad.net/kicad/+bug/1816207
2019-02-15 18:30:45 -08:00
Seth Hillbrand
6de8997624
libedit: Connect click actions to add/edit
...
Connects standard add/edit actions to mouse events in the footprint
filter listbox
Fixes: lp:1816182
* https://bugs.launchpad.net/kicad/+bug/1816182
2019-02-15 16:52:28 -08:00
Seth Hillbrand
c37aac56e6
libedit: Set initial pin properties when editing
...
This allows the invisible pins to be drawn as grey
Fixes: lp:1816178
* https://bugs.launchpad.net/kicad/+bug/1816178
2019-02-15 16:00:39 -08:00
jean-pierre charras
24185f45f2
Symbol editor: fix bug: Italic style ignored when drawing fields.
...
Fixes: lp:1815997
https://bugs.launchpad.net/kicad/+bug/1815997
2019-02-15 15:56:41 +01:00
jean-pierre charras
e6a200b09e
Pcbnew: avoid integer overflow when displaying local coordinates.
...
Minor cleanup in code.
2019-02-14 10:57:22 +01:00
Seth Hillbrand
a246d905fb
libedit: Add appropriate view menu subitems
...
This synchronizes the view menu options in libedit with the options in
eeschema.
Fixes: lp:1815789
* https://bugs.launchpad.net/kicad/+bug/1815789
2019-02-13 10:27:23 -08:00
Seth Hillbrand
3524bed75a
libtree: Remember pane width
...
Stores the library pane width in settings to keep user preferences
2019-02-12 10:06:36 -08:00
Seth Hillbrand
ea84020b1f
eeschema: Recache bitmaps when changing
...
Clearing the cache removes all items from screen until the cache is
refreshed. Instead, we wanted to re-cache the items to take into
account the bitmap changes.
Fixes: lp:1815443
* https://bugs.launchpad.net/kicad/+bug/1815443
2019-02-12 08:16:23 -08:00
jean-pierre charras
869bdc2b3c
Eeschema: regression fix: re-enable hold down control+shift to disable grid snapping when moving the mouse.
...
Fixes: lp:1815487
https://bugs.launchpad.net/kicad/+bug/1815487
2019-02-12 13:12:06 +01:00
Seth Hillbrand
6a4d700dc8
eeschema: Show ERC buttons in all pages
...
This places the Delete markers/Run/Close buttons at the bottom of the
form rather that inside the panel. Allows the user to access the
functions even when on a different panel.
Fixes: lp:1815102
* https://bugs.launchpad.net/kicad/+bug/1815102
2019-02-09 19:17:53 -08:00
Seth Hillbrand
191679676d
eeschema: Export coupling constants to netlist
...
Patch suggested by Holger Vogt. Exports text lines following the SPICE
K### <inductor1> <inductor2> format.
Fixes: lp:1815281
* https://bugs.launchpad.net/kicad/+bug/1815281
2019-02-09 18:58:33 -08:00
John Beard
d06f0de1eb
Libedit: transfer current screen settings on part load
...
When loading a part in libedit, also transfer certain screen
settings to the incoming SCH_SCREEN, from the current
SCH_SCREEN.
Currently, the grid settings are transferred, but this could
also do other settings if needed.
Also remove some duplicate commentary and mention why the
grid is set in a SCH_SCREEN even though the BASE_SCREEN ctor
sets the same default.
Fixes: lp:1815108
* https://bugs.launchpad.net/kicad/+bug/1815108
2019-02-08 22:56:05 +00:00
Seth Hillbrand
5da4e18664
bitmaps: Handle mask colors
...
Some transparent bitmaps use masking colors to show the binary
opaque/transparent.
Fixes: lp:1814893
* https://bugs.launchpad.net/kicad/+bug/1814893
2019-02-07 21:27:43 -08:00
Wayne Stambaugh
7789ec4bf1
Eeschema: fix highlight hierarchical pin name in properties dialog.
...
Fixes lp:1785840
https://bugs.launchpad.net/kicad/+bug/1785840
2019-02-07 13:03:38 -05:00
Wayne Stambaugh
6bb8fde48a
Eeschema: fix broken modified flag handling.
2019-02-06 13:20:34 -05:00
Wayne Stambaugh
44cb979e91
Decouple SCH_EDIT_FRAME from symbol rescue and remap dialogs.
...
Do not keep pointer to SCH_EDIT_FRAME in the rescuer object to prevent
it from creating dialogs with itself as the parent when call from the
rescue dialog which is itself a grandchild of the frame window.
2019-02-05 12:43:46 -05:00
John Beard
0c6ec7dbb3
LIB_TABLE_BASE: Const and unsigned fixes
...
* Make LIB_TABLE_BASE::GetCount() return unsigned. This is more
consistent with the behaviour of STL containers (especially the
boost::ptr_vector this is really accessing). Sadly
wxGridTableBase() forces an int, so a cast is still required
at the WX interface.
* Make LIB_TABLE_BASE::At() return a reference. First, this is more
consistent with normal STL indexing operator[]'s, and secondly, it
allows an idiomatic const index method (so you can access const
LIB_TABLE_ROWs from a const LIB_TABLE_BASE).
The motivation is to allow use of this class and LIB_TABLE_ROW
in a test program, where the LIB_TABLE_BASE is const.
2019-02-05 08:49:52 -08:00
John Beard
e6a6266f3d
Build: libpolygon provides its own includes
...
Libpolygon can provide its own includes via target_include_dirs PUBLIC.
This means any linking targets do not need to specifiy them manually.
As common requires polygon, the polygon dep is also now no longer
required downstream of libcommon, as it's transisitvely implied
by libcommon's target_link_libraries.
This resolves a circular dependency previously detected and also
simplifies CMakeLists.
2019-02-04 19:29:31 -08:00
John Beard
bb2ae8e13b
Bitmaps: move bitmap defs to bitmaps library
...
The bitmap definitions (BITMAP_DEF and so on) do not
have any dependencies on other libs, including WX. This
means the bitmaps library can be isolated from the other
dependencies.
Common now depends on bitmaps, and libraries that depend
on common can pick it up from the common target_link_libraries,
as it is PUBLIC. This means a lot of targets no longer
need manual bitmap linkage.
This avoids a circular dependency that was previously reported
by static analysis.
Avoiding pulling in WX and other headers into the include
tree of each bitmap .cpp is a huge speed up (around 10x) in
compilation, and the generated static library is also 10x
smaller (20MB vs 200MB)
Add common as a link library to pnsrouter,connectivity.
THese library do still use common code (including bitmaps,
via base_screen.h) and this allows them to pick up the libcommon
includes correctly.
2019-02-04 19:29:31 -08:00
Jeff Young
8ca76177c0
Prevent hiding of reference column.
...
Using the quantity column for the collapse/expand controls feels too odd
when you expand and everything under the parent is a '1'.
Fixes: lp:1780847
* https://bugs.launchpad.net/kicad/+bug/1780847
2019-02-03 23:38:02 +00:00
jean-pierre charras
5edf3503ca
Symbol Editor: Switching from a multi unit symbol to a single unit symbol do not reset the unit selection.
...
Thus creating issue if the unit selection is not the first unit.
Fixes: lp:1814441
https://bugs.launchpad.net/kicad/+bug/1814441
2019-02-03 15:29:41 +01:00
Seth Hillbrand
c08736e245
Assign stack pointer to lib table
...
When creating new lib table rows, the pointer becomes managed by the new
table through the boost::ptr_vector. The row is non-copyable, however,
so we lose the reference as soon as it goes out of scope. Creating a
clone provides a new pointer that is moved into the table on creation.
Fixes: lp:1792456
* https://bugs.launchpad.net/kicad/+bug/1792456
2019-02-03 05:20:50 +01:00
Seth Hillbrand
5c3f6f2abf
eeschema: Fix grid assignment error
...
Assignment of columns was offset based on the quantity column. This
cleans the implementation as well as setting the correct width
Fixes: lp:1814380
* https://bugs.launchpad.net/kicad/+bug/1814380
2019-02-02 18:42:51 +01:00
Jeff Young
a375edf9ac
Perform cancel action by hand.
...
Fixes: lp:1814138
* https://bugs.launchpad.net/kicad/+bug/1814138
2019-01-31 19:07:07 +00:00
Tomasz Włostowski
47e28cb5be
eeschema: don't clear freshly selected block in HandleBlockEnd() at the first mouse event
...
Fixes: lp:1813971
* https://bugs.launchpad.net/kicad/+bug/1813971
2019-01-31 02:49:58 +01:00
Jeff Young
ba7b970817
Add pre-select architecture to grid helper icon-text-buttons.
...
Fixes: lp:1813973
* https://bugs.launchpad.net/kicad/+bug/1813973
2019-01-31 01:09:03 +00:00
Seth Hillbrand
88d9f946a2
eeschema: Don't break Eagle junctions on import
...
Eagle can label nets independently of the connection point position. In
an "interestingly" designed circuit, this can lead to a junction of a
pin, wire endpoint and unrelated wire. While this is bad practice,
KiCad shouldn't force an incorrect net connection during the import. In
this case, we skip the addition of junctions to ensure that we don't
create a schematic error.
Fixes: lp:1788019
* https://bugs.launchpad.net/kicad/+bug/1788019
2019-01-30 17:02:24 -08:00
Seth Hillbrand
b14bc1bead
svg: Use grouping
...
Uses existing grouping in SVG output. Sets schematic components as a
grouped element in SVG as well as pcbnew elements per layer.
Fixes: lp:1011754
* https://bugs.launchpad.net/kicad/+bug/1011754
2019-01-30 16:58:33 -08:00
John Beard
88f9f6f072
Break out ref-des-centric functions to own header
...
This breaks the following functions out to a general-purposed refdes utils
header:
* MODULE::GetReferencePrefix()
* kicad_string.h RefDesStringCompare()
This acheives:
* Slimming of MODULE interface
* Placement of refdes code in common rather than pcbnew
** Testing of this code in qa_common
* Tighter and smaller includes for code that only needed refdes functions
Note: there are failing tests commited (as expected failures). These
are the cause of lp:1813669 and will be fixed as a follow-up commit.
2019-01-30 15:41:36 -08:00
Jeff Young
f425f49c19
Fetch active sym before launching browser so we can start with it.
...
Fixes: lp:1813882
* https://bugs.launchpad.net/kicad/+bug/1813882
2019-01-30 21:50:35 +00:00
Jeff Young
ca0164aa07
Unify library browser terminology.
...
Fixes: lp:1813882
* https://bugs.launchpad.net/kicad/+bug/1813882
2019-01-30 19:52:15 +00:00
Jeff Young
626dc7d9cf
Load currently selected alias when browsing.
...
Fixes: lp:1813882
* https://bugs.launchpad.net/kicad/+bug/1813882
2019-01-30 19:43:52 +00:00
Jeff Young
19c9ae7ecb
Use updated value when checking for empty.
...
Fixes: lp:1813640
* https://bugs.launchpad.net/kicad/+bug/1813640
2019-01-30 16:29:21 +00:00
Seth Hillbrand
872f0eb44c
eeschema: Set grid editor to use qty as the drop-down
...
Symbol fields uses a custom expander control. This should be tied to a
column that cannot be hidden in order to ensure the ability to view sub
elements remains intact, like the standard control.
Fixes: lp:1780847
* https://bugs.launchpad.net/kicad/+bug/1780847
2019-01-29 17:10:58 -08:00
John Beard
016a544606
Eeschema: fix grammar for text for ERCE_PIN_NOT_DRIVEN
...
Reported by Kevin Cozens on the mailing list.
2019-01-29 18:09:11 -05:00
Seth Hillbrand
4901481e12
eeschema: Rotate bus wire entry components
...
These components were rotatable as a block but not individually.
Fixes: lp:1809448
* https://bugs.launchpad.net/kicad/+bug/1809448
2019-01-28 09:55:56 -08:00
Seth Hillbrand
e2b3a1118d
Eeschema: Filled labels
...
Fill label bg for clearer schematic view
2019-01-28 08:58:10 -08:00
Tomasz Włostowski
6afb082a08
eeschema: fix disappearing graphics when block move is aborted after rotation/flipping
...
Fixes: lp:1809444
* https://bugs.launchpad.net/kicad/+bug/1809444
2019-01-28 14:46:21 +01:00
Tomasz Włostowski
ef2af9145e
eeschema: implement left click emulation with Enter/Return key in library editor
...
Fixes: lp:1788075
* https://bugs.launchpad.net/kicad/+bug/1788075
2019-01-28 14:17:59 +01:00
Wayne Stambaugh
a55d9819bc
Do not use project path when searching for default library tables.
...
When no default library tables are found, set the default wxFilePickerCtrl
to the users configuration path instead of the current project path to
prevent any project library tables from being used as the default.
Fixes lp:1809769
https://bugs.launchpad.net/kicad/+bug/1809769
2019-01-26 16:19:02 -05:00
jean-pierre charras
b8cfabd22e
Fix some issues in I10n strings
...
Fix typo and missing I10n identifier for 2 strings
2019-01-26 09:25:12 +01:00
Seth Hillbrand
8d777dd5c3
eeschema: Take stroke thickness into account
...
Spacing text for plotters uses the thickness of text for two separate
classes. This sets the thickness in the EDA_TEXT class as well to allow
the multiple line positions to be correctly set
Fixes: lp:1799605
* https://bugs.launchpad.net/kicad/+bug/1799605
2019-01-25 14:22:19 -08:00
jean-pierre charras
4cd41e3941
Eeschema: avoid using a incorrect background color the first time a SCH_DRAW_PANEL is displayed
...
When starting Eeschema, or a frame/dialog using a SCH_DRAW_PANEL, the bg color was initialized too late,
thus creating a flicker or an annoying draw artifact (in SYMBOL_PREVIEW_WIDGET for instance) if a Paint event
is fired before the right bg color is initialized.
Initializing the bg color earlier fix this issue.
Fixes: lp:1797203
https://bugs.launchpad.net/kicad/+bug/1797203
2019-01-25 20:32:46 +01:00
jean-pierre charras
70c2380fc2
Minor fixes in code: remove dead code.
2019-01-24 18:23:57 +01:00
jean-pierre charras
56879a964b
Fix cross-probing issue when a net or pin name contains a space.
...
Fixes: lp:1812902
https://bugs.launchpad.net/kicad/+bug/1812902
2019-01-23 11:30:10 +01:00
Wayne Stambaugh
2dcba4723d
Lay groundwork for loading the initial global footprint library table.
...
Factor out common dialog code from global symbol library table dialog for
loading initial library table.
Update global symbol library table code to user factored out common dialog
code.
2019-01-20 13:09:49 -05:00
Baranovskiy Konstantin
62bf4614ad
Component fields grid: copy/paste boolean values.
...
NEW: Add ability to copy/paste from/to cells with boolean values
(checkboxes) in grid control of component properties dialog of Eeschema.
2019-01-19 14:54:43 -05:00
Baranovskiy Konstantin
8400ee41c0
Grid tricks: cell selection fixes.
...
CHANGED: First click sets a cursor to the specified cell, second click
activates editor (current realization, where first click activates cell
editor, is very buggy especially with cells selection).
Set cursor on cell of reference on mouse left click in Fields editor of
Eeschema.
2019-01-19 14:54:37 -05:00
Baranovskiy Konstantin
4ea08d477d
Clear comp highlighting before highlight new one.
...
On clicking a reference cell in the field editor of Eeschema a
corresponding component is highlighted in Eeschema. But previously
highlighted components are staying highlighted.
With current patch all highlightings are cleared before highlighting
selected component.
2019-01-19 14:54:29 -05:00
Seth Hillbrand
c3a295df1a
Fix segfaults from not checking index
...
Return value of wxArrayString.Index() always needs to be check for
existence.
2019-01-17 10:23:25 -08:00
jean-pierre charras
7f6801bc27
Eeschema: block rotate and block mirror: fix missing screen refresh.
...
Remove also outdated comments.
2019-01-17 15:25:47 +01:00
Tomasz Włostowski
786ee0ec69
eeschema: fix assertion fail when aborting a paste block operation after the pasted block has been rotated
...
Fixes: lp:1812073
* https://bugs.launchpad.net/kicad/+bug/1812073
2019-01-17 00:46:59 +01:00
joel-bertrand-JKB
2d5752f51d
Fix duplicate directives in Spice netlist inside .control ... .endc
...
Fixes: lp:1812082
https://bugs.launchpad.net/kicad/+bug/1812082
2019-01-16 19:54:03 +01:00
Seth Hillbrand
72c885797e
Eeschema: prevent schematic images with bad scales
...
Prevent obvious scale issues (0.0, nan, etc) from corrupting display of
schematic images. In these cases, we reset the scale value to 1.0 and
allow the user to input the appropriate value when editing the
schematic.
Fixes: lp:1811066
* https://bugs.launchpad.net/kicad/+bug/1811066
2019-01-15 07:42:22 -08:00
jean-pierre charras
e7fa02a9f0
DIALOG_BOM: fix a few issues. Mainly an annoying issue when a plugin file was not found
...
Previously, all the dialog setup was lost.
2019-01-14 13:14:13 +01:00
Seth Hillbrand
a0a4e5e18d
libedit: Small edit component cleanup
...
Initialize local variables and ensure that the SPICE edit button is not
shown in compiles that do not support it.
2019-01-12 06:58:40 -08:00
Seth Hillbrand
634d02bd04
libedit: Check proper field grid type
...
Fixes segfault where pointers are not zeroed
Fixes: lp:1811519
* https://bugs.launchpad.net/kicad/+bug/1811519
2019-01-12 06:51:09 -08:00
Seth Hillbrand
353bda6792
eeschema: Add directly connected items to block
...
Allow components to connect to both components and junctions
Fixes: lp:1798968
* https://bugs.launchpad.net/kicad/+bug/1798968
2019-01-10 17:28:29 -08:00
Jeff Young
81a0ab4d7e
Don't return wxID_OK from a cancel.
...
Also fixes the Save icon not getting enabled/disabled.
Fixes: lp:1810116
* https://bugs.launchpad.net/kicad/+bug/1810116
2019-01-10 17:41:33 +00:00
Jeff Young
15af0cc43d
Don't inherit previously-selected alias properties when deleting.
...
Fixes: lp:1810768
* https://bugs.launchpad.net/kicad/+bug/1810768
2019-01-10 17:41:33 +00:00
Seth Hillbrand
170ff66cbb
libedit: Allow SPICE parameter editing
...
This fixes a regression to allow SPICE parameters to be added to the
symbol in libedit.
Fixes: lp:1793062
* https://bugs.launchpad.net/kicad/+bug/1793062
2019-01-09 21:43:23 -08:00
Seth Hillbrand
da295a355f
qa: Moving eeschema qa to main qa folder
2019-01-09 21:43:23 -08:00
Wayne Stambaugh
906161dcf8
Fix configuration dialog layout issues on GTK.
2019-01-09 17:35:12 -05:00
Seth Hillbrand
fe30460aeb
gal: Save canvas type unconditionally
...
The canvas type might change without the frame being notified. If this
happens, the user is presented with repeated notifications of OpenGL
issues. Howver, switching canvas is not an error and should be
presented to the user as an info message to clarify that the system is
still working but it has changed how it renders the screen.
Fixes: lp:1795240
* https://bugs.launchpad.net/kicad/+bug/1795240
2019-01-09 10:36:01 -08:00
John Beard
658cc8fd96
Wildcards: unify handling of all files wildcards
...
Use the AddFileExtListToFilter() to also generate the
wildcard for "all files". This is because:
* Users can use AddFileExtListToFilter for the all files WC
with the same interface as for any other extensions.
* Users do not need to worry about wxGetTranslation, as the
_() is applied in the same way as the other *Wildcard() helpers,
and it is a function just like the others, so it is consistent
* There is a testable interface to document the expected result.
The test is added.
2019-01-09 08:57:42 -05:00
jean-pierre charras
1ca3b2c768
Eeschema: DIALOG_FIELDS_EDITOR_GLOBAL: fix missing clearing old highlight when highlighting a new symbol or exiting the dialog
2019-01-09 14:38:44 +01:00
Seth Hillbrand
90ad240660
units: Move common units and add tests
...
Centralizing duplicate code from Eeschema and pcbnew and adding unit
tests
2019-01-08 09:29:32 -08:00
Seth Hillbrand
31ab4e6c9a
eeschema: Simplify netlist dialog
...
The default filename textbox confusingly could not be edited and the
checkbox for "Use default filename" would also use a default location.
As the netlist export is no longer required in the workflow, we can
simplify the layout to always show the user the file save dialog
allowing them to choose the location and name of the exported netlist
file.
2019-01-08 09:26:36 -08:00
jean-pierre charras
3f9230fa51
Eeschema: Fix incorrect behavior of cursors when moving cursors by arrow keys.
...
Fixes: lp:1810684
https://bugs.launchpad.net/kicad/+bug/1810684
2019-01-07 10:10:37 +01:00
Seth Hillbrand
0a4812be07
eagle: Set default pin type
...
Eagle 7.4 DTD defines pin direction as optional with a default of IO
(bidirectional).
Fixes: lp:1808585
* https://bugs.launchpad.net/kicad/+bug/1808585
2019-01-06 08:54:14 -08:00
Seth Hillbrand
1e5ba6f1b1
Replace DIM() macro
...
The standard DIM() macro was not typesafe as it happily deferred errors
to runtime that can be caught at compile time. Replacing it with a
generic C++11 constexpr allows for typecasting, comparison and compile
time error checking.
2019-01-06 08:43:12 -08:00
Seth Hillbrand
3b54a44540
wildcard strings update
...
Replace a few other cases where we used Windows-only or *nix specific
wildcard strings
2019-01-05 20:26:45 -08:00
Seth Hillbrand
02a1bf1de6
eeschema: Use system-dependent default wildcard
...
wxWidgets provides a system-dependent string for "*" or "*.*" depending
on the system. Unfortunately, wxFormBuilder does not use this and
instead defaults to the Windows-only "*.*". This is an ugly work
around.
Fixes: lp:1810221
* https://bugs.launchpad.net/kicad/+bug/1810221
2019-01-05 20:18:59 -08:00
jean-pierre charras
db7dba96ad
Fix a few Coverity warnings.
...
Mainly not initialized members, and replace not tested dynamic_cast by static_cast.
2019-01-04 09:49:21 +01:00
Seth Hillbrand
37967eb685
eeschema: init pin table local var
...
Explicitly set modified to false when instantiating
2019-01-02 19:41:18 -08:00
Seth Hillbrand
6662891f34
string update: Help->List hotkeys
...
The hotkey name "Help (this window)" does not describe what the hotkey
and associated action does. It displays the current hotkey list, so the
action name should reflect that behavior
2019-01-02 15:44:13 -08:00
jean-pierre charras
6040eee710
fix a minor issue in Eeschema when left clicking on a highlighted symbol.
2018-12-31 14:44:59 +01:00
jean-pierre charras
7ad21fefe5
Cross probing: Trying to fix a crash, certainly due to a call to clear the HIGHLIGHTED flag of a structure that is not a EDA_ITEM.
...
Minor enhancement: use a specific message in cross probing to clear the HIGHLIGHTED flag.
2018-12-31 13:54:26 +01:00
jean-pierre charras
fb35a7c8b4
Eeschema highlight symbols (cross probing) fix a few issues.
...
Fix highlight not cleared by Pcbnew.
Fix highlight not cleared by Cvpcb (missing code).
Add comments. Remove a few now useless printf used for debug
When clicking on a empty area, clear any highligthed symbols
Fixes: lp:1809977
https://bugs.launchpad.net/kicad/+bug/1809977
2018-12-29 12:48:24 +01:00
Jeff Young
ad0d9f8df0
Save user-defined nicknames.
...
While name and path fields would make more sense, this commit
encodes the nickname as an "opts" field so that older versions will
still read the preferences file.
2018-12-28 20:34:06 +00:00
Jeff Young
72a1052bb9
Make sure parents get redrawn to refresh module text items.
...
Fixes: lp:1809912
* https://bugs.launchpad.net/kicad/+bug/1809912
2018-12-27 18:42:04 +00:00
Maciej Suminski
bce4a45ab4
Fixed a crash when trying to highlight a not existing component
2018-12-27 13:45:41 +01:00
Tomasz Włostowski
c777eac000
eeschema: improved highlighting of PCB->SCH cross-probed components/labels/pins
...
Fixes: lp:1796990
* https://bugs.launchpad.net/kicad/+bug/1796990
2018-12-24 15:35:25 +01:00
Jeff Young
10887868dc
More changes to clean up redraw after an undo.
...
Fixes: lp:1803038
* https://bugs.launchpad.net/kicad/+bug/1803038
2018-12-22 22:13:23 +00:00
Jeff Young
4c184f07a6
Clean up undo when cancelling block operation.
...
Fixes: lp:1809444
* https://bugs.launchpad.net/kicad/+bug/1809444
2018-12-21 22:45:57 +00:00
Jeff Young
51e6f56300
Clean up view when aborting move item.
...
Fixes: lp:1809444
* https://bugs.launchpad.net/kicad/+bug/1809444
2018-12-21 20:32:10 +00:00
Jeff Young
6eca924365
Clear hidden flags on undo.
...
Fixes: lp:1803038
* https://bugs.launchpad.net/kicad/+bug/1803038
2018-12-21 16:39:10 +00:00
Maciej Suminski
24f9bfa13b
Fixed memory leaks
...
This is commit a9efbf47
with a fix for SWIG to deal with unique_ptr.
2018-12-20 10:05:58 +01:00
jean-pierre charras
83d851956c
classes MARKER rework: remove duplicate code. Better HitTest code (HitTest takes in account the actual shape)
2018-12-19 19:53:27 +01:00
jean-pierre charras
15843ae01a
class MARKER rework: fix a few minor issues, remove duplicate code and add comments.
2018-12-19 15:13:31 +01:00
jean-pierre charras
638b4384ec
eeschema: fix issue: Moving a hierarchical pin slightly move also other hierarchical pins
...
Fixes: lp:1808687
https://bugs.launchpad.net/kicad/+bug/1808687
2018-12-16 15:31:31 +01:00
Frank Severinsen
e2ed0e6557
Move sheet pins in front of sheetedge & move them in by ½ line width
2018-12-15 20:15:19 +00:00
Seth Hillbrand
e307d9318b
Revert "Fixed memory leaks"
...
This reverts commit a9efbf4716
.
The commit broke compiles with scripting
2018-12-11 10:12:44 -08:00
Jeff Young
2c53ab3d8c
Fix debug assert.
2018-12-11 17:56:41 +00:00
Maciej Suminski
63d4afb3ee
Support autopanning in GALified eeschema
...
Fixes: lp:1807234
* https://bugs.launchpad.net/kicad/+bug/1807234
2018-12-11 17:49:34 +01:00
Maciej Suminski
a9efbf4716
Fixed memory leaks
2018-12-11 16:21:43 +01:00
Maciej Suminski
7e1498a46f
Set the screen pointer to null before deleting the associated items
...
VIEW needs to be cleared before deleting the stored items. Otherwise it
may dereference stale pointers leading to a crash.
2018-12-11 16:21:43 +01:00
Jeff Young
40dac0ecbb
Default sizes for edit frames in case prefs get deleted.
...
Fixes: lp:1807676
* https://bugs.launchpad.net/kicad/+bug/1807676
2018-12-10 12:23:16 +00:00
jean-pierre charras
e50d9df76a
Eeschema: fix incorrect parsing of line color (r v b values).
...
Only the R and V were read, the parsing was stopping before reading the B value.
2018-12-09 17:59:24 +01:00
Seth Hillbrand
fd537c8230
eeschema: Do not clear highlights with NULL screen
...
When closing a project, the screen is released, so we need to avoid
cross-probe calls dereferencing the screen pointer.
Fixes: lp:1807501
* https://bugs.launchpad.net/kicad/+bug/1807501
2018-12-08 07:54:31 -08:00
jean-pierre charras
a40cff18d3
PANEL_EESCHEMA_SETTINGS_BASE: very minor cosmetic enhancement.
2018-12-07 11:30:52 +01:00
jean-pierre charras
f1c1c5db3f
Fix a minor compil warning
2018-12-07 11:22:03 +01:00
Maciej Suminski
766156ed87
Fix for dark mode on macOS Mojave
...
Thanks to Scott Rapson and Justace Clutter for the solution.
Fixes: lp:1797989
* https://bugs.launchpad.net/kicad/+bug/1797989
2018-12-07 09:03:56 +01:00
Jeff Young
3a0dbf48c8
Read Symbol Browser grid settings from Symbol Editor.
2018-12-07 00:26:10 +00:00
Seth Hillbrand
ed506dd05e
eeschema: Prevent excess link updates
...
Refreshing the symbols for each paint is excessive to catch the change
from library loads. Instead we catch them on the KIWAY MAIL update
2018-12-06 13:46:52 -08:00
Wayne Stambaugh
b8de4e73bf
Eeschema: fix schematic symbol parsing bug.
...
Schematic symbol library link names are unquoted strings that can
contain non-ascii characters which breaks the parser. Converting
the line to uft-8 before breaking the string into tokens resolves
the issue.
2018-12-06 12:44:13 -05:00
Wayne Stambaugh
742961119d
Eeschema: fix library symbol pin definition parsing bug.
...
Pin names are unquoted strings that can contain non-ascii characters
which breaks the parser. Converting the line to uft-8 before breaking
the string into tokens resolves the issue.
2018-12-06 11:47:20 -05:00
D4p0up
e94752a6cf
Added help string to select buttons.
...
Also moved highlight text string to help_common_strings.h
Fixes: lp:1497737
* https://bugs.launchpad.net/kicad/+bug/1497737
2018-12-05 20:13:03 -08:00
Wayne Stambaugh
07ebc4df14
Fix schematic append clear annotation bug.
...
Clear the annotation of only the appended schematic and any sheets in it's
hierarchy. Do not clear the annotation of the symbols in the target sheet.
Fixes lp:1805695
https://bugs.launchpad.net/kicad/+bug/1805695
2018-12-05 17:12:11 -05:00
Wayne Stambaugh
a61a51f26e
Eeschema: fix UTF8 character handling bug in legacy parser.
...
Iterating over unquoted strings as ASCII8 fails when ' ' character is
not the LSB of a UTF8 string with wide characters. Change parsing method
for unquoted strings to convert the entire line as UTF8 and then use
wxStringTokenizer to break the line into tokens at the ' ' characters.
Fixes lp:1806206
https://bugs.launchpad.net/kicad/+bug/1806206
2018-12-05 13:54:51 -05:00
jean-pierre charras
58036382c1
eeschema: Fix slow redraw on net highlighting (by redrawing only modified items)
...
Fixes: lp:1806197
https://bugs.launchpad.net/kicad/+bug/1806197
2018-12-04 20:55:59 +01:00
Maciej Suminski
ca5751fc46
Symbol Editor: update the view after relocating the anchor
2018-12-04 09:42:26 +01:00
Jeff Young
61b749f0b2
Update dangling ends when resizing sheet.
...
Fixes: lp:1805127
* https://bugs.launchpad.net/kicad/+bug/1805127
2018-11-30 21:34:18 +00:00
Jeff Young
ff6a3482ec
Remove on-kill-focus-validation.
...
Fixes: lp:1805361
* https://bugs.launchpad.net/kicad/+bug/1805361
2018-11-29 19:00:21 +00:00
Maciej Suminski
6d8ca311f8
Fix a crash after clicking 'delete' button with empty Template Field Names grid
2018-11-29 14:09:07 +01: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
Jeff Young
6bf0e17036
Fix typo which was keeping rename from working.
...
(Renaming the dialog window instead of the libentry doesn't really
do the trick.)
2018-11-25 01:51:45 +00:00
Jeff Young
d2756bedf1
Keep state except when the filter changed.
...
(Used to be "except when filtering".)
Fixes: lp:1804293
* https://bugs.launchpad.net/kicad/+bug/1804293
2018-11-25 01:51:45 +00:00
Jeff Young
239482ec98
Add tooltips to Symbol Properties dialogs.
...
Fixes: lp:1804931
* https://bugs.launchpad.net/kicad/+bug/1804931
2018-11-24 15:06:21 +00:00
Jeff Young
2e1920abad
Add tooltips to library manager dialogs.
...
Fixes: lp:1804930
* https://bugs.launchpad.net/kicad/+bug/1804930
2018-11-24 15:06:21 +00:00
Jeff Young
b2db49f4ac
Add browse buttons to Library Manager dialogs.
...
Fixes: lp:1804924
* https://bugs.launchpad.net/kicad/+bug/1804924
2018-11-24 15:06:21 +00:00
jean-pierre charras
db7deff21b
DIALOG_SPICE_MODEL_BASE: fix minor wxWidgets alerts.
2018-11-23 10:21:57 +01:00
Jeff Young
ed6c68a1e3
Clean up handling of component fields.
...
In particular the datasheet field and how its handled with aliases,
but also cleaning up duplicated functionality around aliases and
libids.
2018-11-22 21:31:45 +00:00
Jeff Young
023a445e9f
Make sure original part record always has the write library nickname.
...
Fixes: lp:1804293
* https://bugs.launchpad.net/kicad/+bug/1804293
2018-11-21 19:51:04 +00:00
Jeff Young
f934ce653f
A bit of safety to prevent dereferencing NULL.
2018-11-21 19:51:04 +00:00
Jeff Young
ae6989f3a1
Don't trim entire wires.
...
Fixes: lp:1804297
* https://bugs.launchpad.net/kicad/+bug/1804297
2018-11-20 21:44:35 +00:00
Jeff Young
d6ac303a8c
Don't dereference NULL when checking current part.
2018-11-20 20:21:29 +00:00
Jeff Young
a958b23a11
Remove assert which fires incorrectly when emptying screen.
2018-11-20 20:21:29 +00:00
Jeff Young
9145d6a0a3
Put library name in confirmation dialog when reverting library.
2018-11-20 20:21:29 +00:00
Maciej Suminski
630baa3724
Code formatting
2018-11-20 17:54:10 +01:00
Maciej Suminski
d405be95b8
Fix a symbol editor crash when clicking without any symbol loaded
2018-11-20 17:52:58 +01:00
jean-pierre charras
ab3ff61faa
Eeschema: adjust the working/drawing area size on the page size.
...
This makes using Scrollbars more easy to use, especially for "small" page sizes like A or B.
Note also the working/drawing area size is bigger than the page size (3 times)
2018-11-20 15:11:22 +01:00
Jeff Young
984d3f04ab
Update dangling ends after importing schematic content.
...
Fixes: lp:1803996
* https://bugs.launchpad.net/kicad/+bug/1803996
2018-11-19 20:47:31 +00:00
Jeff Young
18dc618a13
Set color before drawing dangling symbols.
...
Fixes: lp:1804003
* https://bugs.launchpad.net/kicad/+bug/1804003
2018-11-19 20:29:48 +00:00
Jeff Young
e715835c29
Copy dangling flag when cloning.
...
Fixes: lp:1804005
* https://bugs.launchpad.net/kicad/+bug/1804005
2018-11-19 19:07:40 +00:00
jean-pierre charras
8522baf4a7
bom_plugins.cpp: fix incorrect command line for python scripts on Windows.
...
* On Windows, a python command line must be python <script_path>/script.py
and not python <script_path>\script.py
* Fix also a incorrect warning message when a script is not found.
2018-11-19 17:50:38 +01:00
Maciej Suminski
2ee2d9014a
Populate BOM plugins list if the list is empty
...
Fixes: lp:1464893
* https://bugs.launchpad.net/kicad/+bug/1464893
2018-11-19 16:17:53 +01:00
Maciej Suminski
15772e4b0b
BOM plugins refactor
...
Extended BOM_PLUGIN to a class and moved the plugin construction related code there.
2018-11-19 15:59:08 +01:00
jean-pierre charras
240051fb26
Worksheet display in GAL mode: fix missing filename and (in Eeschema) sheet full name.
2018-11-19 10:21:28 +01:00
jean-pierre charras
c539d6e0be
fix incorrect initialization of VIEW::m_boundary.
...
This parameter defines the working area (full page) size.
The fix is not perfect, because it does not take in account the page size.
However it is similar to the "old" initialization, before Eeschema GAL.
In Eeschema, a reasonable boundary size is used.
2018-11-18 20:04:17 +01:00
Jeff Young
0de9cb345c
Add shortcuts to setting dialogs for track widths, via sizes and grid sizes.
...
Fixes: lp:1803671
* https://bugs.launchpad.net/kicad/+bug/1803671
2018-11-17 00:35:06 +00:00
jean-pierre charras
b35b1bb644
Fix a few minor I18n issues.
...
Especially remove trailing and leading spaces in sentences, always annoying in translations, and never useful in sources.
2018-11-16 18:12:01 +01:00
Maciej Suminski
e3bcd31bff
Added a dialog to confirm discarding unsaved changes in Pin Table dialog.
2018-11-16 16:10:53 +01:00
Maciej Suminski
de1a8abd3e
Fix a crash after accepting changes from Pin Table dialog
...
Pin Table dialog replaces LIB_ITEMs, while one of them may still
be pointed to as the current library item. Certain wxUpdateUIEvent
will try to dereference the pointer, leading to a crash.
2018-11-16 14:13:28 +01:00
Jeff Young
4050991d28
Move ERC marker focusing to GAL architecture.
...
Fixes: lp:1802537
* https://bugs.launchpad.net/kicad/+bug/1802537
2018-11-16 10:38:44 +00:00
jean-pierre charras
acf696ca2d
Eeschema, worksheet view: fix missing initialisation of sheet count and sheet number
...
Fixes: lp:1803637
https://bugs.launchpad.net/kicad/+bug/1803637
2018-11-16 09:36:10 +01:00
jean-pierre charras
1f3d5cee0e
Fix a few minor I18n issues.
2018-11-15 09:34:29 +01:00
Jeff Young
bcc8c64256
Consider edge cuts items to have zero width when filling zones.
...
Fixes: lp:1797787
* https://bugs.launchpad.net/kicad/+bug/1797787
2018-11-14 23:45:32 +00:00
Jeff Young
d65bb73d4e
Finish up remaining block operation inconsistencies.
...
In particular, don't move block back to start when duplicating,
and don't move crosshair back to start when doing a cut, copy, or
paste.
Also fixes undo for libEdit block duplicate.
Fixes: lp:1740138
* https://bugs.launchpad.net/kicad/+bug/1740138
2018-11-14 23:45:32 +00:00
Jeff Young
ac2e400598
Re-instate schematic-scope to dangling ends.
...
Fixes: lp:1803117
* https://bugs.launchpad.net/kicad/+bug/1803117
2018-11-13 21:03:18 +00:00
Jeff Young
a60066115b
Move no-connect symbols closer to the front for rendering.
...
Fixes: lp:1803124
* https://bugs.launchpad.net/kicad/+bug/1803124
2018-11-13 21:03:18 +00:00
Maciej Suminski
298a033b9d
Fixed a crash on moving down the last field in the Symbol Properties dialog
2018-11-13 14:14:08 +01:00
Maciej Suminski
44424dcbb3
Fixed a crash in Symbol Properties dialog
...
Fixes: lp:1802641
* https://bugs.launchpad.net/kicad/+bug/1802641
2018-11-13 14:02:16 +01:00
jean-pierre charras
436f80a0bb
eeschema/dialogs/dialog_lib_edit_pin_base.cpp: fix a minor wxWidgets alert
2018-11-13 13:03:38 +01:00
Jeff Young
4a9d538608
Fix typo when warping cursor (coords are world-coords).
...
Fixes: lp:1802811
* https://bugs.launchpad.net/kicad/+bug/1802811
2018-11-12 22:09:31 +00:00
jean-pierre charras
0a71212929
Fix a few minor issues in SYMBOL_PREVIEW_WIDGET.
...
Fixes: lp:1802808
https://bugs.launchpad.net/kicad/+bug/1802808
2018-11-12 20:40:41 +01:00
jean-pierre charras
0d3637c2ee
Fix a few minor I18n issues.
...
Avoid translation of debug messages.
2018-11-11 10:46:26 +01:00
jean-pierre charras
f7cf40f2f4
Fix a few Coverity warnings.
...
Sometimes a dynamic_cast was used without testing the returned value.
Some are replaced by static_cast, when the dynamic_cast was useless.
2018-11-11 08:28:58 +01:00
Wayne Stambaugh
f1f4473d8b
Footprint editor: add save view to PNG file.
...
Factor out save current canvas view to image file code from symbol editor
code so it can be used anywhere.
Add ability to save to any image format supported by wxBitmapType. See
https://docs.wxwidgets.org/3.0/gdicmn_8h.html#a90a1eb6d85b5044a99b706fd979f27f5 .
Currently only PNG output is implemented.
Please note that there is a minor bug that appears to be due to the
scroll bars which causes unfilled areas on the right and bottom edges
of the image. This always existed in the save symbol editor view
image but it was not as noticeable because by default the background
color is white. It is very noticeable in the footprint editor with
a black background.
The usual smattering of coding policy and comment fixes.
Fixes lp:1802127
https://bugs.launchpad.net/kicad/+bug/1802127
2018-11-09 08:32:36 -05:00
Jeff Young
6860320b1b
Init LibEdit with unit & conversion when opening from schematic.
2018-11-08 21:27:15 +00:00
Jeff Young
3de04e184b
Convert pasted objects to current unit and DeMorgan variant.
...
Fixes: lp:1797183
* https://bugs.launchpad.net/kicad/+bug/1797183
2018-11-08 21:27:15 +00:00
John Beard
075f428aca
Include directories are implied by legacy_gal linkage
...
This avoids having to manually specify include/legacy_gal
in and legacy GAL targets, and harominizes with legacy_wx.
This also means .cpp files in common/legacy_gal do not
need to specify the legacy_gal subdirectory, so they
will continue to work as needed when legacy_wx is removed.
2018-11-08 07:52:36 -05:00
Maciej Suminski
02f81d7419
Handle 'show page limits' in eeschema
2018-11-08 09:57:16 +01:00
Jeff Young
cbd13c7127
Show dangling pins when moving items; don't when dragging.
...
Fixes: lp:1801962
* https://bugs.launchpad.net/kicad/+bug/1801962
Fixes: lp:1801959
* https://bugs.launchpad.net/kicad/+bug/1801959
2018-11-07 14:24:16 +00:00
Maciej Suminski
d6bc402f14
Fix instantly disappearing pop-up menu in eeschema
...
Fixes: lp:1798453
* https://bugs.launchpad.net/kicad/+bug/1798453
2018-11-06 17:21:13 +01:00
Maciej Suminski
8091573bf7
Fix disappearing schematic components
...
SCH_COMPONENTs should be added to VIEW only when symbol links are
resolved. Otherwise a dummy component bounding box will be used when
inserting a component to VIEW R-tree.
Fixes: lp:1801800
* https://bugs.launchpad.net/kicad/+bug/1801800
2018-11-06 11:25:47 +01:00
Maciej Suminski
293bc52299
Fix off-grid block paste
...
Fixes: lp:1801625
* https://bugs.launchpad.net/kicad/+bug/1801625
2018-11-05 11:59:38 +01:00
Jeff Young
fec8ab372e
Don't set the viewport when switching screens.
...
That's the job of ZoomAutomatique().
Fixes: lp:1799436
* https://bugs.launchpad.net/kicad/+bug/1799436
2018-11-04 19:17:53 +00:00
Jeff Young
589e1f6a96
MSW and GTK need a separate dialog for opening/saving directories.
...
Fixes: lp:1801528
* https://bugs.launchpad.net/kicad/+bug/1801528
2018-11-04 12:35:01 +00:00
Jeff Young
68b07d1aff
Add show/hide search tree to modedit, and fix it in libedit.
...
Fixes: lp:1801531
* https://bugs.launchpad.net/kicad/+bug/1801531
2018-11-04 12:35:01 +00:00
Jeff Young
6e810a00e4
Warp mouse from context menu before dragging.
...
Fixes: lp:1798815
* https://bugs.launchpad.net/kicad/+bug/1798815
2018-11-04 12:35:01 +00:00
Jeff Young
69952a7b9f
Improve updating of symbol and footprint trees.
...
In particular, update highlighting when changing footprints.
2018-11-02 19:55:30 +00:00
jean-pierre charras
be0935b339
Eeschema: Update zoom/scale limits, due to recent change in GAL.
...
Fixes: lp:1797995
https://bugs.launchpad.net/kicad/+bug/1797995
2018-11-02 14:36:12 +01:00
jean-pierre charras
d465af65a7
LIB_FIELD: fix incorrect text thickness for small sized texts.
...
Also remove duplicate code.
2018-11-02 11:36:07 +01:00
jean-pierre charras
5e44686711
Eeschema, symbol editor: re-enable PNG export and fix a minor issue in SVG export (was in B&W mode instead of color).
...
Add a comment in plotter.h to avoid other errors when selecting plotting mode B&W or color
Fixes: lp:1801058
https://bugs.launchpad.net/kicad/+bug/1801058
2018-11-02 09:24:55 +01:00
John Beard
bf42247971
Eeschema: fix potential crash when closing Kicad app.
...
The crash happens when a wxPaint event is fired after deleting the schematic frame.
It happened only on one Linux install.
Fixes: lp:1800874
* https://bugs.launchpad.net/kicad/+bug/1800874
2018-11-01 08:27:19 +01:00
Maciej Suminski
6602e17edc
Add copyright header to sch_view.h
2018-10-31 19:17:30 +01:00
Maciej Suminski
a18be5d37c
Adjust GAL world unit for eeschema
2018-10-31 19:17:30 +01:00
Maciej Suminski
e81c3a59a2
Refactored and unified board editor and footprint editor print dialogs
2018-10-31 19:17:30 +01:00
Maciej Suminski
17205b4599
Added VIEW::DataReference() for sharing data with another VIEW instance
2018-10-31 19:17:29 +01:00
John Beard
a1fad9d3fe
Eeschema: allow dragging of text
...
Text doesn't have "special" handling of dragging, like connected items (it's
basically just a move). However, allowing "drag" to work on text makes
handling text consistent when dragging other items.
2018-10-31 16:19:03 +00:00
jean-pierre charras
7985234556
Eeschema: Fix a subtle bug in SYMBOL_PREVIEW_WIDGET.
...
The dialog was using a LIB_ALIAS from library cache to show the symbol to the canvas without making a local copy.
Unfortunately, the library viewer is doing the same thing.
Now the GAL is used in Eeschema, a link to the VIEW used by the GAL canvas is stored in this class.
When The selector symbol dialog is used to choose a symbol to display in the Library viewer,
a race condition between the Library viewer GAL canvas and the dtor dialog that destroyed this link in the same instancied class.
Now, the SYMBOL_PREVIEW_WIDGET used in the dialog works on a local copy of the symbol to display.
2018-10-31 15:52:35 +01:00
Jeff Young
c4cd81a906
Remove side-effect of LIB_FIELD::SetText().
...
Fixes: lp:1800545
* https://bugs.launchpad.net/kicad/+bug/1800545
2018-10-31 12:57:23 +00:00
Jeff Young
6888268f74
Timestamps are long rather than int.
...
Fixes: lp:1800796
* https://bugs.launchpad.net/kicad/+bug/1800796
2018-10-31 10:19:59 +00:00
jean-pierre charras
7b10490256
Library viewer: fix broken behavior of unit selector (could be Windows specific).
...
Remove a useless message in debug mode about LIB_ALIAS bounding box.
2018-10-30 17:51:12 +01:00
jean-pierre charras
49c94fb928
Eeschema, library viewer: fix a Kicad assert.
2018-10-30 15:58:08 +01:00
Jeff Young
4742c52250
Highlight symbol fields when selected.
2018-10-30 13:09:20 +00:00
Jeff Young
364be90dc5
Fix translation issues with copy/paste block.
...
Also fix issues with paste not working at all from the context
menu in LibEdit.
Fixes: lp:1800513
* https://bugs.launchpad.net/kicad/+bug/1800513
2018-10-30 11:33:49 +00: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
Maciej Suminski
b445b0fab2
Link eeschema with ngspice DLL
...
Adds a link-time dependency for libngspice, so that other tools may
detect ngspice as a KiCad dependency.
The library is still loaded with dlopen() as it gives a way to reload it
in case of problems. The DLL name is recognized during CMake
configuration and used to load the library at runtime.
2018-10-30 08:32:38 +01:00
Jeff Young
4fc1f4db3e
LIB_ITEMs won't have parent in LibEdit.
2018-10-28 17:45:11 +00:00
Jeff Young
a8c7bb0c92
Move library text items to LAYER_DEVICE. Only sch text items belong on LAYER_NOTES.
...
Fixes: lp:1800350
* https://bugs.launchpad.net/kicad/+bug/1800350
2018-10-28 17:45:11 +00:00
Jeff Young
a96ebe8fac
Sort reference by their numeric content.
...
Fixes: lp:1464805
* https://bugs.launchpad.net/kicad/+bug/1464805
2018-10-28 17:45:11 +00:00
jean-pierre charras
c49917c5a8
Dialog edit component in lib: Fix a few minor wxWidgets alerts.
2018-10-28 18:42:16 +01:00
Stefan Brüns
d1db2c7621
Use fixed version for libngspice.so.0
...
CanonicalizeName only adds the lib prefix and .so suffix, so loading
libngspice.so fails until the development package is installed.
MAC/Windows code paths lookup soversion 0 of ngspice as well, as this
is the only compatible version.
2018-10-27 10:20:09 +02:00
Jeff Young
4f11dc54fa
Draw selected child items in brightened colors.
...
Fixes: lp:1800114
* https://bugs.launchpad.net/kicad/+bug/1800114
2018-10-26 23:02:05 +01:00
Jeff Young
c4ff17d3ec
Don't go to '-' numbering till the range reaches 3.
2018-10-26 23:02:05 +01:00
jean-pierre charras
d953724365
Eeschema: fix bug: append schematic does not update canvas
...
Fixes: lp:1800144
https://bugs.launchpad.net/kicad/+bug/1800144
2018-10-26 16:42:14 +02:00
jean-pierre charras
b075e76ede
Eeschema: fix a draw issue when aborting a move symbol field or a sheet pin.
...
The initial drawings were not updated, making the moved item invisible on screen.
Fixes: lp:1800142
https://bugs.launchpad.net/kicad/+bug/1800142
2018-10-26 15:27:20 +02:00
Seth Hillbrand
a3bbd32953
Fix minor compile warnings
2018-10-25 17:14:04 -07:00
Wayne Stambaugh
ce34a713b4
Eeschema, make BOM tool add file dialog remember last used path.
...
Fixes lp:1797679
https://bugs.launchpad.net/kicad/+bug/1797679
2018-10-25 10:33:19 -04:00
jean-pierre charras
3bf1dd7671
Eeschema, Hierarchical sheet: fix missing pen width call in draw function.
...
The hierarchical sheet was drawn (outline and texts) with a line thickness
that in fact the line thickness of the previously drawn item.
2018-10-25 15:12:34 +02:00
Jeff Young
1baa904034
Dangling symbol fixes.
...
No dangling symbol for text items with a NO-CONNECT.
DanglingStateChanged doesn't work with dangling flag aggregators
(which return true if any child is dangling).
Then again, we don't actually use any of the aggregators anyway
so I removed them.
Fixes: lp:1799589
* https://bugs.launchpad.net/kicad/+bug/1799589
2018-10-24 23:51:18 +01:00
Jeff Young
1f1bdc87bd
Update GAL with wire dimensions before changing them.
2018-10-24 23:18:53 +01:00
Jeff Young
66a0f60b4c
Refresh preview items when Rotate or Mirror during move.
...
It's not enough to just refresh the canvas because the items are
hidden on the main canvas and copies are placed into the preview
group.
2018-10-24 22:00:50 +01:00
Jeff Young
4524dce9bb
Tie up some loose ends from JP's SHEET_PIN fixes.
...
Fixes: lp:1799606
* https://bugs.launchpad.net/kicad/+bug/1799606
2018-10-24 22:00:50 +01:00
Wayne Stambaugh
b9a9fe6c9e
Eeschema, remove option to import schematic that has not been remapped.
...
When importing an existing schematic into a sheet that was no remapped
to use the symbol library table, the user was given the option to ignore
the warning and proceed with the import. This would end up with all of
the imported symbol links being broke. In hindsight, this was a bad
idea so now the user cannot import schematics that have been remapped.
Fixes lp:1791280
https://bugs.launchpad.net/kicad/+bug/1791280
2018-10-24 15:38:02 -04:00
jean-pierre charras
dc21a60531
Fix incorrect management of SCH_SHEET_PIN items when adding or removing them.
...
Especially new SCH_SHEET_PIN items were added twice, thus creating crashes.
Fixes: lp:1799606
https://bugs.launchpad.net/kicad/+bug/1799606
2018-10-24 16:19:28 +02:00
Jeff Young
7d02c11880
Handle don't-always-display-cursor setting correctly.
...
Fixes: lp:1798448
* https://bugs.launchpad.net/kicad/+bug/1798448
2018-10-24 13:36:48 +01:00
Jeff Young
c694c2e534
No more legacy graphics for eeschema.
2018-10-24 13:36:48 +01:00
Jeff Young
96e65c7f23
Hide existing object when displaying moving preview.
...
Fixes: lp:1799478
* https://bugs.launchpad.net/kicad/+bug/1799478
2018-10-23 20:54:42 +01:00
Jeff Young
0c06bdb1e0
Make sure aliases get their refs and values drawn correctly.
...
Fixes: lp:1799460
* https://bugs.launchpad.net/kicad/+bug/1799460
2018-10-23 20:54:42 +01:00
Jeff Young
9f350820ad
Add field umbilical lines to GAL renderer.
2018-10-23 20:54:42 +01:00
Jeff Young
1606329855
AdvanceDepth() strategy has been replaced with layer depths.
...
This is just a little bit of clean-up after-the-fact.
2018-10-23 20:54:42 +01:00
jean-pierre charras
ce496ff993
libedit: refresh display after deleting graphic item.
2018-10-23 15:11:32 +02:00
Michael Kavanagh
3248c270ee
Update Eeschema BOM dialog html help text
...
Now links to relevant section in stable eeschema docs.
Fixes: lp:1798248
https://bugs.launchpad.net/kicad/+bug/1798248
2018-10-22 13:19:15 -04:00
jean-pierre charras
7bba7a884a
Libedit: refresh display after creating/moving a graphic item
2018-10-22 13:41:38 +02:00
Jeff Young
f17c18bcce
Remove AdvanceDepth() hacks in favour of proper layers.
...
Also removes the bounding-box cache since the last big merge
should have sorted out the Update(GEOMETRY) calls.
Fixes: lp:1797271
* https://bugs.launchpad.net/kicad/+bug/1797271
Fixes: lp:1797268
* https://bugs.launchpad.net/kicad/+bug/1797268
Fixes: lp:1797075
* https://bugs.launchpad.net/kicad/+bug/1797075
2018-10-21 15:55:56 +01:00
jean-pierre charras
8ecdf58bad
Eeschema, load a new bitmap image from file: fix crash when aborting.
...
Remove duplicate code in edit_bitmap.cpp.
2018-10-21 10:59:06 +02:00
jean-pierre charras
dafeb96765
Page layout bitmap size wrong in modern/GAL canvases.
...
The image scale set by pl_editor was not taken in account when drawing the page layout.
Fixes: lp:1798685
https://bugs.launchpad.net/kicad/+bug/1798685
2018-10-20 18:24:22 +02:00
jean-pierre charras
576a0af293
Eeschema: make draw functions working with "old" libraries using a useless large negative line width (like -1000 or -2000 mils).
...
They are now clamped to -1.
This is only a workaround to avoid ugly artifacts
2018-10-20 13:08:33 +02:00
jean-pierre charras
1116acd74b
Libedit: Fix broken handling of "common to all bodu style" property of lib draw items.
...
Fix a minor wxWidgets assert.
2018-10-20 12:38:36 +02:00
Maciej Suminski
9757107b61
Spice netlist exporter: handle multiline directives
...
Fixes: lp:1797937
* https://bugs.launchpad.net/kicad/+bug/1797937
2018-10-19 17:33:01 +02:00
jean-pierre charras
8f9b0f0235
Eeschema, spice netlist exporter: fix an issue that converted spice string commands to lowercase.
...
Therefore, it can breaks some commands, especially filenames.
Partial fix of bug 1797937.
2018-10-19 16:18:30 +02:00
Jeff Young
c06e533689
Add hack to Resolve all symbols when painting.
...
Seems rather expensive, but this is what the Legacy canvas did.
In fairness, it does check the last-mod-date of the libraries
and skips it if they haven't changed.
Fixes: lp:1798446
* https://bugs.launchpad.net/kicad/+bug/1798446
2018-10-18 14:14:54 +01:00
Jeff Young
baa4019448
Draw pin previews with the correct schematic background color.
...
Fixes: lp:1798447
* https://bugs.launchpad.net/kicad/+bug/1798447
2018-10-18 13:27:41 +01:00
Jeff Young
c052b7f8ef
Fix segfault when deleting sheet pins.
2018-10-18 13:27:41 +01:00
Jeff Young
8a54b1b3b7
Add view refresh calls for edit operations.
...
Note that the bug referenced in the "fixes" section is only one
of many addressed by this commit.
Fixes: lp:1798449
* https://bugs.launchpad.net/kicad/+bug/1798449
2018-10-18 12:12:48 +01:00
Tomasz Włostowski
12567c7500
eeschema-gal: don't warp cursor back to mouse when using hotkey to emulate a mouse click
...
Fixes: lp:1797273
* https://bugs.launchpad.net/kicad/+bug/1797273
2018-10-17 23:25:36 +02:00
Jeff Young
c22a247dbc
Fix undo issue primarily with libedit.
...
Fixes: lp:1797900
* https://bugs.launchpad.net/kicad/+bug/1797900
2018-10-17 13:10:36 +01:00
Jeff Young
254e9f4a7e
Implement HardRedraw for eeschema and libedit.
2018-10-17 12:14:09 +01:00
Jeff Young
e9a80a5d7f
Some minor dialog layout fixups.
2018-10-17 11:23:02 +01:00
Jeff Young
924c0fa9ed
Fetch symbol chooser grid settings from the right place.
2018-10-17 11:14:01 +01:00
Jeff Young
c19984e4de
Performance optimization for Symbol Fields Editor.
2018-10-17 02:04:44 +01:00
Jeff Young
08e1379671
Add new sheet pins to view.
2018-10-16 22:54:12 +01:00
Jeff Young
84c14c2971
Fix updating of the schematic symbols after a library save.
2018-10-16 17:07:59 +01:00
Jeff Young
1114b5cfa9
Refresh item when its dangling state changes.
...
Fixes: lp:1797996
* https://bugs.launchpad.net/kicad/+bug/1797996
2018-10-16 17:07:59 +01:00
jean-pierre charras
61f2dd21b1
Eeschema gal: fix some redraw issues for bitmap images and worksheet.
...
After edition, the worksheet was not updated on screen.
Bitmap images were not shown in opengl mode due to the fact all gal layers were cached.
2018-10-16 14:20:09 +02:00
jean-pierre charras
7c960aa5fe
Eeschema: better limit for zoom out level
...
Fixes: lp:1797995
https://bugs.launchpad.net/kicad/+bug/1797995
2018-10-16 09:25:00 +02:00
Jeff Young
5fe523f534
Place object borders in front of background fills.
...
This is required when rendering from the cache as the hardware
doesn't necessarily draw in the same order.
2018-10-15 19:59:47 +01:00
jean-pierre charras
906c08afc6
Cross probing: ensure highlighted net in Eeschema is shown when cross probed from Pcbnew.
2018-10-15 20:16:48 +02:00
Tomasz Włostowski
d66e0d4f7a
eeschema-gal: implemented EnableDepthTest() in GAL, fixed drawing order in eeschema
2018-10-15 00:09:59 +02:00
jean-pierre charras
0777d11188
Eeschema Better fix for highlight visibility issue for cached items due to last change in code in opengl
2018-10-14 14:59:40 +02:00
jean-pierre charras
9a62f508a4
Revert "Eeschema Fix highlight visibility issue for cached items due to last change in code"
...
This reverts commit b389236a72
, not working in opengl.
2018-10-14 14:57:45 +02:00
jean-pierre charras
b389236a72
Eeschema Fix highlight visibility issue for cached items due to last change in code
2018-10-14 12:47:06 +02:00
jean-pierre charras
fff739631c
EEschema: fix wrong pin rendering for pin style PINSHAPE_OUTPUT_LOW
...
Fixes: lp:1797750
https://bugs.launchpad.net/kicad/+bug/1797750
2018-10-14 12:36:02 +02:00
Jeff Young
0bd0558833
Auto-select reference numbers in PcbNew like we do in Eeschema.
2018-10-14 00:06:41 +01:00
Jeff Young
275d5e336f
Fix issue with component children disappearing when canvas origin not in view.
2018-10-13 20:54:50 +01:00
Jeff Young
29e0e6921b
Turn on OpenGL caching. Time to smoke out the bugs.
2018-10-13 15:53:54 +01:00
jean-pierre charras
650478f757
Eeschema, highlight connection: show selected junctions and labels in highlight color
...
Previously, only wires were shown in highlight color.
2018-10-13 16:12:36 +02:00
jean-pierre charras
9df7626e31
Fix issue: Symbol library editor: Moving pins jumps to origin
...
Also: remove outdated lines in code.
Fixes: lp:1797266
https://bugs.launchpad.net/kicad/+bug/1797266
2018-10-13 12:09:49 +02:00
Seth Hillbrand
aa622994e1
eeschema: Ensure is_moved flag is set when moving
...
Prior to placing, cleaning routines need to know which schematic items
are being moved to avoid cleaning them relative to themselves. The
IS_MOVED flag communicates this and is cleared by ClearDrawingState()
Fixes: lp:1797576
* https://bugs.launchpad.net/kicad/+bug/1797576
2018-10-12 17:08:10 -07:00
Tomasz Włostowski
e988cd9c25
Fixed crash in footprint chooser in eeschema triggering in standalone/no-pcbnew mode
...
Fixes: lp:1797644
* https://bugs.launchpad.net/kicad/+bug/1797644
2018-10-12 23:43:08 +02:00
Tomasz Włostowski
30f0e93dbb
Synchronize the GAL view after invoking 'autoplace fields' tool
...
Fixes: lp:1797268
* https://bugs.launchpad.net/kicad/+bug/1797268
2018-10-12 23:27:39 +02:00
Seth Hillbrand
92758ea4ef
eeschema: Fix minor compile warning
2018-10-11 15:31:10 -07:00
Seth Hillbrand
4f672f0d39
Fixing a number of dynamic_casts
...
Dynamic casts should only be used when we explicitly check for the
resulting pointer to be NULL. Where we know the class is castable we
can use static_cast, save on overhead and ensure our resulting pointer
is non-null.
2018-10-11 15:24:12 -07:00
Seth Hillbrand
dff92f915c
eeschema: Formatting grid table
...
Missing breaks could cause grid table to return odd text for bad values.
With the breaks, odd values are flagged for fixing
2018-10-11 14:45:23 -07:00
Seth Hillbrand
bfa7f16b44
Wrap printfs in DBG defines
...
This places the remaining printf statements behind DBG() macros to
suppress their output on release builds. We should remove these prior
to 5.1
2018-10-11 13:32:20 -07:00
jean-pierre charras
4904ece0b5
eeschema gal: keep grid visibility setting when switching between back-ends
2018-10-11 18:45:18 +02:00
Seth Hillbrand
4d8534a7a6
libedit: Prevent segfault when deleting part
...
emptyScreen() sets the current part to NULL. This gracefully handles
the case by allowing a cleared screen when no part is currently
selected.
2018-10-11 09:22:54 -07:00
jean-pierre charras
5c8c1cdb8f
Eeschema doesn't show highlight net until a screen redraw is made.
...
Fixes: lp:1796989
https://bugs.launchpad.net/kicad/+bug/1796989
2018-10-11 14:19:29 +02:00
jean-pierre charras
bea75753dd
Eeschema fix: highlight component from pcbnew doesn't switch sheets
...
Fixes: lp:1797249
https://bugs.launchpad.net/kicad/+bug/1797249
2018-10-11 11:28:07 +02:00
jean-pierre charras
0dfd0c5f52
Minot cosmetic enhancement
2018-10-11 11:26:59 +02:00
Tomasz Włostowski
0090bea24e
eeschema-gal: cache & update bboxes of EDA_ITEMS on each redraw
2018-10-10 17:27:21 +02:00
jean-pierre charras
9b027628ef
Symbol editor: Fix usability issues of mirror and rotation commands
...
Fix also mirrorX and mirrorY command to have the same behavior as the schematic editor
Fixes: lp:1797090
https://bugs.launchpad.net/kicad/+bug/1797090
2018-10-10 16:42:58 +02:00
Jeff Young
06dccf715d
Code cleanup.
2018-10-10 14:28:03 +01:00
Jeff Young
779ef044b7
Fix wxGrid column dragging bugs.
...
Close an open editor when dragging (as wxWidgets won't move it).
Make sure native column headers aren't in use where we need dragging:
their interaction with wxWidgets' dragging is buggy.
Fixes: lp:1796398
* https://bugs.launchpad.net/kicad/+bug/1796398
Fixes: lp:1796396
* https://bugs.launchpad.net/kicad/+bug/1796396
2018-10-09 21:33:43 +01:00
Jeff Young
5f0ffe8490
Copy isDangling flag when changing label type.
...
Fixes: lp:1796775
* https://bugs.launchpad.net/kicad/+bug/1796775
2018-10-09 21:33:43 +01:00
Jeff Young
55c1ca1191
Handle pin sorting properly for values.
...
The pin number sorter doesn't handle units at all, and seems to
stumble on negative numbers.
Fixes: lp:1796869
* https://bugs.launchpad.net/kicad/+bug/1796869
2018-10-09 14:56:29 +01:00
Maciej Suminski
cbf74d6939
Fix off-grid block paste
...
Center point of a block may not always be located on a grid point,
therefore it needs to be rounded to the grid size to prevent off grid
component placement.
2018-10-09 11:08:56 +01:00
Jeff Young
6e2b7521d0
Coding style and lint fixes.
2018-10-09 11:08:56 +01:00
Jeff Young
06e63c3073
Add control over worksheet colour in eeschema.
2018-10-09 11:08:56 +01:00
Jeff Young
637029c292
Remove polygon fix as it causes more issues than it solves.
2018-10-09 11:08:56 +01:00
Jeff Young
5a910e9ee3
Make sure filled polygons are closed when rendering.
2018-10-09 11:08:56 +01:00
John Beard
4a65df8281
Add default case in edit_label.cpp (-Wswitch)
...
This should never ben hit as it's defended against above,
but lack of a default causes lots of -Wswitch warnings, so
add an assert and a return.
2018-10-09 11:08:56 +01:00
Jeff Young
9dfcc839a4
Fix color issues with cursor and sheet pins.
2018-10-09 11:08:56 +01:00
jean-pierre charras
4a92a5e628
Fix a Eeschema crash when using a SYMBOL_PREVIEW_WIDGET. Fix also a few draw artifacts.
2018-10-09 11:08:56 +01:00
jean-pierre charras
a6d014d959
Fix some artifacts when drawing items, both on Cairo and Opengl.
...
Fix also incorrect selection of De Morgan style selection in SYMBOL_PREVIEW_WIDGET.
2018-10-09 11:08:56 +01:00
Jeff Young
2d5baac77d
Fix up zoom and pan issues entering/leaving sheets.
2018-10-09 11:08:56 +01:00
Jeff Young
929786ce50
Fixes to grid color and some more CLangTidy fixes.
2018-10-09 11:08:56 +01:00
Jeff Young
0af31e1bf0
Fix CLangTidy warnings and improve SNR.
2018-10-09 11:08:56 +01:00
jean-pierre charras
0058ef5825
Eeschema: fix a crash at startup in OpenGL engine, when Eeschema is started from Kicad.
...
Can be platform dependent. The crash was due to a wxPaintEvent fired before the GAL engine is fully initialized.
2018-10-09 11:08:56 +01:00
jean-pierre charras
88cdce8d62
Make SYMBOL_PREVIEW_WIDGET working, and using the canvas type of the caller. Fix an issue with F3 zoom key in libedit.
2018-10-09 11:08:56 +01:00
Jeff Young
6f89b41f18
Cleanup.
2018-10-09 11:08:56 +01:00
Jeff Young
3b59c6cf0a
Don't add item to view twice.
2018-10-09 11:08:56 +01:00
jean-pierre charras
33386ec980
Fix zoom issues in Eeschema (F1 to F4 and popup zoom commands) Fix also not saving the Gal Canvas type on eeschema exit.
2018-10-09 11:08:56 +01:00
jean-pierre charras
f283667fb0
add option to switch between opengl and cairo in eeschema (step 1)
2018-10-09 11:08:56 +01:00
Jeff Young
f9faa6ea16
Reduce "Clarify Selection" menus.
2018-10-09 11:08:56 +01:00
Jeff Young
97c83766db
Refresh issues around sheet pins.
2018-10-09 11:08:56 +01:00
Jeff Young
96724af2c4
Ensure junctions and no-connects are visible even on fat wires.
...
Also adds a preference for junction size.
Fixes: lp:1545422
* https://bugs.launchpad.net/kicad/+bug/1545422
2018-10-09 11:08:56 +01:00
Jeff Young
ca3751fbbb
Add GAL refresh for some more commands and remove unused DC params.
2018-10-09 11:08:56 +01:00
Jeff Young
8e09aa554a
Improve dangling pin drawing logic.
2018-10-09 11:08:56 +01:00
Jeff Young
268565ee41
Refresh component when children change.
2018-10-09 11:08:56 +01:00
Jeff Young
37cfa3fed9
Cleanup unused and redundant stuff.
2018-10-09 11:08:56 +01:00
Jeff Young
e2ea9b772a
Fix offset issue when moving text.
2018-10-09 11:08:56 +01:00
Jeff Young
d9d2822fe0
Fix cross-probing.
2018-10-09 11:08:56 +01:00
Jeff Young
9f9251c11d
Minor code cleanup.
2018-10-09 11:08:56 +01:00
Jeff Young
2b6e3de90e
Get rid of asserts when adding line segments.
2018-10-09 11:08:56 +01:00
jean-pierre charras
1a0f3b79cc
Fix SCH_BITMAP handling in gal.
2018-10-09 11:08:56 +01:00
jean-pierre charras
e55763947e
Set the reight grid visibility at start. Display axis in libedit and viewlib.
2018-10-09 11:08:56 +01:00
Jeff Young
98296334fd
Hook up panning options to GAL canvas.
2018-10-09 11:08:56 +01:00
Jeff Young
5b602d02ab
Set block start position when grabbing single items.
2018-10-09 11:08:56 +01:00
Jeff Young
6f0c6f946c
Fixup some more cursor issues.
2018-10-09 11:08:56 +01:00
Jeff Young
b09a4b341c
Update moved items so they get reinserted into the RTree.
2018-10-09 11:08:56 +01:00
Jeff Young
fee52e127f
Add line style drawing.
2018-10-09 11:08:56 +01:00
Jeff Young
808beed191
Warp pointer after context-menu duplicate.
2018-10-09 11:08:56 +01:00
Jeff Young
1e3a5c1b21
Fixup of last commit.
2018-10-09 11:08:55 +01:00
Jeff Young
0063f2c12d
Stroke rectangles after filling so fill doesn't cover 1/2 of stroke.
2018-10-09 11:08:55 +01:00
Jeff Young
48688b5074
Hook up "always show cursor" preference.
2018-10-09 11:08:55 +01:00
jean-pierre charras
f1346030d7
sch_painter.cpp: fix a few incorrect color selections Fix also dangling symbol thickness of bus entries
2018-10-09 11:08:55 +01:00
Jeff Young
4fe58922aa
Draw lines in wire, bus, or graphic color.
2018-10-09 11:08:55 +01:00
Jeff Young
fa0124bee7
Enforce a minimum line thickness for labels.
2018-10-09 11:08:55 +01:00
Jeff Young
4161bb6756
Overhaul block logic to support rotate/mirror on the fly.
...
The old code delayed duplicating till the end which means the
rotate/mirror would affect the original, and then be duplicated
leaving the original incorrectly rotated/mirrored.
2018-10-09 11:08:55 +01:00
jean-pierre charras
906c52deff
minor compil warnings and drawings fix
2018-10-09 11:08:55 +01:00
Jeff Young
3c82ad3220
Finish up the block rotate/mirror fixes.
...
Block rotate and mirror now work like they do in Pcbnew (that is
they're treated as part of the block move/duplicate/whatever
rather than finishing it).
Fixes: lp:1780794
* https://bugs.launchpad.net/kicad/+bug/1780794
2018-10-09 11:08:55 +01:00
Jeff Young
924e56e076
WIP for block rotate and mirror.
...
Block rotate now doesn't drop the block, but it does introduce one
extra undo step per rotate.
Fixes: lp:1780794
* https://bugs.launchpad.net/kicad/+bug/1780794
2018-10-09 11:08:55 +01:00
Jeff Young
7216eda202
Fix bugs in block operations.
...
1) when duplicating don’t keep original hidden until end of drag
2) reset selectionArea when showing it so it doesn’t flash in its previous location
3) center a pasted block on the cursor
4) don’t draw the source selectionArea when pasting a block
5) implement selection-style highlighting for contents of blocks
6) add pasted items to view so they don’t disappear when the block is placed
Fixes: lp:1747197
* https://bugs.launchpad.net/kicad/+bug/1747197
2018-10-09 11:08:55 +01:00
Jeff Young
27df8937b8
Apply a bit of transparency for body backgrounds while dragging.
2018-10-09 11:08:55 +01:00
Jeff Young
7d5e4de815
Implement MoveCursorToCrossHair.
2018-10-09 11:08:55 +01:00
Jeff Young
cb8e6c0df5
Handle GAL view refresh for breaking wires.
2018-10-09 11:08:55 +01:00
Jeff Young
38f38b16c0
Fix dissappearance of moved items.
2018-10-09 11:08:55 +01:00
Jeff Young
5fd20ee786
Implementation of ERC markers.
2018-10-09 11:08:55 +01:00
Jeff Young
47189034aa
Grid settings for LibEdit.
2018-10-09 11:08:55 +01:00
Jeff Young
e45e3b3640
Fix bug with Preferences turning hidden items to black.
2018-10-09 11:08:55 +01:00
Jeff Young
bbe1d996fd
Fix initialization order issue when switching symbols in LibEdit.
2018-10-09 11:08:55 +01:00
Jeff Young
269e8159d4
Grid settings for LibEdit.
2018-10-09 11:08:55 +01:00
Jeff Young
9e9db3afe5
Start an empty document with a reasonable grid size.
2018-10-09 11:08:55 +01:00
Jeff Young
d7178c7833
Implement GAL refresh for a bunch of operations.
2018-10-09 11:08:55 +01:00
Jeff Young
afeebc8944
Grid settings for Eeschema GAL.
...
Split antialiasing options out from display options. Move
antialiasing to common. Duplicate the rest of display options
for Eeschema.
Implement OnSelectGrid and hookup GAL canvas refresh to
SetPresetGrid.
Add Grid Settings... to View menu and move Show Grid from
preferences to View Menu to match Pcbnew.
2018-10-09 11:08:55 +01:00
Jeff Young
8390b7a7ac
Don't paint GAL canvas when it isn't shown.
...
Fixes: lp:1790502
* https://bugs.launchpad.net/kicad/+bug/1790502
2018-10-09 11:08:55 +01:00
Jeff Young
c5330ac0bf
Implement zoom for GAL canvas.
2018-10-09 11:08:55 +01:00
Jeff Young
a67d8c60df
Fix text size measurement.
...
5.0 doesn't set the GAL's line width. It gets away with this since
it's using the same GAL to measure as to set up the drawing, so
the width happens to be set correctly for other reasons. 5.1 uses
a separate GAL and so isn't so lucky.
2018-10-09 11:08:55 +01:00
Jeff Young
1c52824913
Rewrite unit/convert handling so it also works for LibEdit.
2018-10-09 11:08:55 +01:00
Jeff Young
e9c974fcdc
Fix issues with orientation and justification.
...
Support all symbol orientations. (Yes, SCH_COMPONENT said only the
first 8 were used, but it lied.)
Fix cases where SetTextAttributes() was overwriting previously-
set justifications.
Correct rotation of vertical text.
Fix issue where bold global label would affect thickness of next
label's outline.
2018-10-09 11:08:55 +01:00
Jeff Young
c3479154ca
Fix draw order issues in eeschema and libedit.
...
Eeschema (where only the parent component is in the view) uses
draw order.
LibEdit (where the individual items are in the view) uses the
viewPriority setting.
2018-10-09 11:08:55 +01:00
Jeff Young
917943f8f8
Uniform handling of hidden objects.
2018-10-09 11:08:55 +01:00
Jeff Young
17ce36d4b7
Add dangling end support for lables and lines.
2018-10-09 11:08:55 +01:00
Jeff Young
6eafb9a2fd
Convert Rescue Symbols dialog previews to GAL.
2018-10-09 11:08:55 +01:00
Jeff Young
893f7641ce
Handle hidden and dangling pins.
2018-10-09 11:08:55 +01:00
Jeff Young
8a017d99d2
Fix pin drawing offsets and implement electrical type drawing.
2018-10-09 11:08:55 +01:00
Jeff Young
538a5d49ee
Fix up GAL version of Symbol Viewer.
...
Also includes some preliminary work for supporting hidden pins,
pin electrical names, and other preferences.
2018-10-09 11:08:55 +01:00
Jeff Young
da4fb4ae3a
Move galDisplayOptions access from pcbnew to common.
2018-10-09 11:08:55 +01:00
Jeff Young
a03dc577f8
Add support for units.
2018-10-09 11:08:55 +01:00
Jeff Young
7cbfa08ddd
Move symbol chooser dialog preview to GAL.
2018-10-09 11:08:55 +01:00
Jeff Young
8e915ae8d8
Add support for LIB_ALIAS objects.
2018-10-09 11:08:55 +01:00
Jeff Young
8b4f01b6b7
Add common property initialisation to sch_draw_panel.
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
a3563851b2
eeschema-gal: started work on library viewer canvas
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
48d36f854e
eeschema-gal: fix cursor shape switching
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
ccb594f599
eeschema-gal: support for global labels and bitmaps
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
d8b9899516
eeschema-gal: configurable worksheet & grid colors
2018-10-09 11:08:55 +01:00
Tomasz Wlostowski
5f7c923b8b
eeschema-gal: post-rebase fixes
2018-10-09 11:08:52 +01:00
Tomasz Wlostowski
90c7c60471
eeschema-gal: initial GALified version. Lots of stuff still to do!
2018-10-09 11:08:52 +01:00
Tomasz Wlostowski
14fed877c8
eeschema-gal: factor out libedit controller code into separate directory
2018-10-09 11:08:52 +01:00
Tomasz Wlostowski
c024fce625
eeschema-gal: moved libedit to a separate directory
2018-10-09 11:08:52 +01:00
Seth Hillbrand
cb90e5b9e2
libedit: Fix memory leak
...
The copy of the original lib_part was not released when aliases could
not be located.
2018-10-08 09:51:26 -07:00
Seth Hillbrand
d2906f7975
eeschema: fix mistaken wire removal bug
...
The wire between two points should not be trimmed if it starts or ends
on one of the component's connection points.
2018-10-08 08:42:06 -07:00
Jeff Young
90df7a8b22
Sort references before removing duplicates.
...
std::unique only works within consecutive blocks, so the list must
be sorted first. (We need it sorted in the end anyway, so no
big deal.)
2018-10-08 00:14:07 +01:00
Wayne Stambaugh
34ea79eddb
Fix LIB_ID illegal character tests.
...
The '/' and ':' are reserved and cannot be used in symbol or footprint
names. They will cause the LIB_ID parser and formatter to fail. While
it seems like they should be legal in symbol alias names, they will
trigger a symbol rescue the next time the schematic is loaded.
Use ID_SCH as in the Eagle schematic plugin rather than ID_ALIAS to
ensure symbol names do not need rescued the next time the schematic is
opened.
Remove ID_ALIAS since the rules for alias names are the same as the
rules for symbol names. Otherwise, allowing '/' and ':' in alias names
will force a symbol rescue on the next schematic load.
Fixes lp:1795600
https://bugs.launchpad.net/kicad/+bug/1795600
2018-10-07 09:09:27 -04:00
Jeff Young
9a213207fb
Clearer titles for editing board footprints.
...
Also cleans up the naming on the symbol editor side.
2018-10-05 14:17:58 +01:00
Jeff Young
8015334683
Don't resize hidden columns.
...
wxGrid columns are hidden by setting their width to 0. Resizing
them will "unhide" them.
Fixes: lp:1796150
* https://bugs.launchpad.net/kicad/+bug/1796150
2018-10-05 14:17:58 +01:00
Jeff Young
c9ca1013b2
Make ModEdit and LibEdit library tree actions more consistent.
...
Adds Cut/Copy/Paste and Revert for footprints; introduces a new
shared Revert Changes? dialog; hooks up Add Library for footprints,
standardizes the Save As terminology.
2018-10-03 22:46:41 +01:00
Jeff Young
3c2aafd7b7
Move Edit Symbol References to standard text/button control.
2018-09-29 22:07:31 +01:00