Marek Roszko
7e974e5ccc
Use the snapped cursor position used for detection for the wire tool autostart
...
Fixes #5902
2020-10-07 23:57:26 -04:00
Marek Roszko
f5e0754f65
Use the setCursor lambda pattern and fix up the initial cursor states
2020-10-07 23:26:14 -04:00
Mark Roszko
d9485129c8
Implement more context specific cursors using both stock and custom cursors.
2020-10-08 00:50:28 +00:00
Jeff Young
809f4c2ffb
Finish single-click-place drawing tool on double-click.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5907
2020-10-07 18:30:55 +01:00
Jeff Young
4565631728
Finish moving eeschema assigned netclasses to sheet-path-relative.
...
Also adds code for the case where a new label is created on a net
with an existing netclass assignment.
Fixes https://gitlab.com/kicad/code/kicad/issues/5886
2020-10-07 16:31:55 +01:00
Wayne Stambaugh
5127d6c772
Eeschema: add ERC check for library symbol issues.
...
ADDED: ERC check for library symbols that have changed since they were
added to the schematic or have broken symbol library links.
2020-10-07 09:15:31 -04:00
Seth Hillbrand
504f57811a
Remove a hard-coded parameter
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5373
2020-10-06 14:26:22 -07:00
Seth Hillbrand
8c367cce8d
Separate ki_fp_filters by spaces
...
Multiple footprint filters will no be separated by spaces for easier
parsing as an array
2020-10-06 14:26:22 -07:00
Michael Kavanagh
006e383f2a
Move sch_text help into markdown file
2020-10-06 17:18:35 +00:00
Jeff Young
30c2ca67d9
Fix typo.
2020-10-06 14:23:10 +01:00
Jeff Young
e9d372f4b7
Allow spaces in sheet filenames.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5736
2020-10-06 14:21:18 +01:00
Jon Evans
76bfa47a77
Allow creating new projects when doing a Save As in eeschema
2020-10-05 22:36:26 -04:00
Ian McInerney
43c14face0
Switch to showing metric/imperial units in comboboxes and menus
...
This will always show 1 unit from each system, with the primary unit
being the current frame unit and the secondary unit being the
most recent unit used from the other system. These are saved in
the settings, so they are saved between runs.
2020-10-05 20:26:33 +01:00
Michael Kavanagh
1416280662
Cleanup: Move Eagle files into plugins folder
2020-10-05 14:19:07 +00:00
Jeff Young
63a0f537d8
Performance enhancement: check hierarchy validity only when necessary.
2020-10-05 13:49:29 +01:00
Jeff Young
7a7de027a7
Fix order of operations for setting underline.
2020-10-05 12:32:47 +01:00
Jeff Young
c9096c7168
Re-enable selection of intersheet references.
...
Un-modified roll-overs and clicks still produce hypertext action, but
modified clicks and drag-selects will select.
2020-10-05 11:55:33 +01:00
Mark Roszko
a28a0e14ba
Fix conversion warnings
2020-10-05 10:41:14 +00:00
Jon Evans
e27786de2d
Fix double call of OnPgmExit
...
Also fix bad filename being passed to pcbnew when starting
from a blank schematic in standalone mode
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5786
2020-10-04 18:39:33 -04:00
Ian McInerney
6c2433fed6
eeschema: Fix nullptr reference in intersheet references
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5881
2020-10-04 22:28:35 +01:00
Jon Evans
bdb18022c0
Flag all dangling labels, not just isolated ones
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1788
2020-10-04 17:13:42 -04:00
Ian McInerney
8c09f28b28
libedit: Fix dialog spacing
2020-10-04 17:53:55 +01:00
Ian McInerney
8b0fb9f4cf
Remove units and polar settings from the preferences panels
...
These options are already available in menus, toolbars and hotkeys,
so having them in the preferences pane is more trouble than it is
worth.
2020-10-04 17:53:55 +01:00
Ian McInerney
122bd7ca7c
Make the statubar aware of mils units
...
Switch Eeschema to use the built-in printing routines
because its precisions are close to those and it is
cleaner.
Give mils a precision of 2 decimal places to match
the precision shown in inches.
2020-10-04 17:53:55 +01:00
Ian McInerney
b1bd1f2a97
Introduce new action to switch to mils as a unit
2020-10-04 17:53:55 +01:00
Jeff Young
44580acee2
Clean up some compiler warnings.
2020-10-03 22:55:34 +01:00
Mikolaj Wielgus
d14761bee6
Fix inches being sometimes used instead of mils
2020-10-03 20:06:56 +00:00
Mikolaj Wielgus
400c15b8eb
Add mils to units, remove useMils variables
2020-10-03 20:06:56 +00:00
Marek Roszko
676f3221cc
Fix symbol editor glitches due to autostart trying to start
2020-10-03 15:47:08 -04:00
Marek Roszko
0b2b8b150d
Use the event position always instead of the view cursor position
...
Fix #5850
2020-10-03 15:20:32 -04:00
Ian McInerney
454c4f1783
Minor fixup to intersheet reference files
2020-10-03 19:09:18 +01:00
jean-pierre charras
0b23cb7dbb
more cleanup about removing useless include
2020-10-03 15:26:03 +02:00
jean-pierre charras
e76736b7bf
Fix a few Coverity warnings
2020-10-03 12:47:41 +02:00
jean-pierre charras
bda275de46
more cleanup about removing useless include
2020-10-03 11:48:16 +02:00
jean-pierre charras
b38cef409b
Rename CopyFile() to KiCopyFile() to avoid name colliding with a windows header.
...
Using CopyFile() that can collide with a windows header create hard to
understand errors, including link errors.
Renaming this function avoids these strange errors.
2020-10-03 10:08:21 +02:00
Roberto Fernandez Bautista
ab18c8e219
eeschema: Add "All supported formats" drop-down to the "Import Non Kicad Schematic" file dialog
2020-10-03 02:19:13 +00:00
Marek Roszko
b0ffbcaba1
Fix #5850
2020-10-03 02:10:56 +00:00
Jeff Young
4c5db9681c
Naming conventions.
2020-10-02 21:25:14 +01:00
Jeff Young
cc617b715f
Implement hypertext links for intersheet references.
2020-10-02 21:18:34 +01:00
jean-pierre charras
1258abef07
EEschema: move plot_xx.cpp files to "plotters" folder.
2020-10-02 15:56:05 +02:00
jean-pierre charras
7865d8de43
more cleanup about removing useless include
2020-10-02 15:50:46 +02:00
Jeff Young
c1b34b02b5
Disallow selection of intersheet references.
2020-10-02 13:50:16 +01:00
Jeff Young
4b315b0fda
Clean up dialog spacing.
2020-10-02 13:50:16 +01:00
jean-pierre charras
8285110c2a
more cleanup about removing useless include
2020-10-02 08:58:19 +02:00
Peter Montgomery
60046a1bcc
Dynamically scale cross-probe zooming
...
CHANGED: When doing cross-probe zooming, KiCad zooms the selected
component to fill the screen. This makes it hard to understand the
part in context so users would have to always zoom out manually. This
commit uses the default text height in Eeschema and Pcbnew as a
constant to compare the height of selected parts or components against.
This lets the code determine how big the part is and scale the zoom
wider accordingly. Big parts get less scaling and small part get more.
NOTE: There is a little bit of debug code present. There are #ifdefs
to let developers easily swap in the original KiCad zoom for comparison.
There is also a bool added that can force each program to always perform
the new calculated zoom since KiCad ignores zooms that are close to the
current value. This debug code can be removed later as desired.
2020-10-02 00:56:52 +00:00
Mark Roszko
c940a45937
ADDED: Autostart wires in eeschema
...
Allows wires to be automatically started by clicking over a connection point
2020-10-01 23:53:47 +00:00
Jon Evans
71ed7ee707
Revert "Drag preselected items even when "prefer selection to dragging" enabled"
...
This reverts commit d530e2c2cd
.
2020-10-01 18:23:30 -04:00
Franck Jullien
2fc49045d1
ADDED: eeschema: Add intersheets references function
...
Add a new function to place intersheets references next to
global labels.
2020-10-01 20:39:32 +00:00
jean-pierre charras
f702da95c7
Minor code cleanup, step2: remove more useless include.
...
fix also a minor compil warning
2020-10-01 15:39:47 +02:00
jean-pierre charras
42350a4928
Minor code cleanup: remove useless include or useless code.
...
fix also a minor compil warning
2020-10-01 11:36:15 +02:00
Jon Evans
d530e2c2cd
Drag preselected items even when "prefer selection to dragging" enabled
...
Not being able to drag an already-selected item feels broken
2020-09-30 20:10:13 -07:00
PJM
1eb423830e
Eeschema: Remove wire and bus formatting GUI elements
...
CHANGED: Remove wire and bus formatting GUI elements from "Schematic
Setup" dialog panel. Wire thickness is handled by netclasses now
and this was a leftover from before that change.
Fixes https://gitlab.com/kicad/code/kicad/issues/5815
2020-10-01 00:20:31 +00:00
PJM
b0e05ad9bf
Eeschema: Check for NULL pointer when using interactive delete tool
...
CHANGED: If you start the interactive delete tool and the mouse pointer
isn't near anything, Eeschema tries to use a null EDA_ITEM pointer
which throws an exception. This commit checks if the pointer is null
and exits if it is.
2020-09-30 23:05:29 +00:00
Ian McInerney
2c49c406a0
Remove ignore other projects option from back annotation
...
The new schematic format makes this option unneeded, and it isn't
used at all in the backannotation code - so it doesn't need to be
in the UI.
2020-09-30 23:34:04 +01:00
jean-pierre charras
3f8c9d49f8
Revert "Code cleanup: remove useless wx/wx.h include inside a few files."
...
due to compil issue on Linux
This reverts commit cffccc3970
.
2020-09-30 20:47:20 +02:00
jean-pierre charras
cffccc3970
Code cleanup: remove useless wx/wx.h include inside a few files.
...
in most of files, including wx.h is not necessary, when only 2 or 3 wx files must be included.
Moreover, on windows, including wx.h sometimes create compil warnings about
shadowed vars defined in some specific windows headers.
2020-09-30 20:03:27 +02:00
PJM
7dc1966a0d
Eeschema: Fix text formatting in "Project Load Warning" dialog
...
CHANGED: When the "Show Details" button on the "Project Load Warning"
dialog is clicked, it reveals text that has odd formatting of when
lines split. This commit fixes the text for the dialogs that warn
that schematics will be saved in the new file format, and that Symbol
Libraries defined in the project file symbol library list are no longer
supported.
2020-09-29 00:31:13 -07:00
Roberto Fernandez Bautista
39995341d9
Compile fixes
...
Fix compile error
Fix string format to use %ld instead to work on clang in CADSTAR Archive importers
Add virtual destructor to CONNECTION in CADSTAR_ARCHIVE_PARSER
2020-09-27 22:05:07 +00:00
Roberto Fernandez Bautista
6f5f6a0fba
CADSTAR Schematic / PCB Archive Importers: Fix string formatting asserts
2020-09-27 18:14:02 +01:00
Roberto Fernandez Bautista
93242eb3ad
CADSTAR Schematic / PCB Archive Importers: Add missing import warnings and fix code formatting
2020-09-27 18:14:01 +01:00
Roberto Fernandez Bautista
5e2e692ad8
CADSTAR Schematic Archive Importer: Load Documentation Symbols
2020-09-27 18:14:00 +01:00
Roberto Fernandez Bautista
c6bc72d579
CADSTAR Schematic Archive Importer: Load Texts
2020-09-27 18:14:00 +01:00
Roberto Fernandez Bautista
da791c5298
CADSTAR Schematic Archive Importer: Load Figures
2020-09-27 18:13:59 +01:00
Roberto Fernandez Bautista
40c5795c03
CADSTAR Schematic Archive Importer: Load Busses and fix minor import bugs
...
Fixed missing tokens that weren't parsed before:
- Danglers (in NET_SCH)
- Pin numbers (in SYMBOL)
- HidePinNames in both PART and PART::DEFINITION, defaulting it to false
2020-09-27 18:13:59 +01:00
Roberto Fernandez Bautista
2d85fc8c91
CADSTAR Schematic Archive Importer: Load Nets, Wires, Junctions and Hierarchical Pins
2020-09-27 18:13:59 +01:00
Roberto Fernandez Bautista
1c57b5c079
CADSTAR Schematic Archive Importer: Load symbol library and schematic symbol instances
2020-09-27 18:13:58 +01:00
Roberto Fernandez Bautista
2d99703e28
CADSTAR Schematic Archive Importer: Load all Sheets and Hierarchical Blocks
2020-09-27 18:13:58 +01:00
Roberto Fernandez Bautista
646a733556
CADSTAR Schematic Archive Importer: Parse all elements
2020-09-27 18:13:57 +01:00
Roberto Fernandez Bautista
721cba32d5
ADDED: CADSTAR Schematic Archive Importer
...
Initial commit to trigger the importer
2020-09-27 18:13:57 +01:00
Tomasz Wlostowski
a01e4f19b4
eeschema: allow exporting netlists through UI-less KIFACE API function
2020-09-27 16:45:46 +02:00
Jeff Young
e4bc1eb3bf
Fold Update Fields from Library into Update Symbol.
...
Also gives Change Symbol control over which fields to update.
Fixes https://gitlab.com/kicad/code/kicad/issues/5217
2020-09-27 14:09:11 +01:00
jean-pierre charras
6b958ff4e0
Move specialized plotter classes from plotter.h to specific plotter_xx.h
...
plotter.h contains now only a header common to all plotters.
The code does not actually change, but it allows modifying a specific plotter
without recompiling most of kicad files.
2020-09-27 09:54:39 +02:00
Ian McInerney
fc565edb33
Add a palette to the toolbars to display groups of actions
...
This adds a palette to toolbar items that displays groups
of actions when long-pressed on a button.
2020-09-27 01:00:44 +01:00
Jeff Young
5e96849abd
Fix missing newline.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5679
2020-09-27 00:12:14 +01:00
Jeff Young
f8875bc5a6
Move std::contains to alg::contains.
2020-09-26 14:42:40 +01:00
Jeff Young
d7e80f8008
Add std::contains() to simplify a lot of code.
2020-09-26 12:40:32 +01:00
PJM
d1322e7d1d
Refactor GetDocumentExtents()
...
CHANGED: GetDocumentExtents() in 'eda_draw_frame.h' now has a bool
parameter "aIncludeAllVisible" with a default value "true" which makes
it behave as it did before adding parameter. If "aIncludeAllVisible"
is false, the returned bbox ignores some items depending on which
program it is running in.
CHANGED: Made "Zoom to Objects" use only PCB edge in Pcbnew. This
allows text, notes, etc outside the PCB edge to be excluded in the
zoom calculation.
CHANGED: Added "Zoom to Objects" to Pcbnew main menu, and to RMB context
menus for Eeschema and Pcbnew.
Fixes https://gitlab.com/kicad/code/kicad/issues/5787
2020-09-25 00:31:56 -07:00
Jeff Young
eaf151075c
Correctly de-highlight found items when closing Find dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5775
2020-09-24 18:46:25 +01:00
PJM
ca2252686a
Eeschema: Make SCH_VIEW::GetItemsExtents() ignore invisible text
...
CHANGED: SCH_VIEW::GetItemsExtents() returns a bbox of all visible items
but ignores the page and border. It was taking invisible strings into
account when calculating the bbox, and now it doesn't. Makes "Fit to
Objects" work correctly with all components that have hidden text.
Fixes https://gitlab.com/kicad/code/kicad/issues/5726
2020-09-23 02:46:14 +00:00
Mateusz Majchrzycki
1c2ab0f523
eeschema: fixed auto increment of pin position in Pin Table
...
CHANGED: Pin position is now incremented properly in the Pin Table
dialog. The Pin position is ussing Internal Units insted of mils, so
the hardcoded 50/100 mils spacing has to be converted to IU before
adding.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5730
2020-09-22 23:46:50 +00:00
PJM
e77b7e3360
Make MMB double click perform 'Zoom to Fit'
...
ADDED: Make middle mouse button double click do a 'Zoom to Fit'
in Eeschema, Pcbnew, and Gerbview. Ctrl-MMB does a 'Zoom to Objects'
in Eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/1988
2020-09-22 23:21:44 +00:00
Marek Roszko
f47d81af85
Create and use a LIB_PIN constructor to remove hot path during symbol table loading
2020-09-22 22:33:06 +00:00
Seth Hillbrand
975e5562a0
EEschema: Sort Hierarchy tree
...
This sorts the hierarchy tree children alphabetically
2020-09-21 11:17:33 -07:00
Jeff Young
6020b70596
Display green badge for zero errors or zero warnings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5735
2020-09-21 11:59:27 +01:00
Jeff Young
c6fb799fcd
Restore severity in saved DRC/ERC reports.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5733
2020-09-21 11:59:27 +01:00
Jeff Young
fdbb28aea2
Treat Reference and Unit as separate words when searching.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4630
2020-09-20 18:57:33 +01:00
Ian McInerney
89dcc46898
Coverity cleanup and remove unused variables
2020-09-20 02:20:41 +01:00
Jeff Young
13f1de8e73
Forgot a bunch of files from last commit.
2020-09-19 19:53:58 +01:00
Jeff Young
64fa400b19
Ease translation a bit.
...
Also improves the SNR and consistency of the menu item text. For
instance, a position is rarely useful, while relative sizes can be.
Also removes some unnecessary repitition, such as "Graphic Rectangle"
when "Rectangle" communicates the necessary information.
2020-09-19 18:49:06 +01:00
Jeff Young
39bdc547af
Smarten up the guess selection routine to pick closest item.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5697
2020-09-19 15:55:27 +01:00
Seth Hillbrand
4fa3de2211
Ensure we clear forced position
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5699
2020-09-18 16:10:09 -07:00
Jeff Young
ef48dba7ff
Correctly set value and footprint fields from Symbol Fields editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5689
2020-09-18 23:30:16 +01:00
Jeff Young
7062a3b29b
Fix bug in net <-> netclass matching.
...
Also adds a "Default" setting for Edit Text and Graphics Properties
so the linestyle can be batch-edited back to default.
Fixes https://gitlab.com/kicad/code/kicad/issues/5674
2020-09-18 23:29:34 +01:00
Jeff Young
d468618411
Don't eat commands that aren't ours in SCH_MOVE_TOOL.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5692
2020-09-18 16:45:41 +01:00
PJM
c8879d9034
Eeschema: Check if user wants to warp mouse to origin of moved object
...
CHANGED: When moving a footprint, Eeschema was always warping the mouse
when moving an item regardless of the state of the "Warp mouse to
origin of moved object" checkbox. This MR now honors the state of the
checkbox when moving schematic items.
NOTE: Issue 5279 originally only mentioned Pcbnew, but after the fix
for Pcbnew was submitted, a user pointed out it also happened in
Eeschema. Becuase of this, there are two MRs that "fix" the same issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/5279
2020-09-18 02:49:59 +00:00
Seth Hillbrand
471f81742f
ADDED: Align to Grid function in Eeschema
...
Adds tool option to align selected elements to the current grid.
Fixes https://gitlab.com/kicad/code/kicad/issues/5481
2020-09-17 12:27:43 -07:00
Ian McInerney
8bd77c4fe7
Rename the ITEM_SET types to be descriptive of their contents
...
Now that we have one set type for BOARD_ITEMs and another for SCH_ITEMs
it is better to explictly say if they are board or schematic sets.
2020-09-16 02:04:17 +01:00
PJM
abdd1906c2
Change 'Zoom to Fit' margins and add 'Zoom to Objects'
...
CHANGED: The margin used in 'Zoom to Fit' is now 2% instead of 10%.
ADDED: Added 'Zoom to Objects' to Eeschema which does not include
the page and border in the bbox calculations.
CHANGED: Removed pre-existing code that tweaked the center to account
for the scrollbars. It actually made the view off center. Removing it
results in perfectly centered zooms.
Fixes https://gitlab.com/kicad/code/kicad/issues/5145
2020-09-16 00:53:39 +00:00
Jeff Young
7e35658c28
Use schematic colours in symbol preview status panel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4998
2020-09-16 00:58:36 +01:00
Jeff Young
cdbe2fd2d2
User terminology specific to Change Footprint/Symbol.
...
Also implements separate session settings for the reset checkboxes
for Change Footprint and Update Footprint.
Fixes https://gitlab.com/kicad/code/kicad/issues/5614
2020-09-16 00:15:26 +01:00
Seth Hillbrand
67a7aa8ba4
Make snapping size grid-dependent
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5638
Fixes https://gitlab.com/kicad/code/kicad/issues/5588
2020-09-15 12:07:34 -07:00
Simon Richter
aa24fe2880
Fix return type from ternary operator ( fixes #5554 )
2020-09-12 22:43:49 +00:00
Seth Hillbrand
1703657fb5
Decrease default snap range
...
The snap range needs tuning to preference and monitor resolution. This
shifts the default range down for users until the customization bits are
implemented.
2020-09-12 08:34:21 -07:00
Seth Hillbrand
d14c6ba71f
Keep snap line alignment before new snaps
...
Also fixes the alignment line that was supposed to be dashed and not
solid.
2020-09-11 14:22:41 -07:00
Seth Hillbrand
23a9df8a59
ADDED: Allow Eeschema dragging graphical corners
...
This separates the two options (drag/move) into different actions. Drag
will drag all graphical lines connected. Move will disconnect the
graphical lines when moving.
2020-09-11 09:31:38 -07:00
Seth Hillbrand
f493e270ea
ADDED: Menu option to enable/disable snap to grid
...
You can now enable and disable snap to grid when drawing/editing across
all apps. You can also tie snap to grid to the visibility of the grid
to allow rapid enable/disable via grid display.
2020-09-10 20:09:30 -07:00
Seth Hillbrand
62433736bc
Snap Eeschema moves to nearest anchor
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3803
2020-09-09 10:48:15 -07:00
Seth Hillbrand
4026904cc4
Make grid snapping depend on grid visibility
...
Turning the grid view on enables snapping to the grid. Turning it off
removes the snap and allows free draw
2020-09-09 10:18:15 -07:00
Seth Hillbrand
173b4ff588
Add snapping to eeschema
...
This generalizes both the SetPosition() function and ORIGIN_VIEWITEM
class away from the pcbnew-centric.
2020-09-09 10:18:15 -07:00
Wayne Stambaugh
d45c11b4b5
Exclude from bill of materials and board netlist to library symbols.
...
ADDED: Support for exclude from bill of materials and board netlist to
library symbols.
Fixes https://gitlab.com/kicad/code/kicad/issues/4915
2020-09-09 09:03:37 -04:00
Jeff Young
f347118ce3
Add a min pin width advanced config for plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5546
2020-09-08 20:19:54 +01:00
Seth Hillbrand
cfcc3bbc0a
Fix UTF8 conversion issue
...
The ternary needs a wxString object for both sides to reference the UTF8
functions
Fixes https://gitlab.com/kicad/code/kicad/issues/5554
2020-09-08 10:08:21 -07:00
Seth Hillbrand
02a5d47de9
Avoid passing references in EESchema
...
This returns the connection list by value. This allows easier Python
use
Also renames m_End() to GetEnd()
2020-09-08 06:29:27 -07:00
Jeff Young
054b5aa475
Fix copy-pasta.
2020-09-08 11:02:09 +01:00
Jeff Young
7b05e456cc
Bug fixes for multiple symbol instances in complex hierarchies
...
1) use SCH_COMPONENT::GetRef(), GetValue() and GetFootprint() when
instance-specific info is needed
2) update UpdateAllScreenReferences() to handle value and footprint.
3) BACKANNO is CvPcb's handler, not back annotation's handler. Which
means it needs GUI behaviour, not back annotation behaviour.
Fixes https://gitlab.com/kicad/code/kicad/issues/5520
2020-09-06 13:57:14 +01:00
Jeff Young
b28332c5f1
Minor code cleanup.
2020-09-06 13:04:52 +01:00
Jeff Young
d5fd09249b
Save instance info on clipboard and reapply it when keeping annotations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5522
2020-09-06 11:32:28 +01:00
Jeff Young
133fb5cded
Minor code cleanup.
2020-09-06 11:28:58 +01:00
Jeff Young
a25dfb2ac9
Stop setting modify from ClearAnnotation().
...
It's a side-effect, and as it turns out every current caller has
special-case code to reset it afterwards.
2020-09-06 11:26:39 +01:00
Jeff Young
e782794f96
Flesh out object properties and DRC Rule syntax help.
2020-09-05 17:44:59 +01:00
Ian McInerney
f28b60896c
Allow toolbar items to cancel tools when pressed
...
There was a regression in v6 where the zoom to selection toolbar
item wasn't canceling the tool when pressed and the tool was active
(it was in v5). This implements a more generic framework for canceling
tools on button presses.
Fixes https://gitlab.com/kicad/code/kicad/issues/5103
2020-09-05 01:49:38 +01:00
Jeff Young
16b85ed567
Fix for reading back-annotation data from sexpr sch format.
2020-09-04 21:41:47 +01:00
Jeff Young
5e9ec82642
Correctly resolve textVar refs in worksheet items in ERC.
...
Also fixes a null-ptr bug in DRC.
Fixes https://gitlab.com/kicad/code/kicad/issues/5506
2020-09-04 21:38:07 +01:00
Jeff Young
be15053745
Allow back-annotation of differing values and footprints.
...
Also fixes a couple of bugs where resolving a textVar reference
to the refDes or unit wouldn't get the correct value in a
hierarchical schematic. (Unlogged.)
Fixes https://gitlab.com/kicad/code/kicad/issues/5397
2020-09-04 15:21:56 +00:00
jean-pierre charras
0bd6e5d96e
FIELDS_GRID_TABLE and TEXT_MOD_GRID_TABLE: fix incorrect position of checkboxes
...
This is an issue specific to wxWidgets 3.1.4
2020-09-04 15:41:51 +02:00
jean-pierre charras
15c4a7b066
DIALOG_LIB_EDIT_PIN_TABLE: fix incorrect handling of Cancel button
2020-09-04 09:49:54 +02:00
Jon Evans
a4d23fff12
Fix multi-unit pin check logic
...
Typo name vs. number
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5483
2020-09-03 17:30:13 -04:00
Wayne Stambaugh
03423f13a1
Eeschema: fix broken new sheet path comparison on windows.
...
Using wxFileName::GetPath( wxPATH_WITH_SEPARATOR ) does not include the
drive specifier (A:, B:, C:, etc.) on windows which fails the comparison
with the project path 100% of the time. wxFileName::GetPathWithSep()
solves the issue nicely.
Fixes https://gitlab.com/kicad/code/kicad/issues/5077
2020-09-03 11:11:14 -04:00
Jeff Young
3ce1b2b44e
Clean up Coverity warning.
2020-09-03 15:03:09 +01:00
Seth Hillbrand
8751a55651
Tightening up the title bar display
...
Eeschema was the only application showing the file path. This is of
limited use and prevented other information from showing in the
shortened menubar display. Also combined strings for better translation
2020-09-03 06:59:37 -07:00
Seth Hillbrand
d6a4ab0eec
Shortening filenames in titlebar
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2096
2020-09-03 06:38:34 -07:00
Michael Kavanagh
de03d3d427
Application title bar: app name after filename
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2096
2020-09-03 06:35:48 -07:00
jean-pierre charras
04ba129881
Add specific icon for save symbol to schematic.
...
Also update CMakeLists.txt to prepare compatibility with Inkscape 1.0
However the command line to invoke Inkscape is still for 0.92 version
2020-09-03 10:00:44 +02:00
Jeff Young
bd23d003d2
Bring Eeschema UI closer in line with Pcbnew for change terminology.
...
Also clears up the text & tooltip of the Remap Symbols function to
better explain why it's greyed out most of the time.
2020-09-02 15:21:51 +01:00
Jeff Young
b596d3c3d5
Implement update options for Update Symbol from Library.
2020-09-02 15:21:51 +01:00
Jeff Young
c0bc47810a
Fold pin table in to Symbol Properties.
2020-09-02 15:21:51 +01:00
Jeff Young
fa8138ee5a
Rework Symbol Props to Footprint Props design.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2286
Fixes https://gitlab.com/kicad/code/kicad/issues/5414
2020-09-02 15:21:51 +01:00
Wayne Stambaugh
c0afeed13d
Symbol editor: fix broken long dash in title.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5455
2020-09-02 09:22:55 -04:00
Ian McInerney
1b4ec6ccb5
Display symbol libraries that couldn't be loaded as disabled text
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5092
2020-09-02 00:10:25 +01:00
Wayne Stambaugh
c17f832de1
Eeschema: move auto save check before clearing current screen.
...
GitLab issue #5068 only affected the 5.1 branch. The same issue could
also affect master if for some reason a context switch occurs due to
changes. Moving the auto save feature before setting the current screen
to null should mitigate any potential future issues.
2020-09-01 16:52:05 -04:00
jean-pierre charras
f38631b9ab
fix a compil warning (shadowed var).
2020-09-01 17:46:17 +02:00
Jeff Young
e6f4e156b6
Fix the SCH_PINs test to be more reflective of the codebase.
2020-09-01 15:25:49 +01:00
Wayne Stambaugh
c9fa46ace8
Eeschema: allow symbols to be edited in place.
...
ADDED: Support to allow schematic symbols to be edited in place.
2020-09-01 07:28:20 -04:00
Mark Roszko
9f128f942c
Move shutdown blocker to kiplatform
2020-09-01 10:14:51 +00:00
Jon Evans
30b402bc02
Don't set modify flag when deleting markers
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5418
2020-08-31 22:07:19 -04:00
Mark Roszko
a9532c2fa1
Add browse button to footprint 3d settings
...
Add normalization to 3d settings and footprint library table editor
2020-09-01 02:00:38 +00:00
Jeff Young
6e72f609f0
Make sure router and via tools update when sizes change.
...
Also adds a size menu to the context menu for the Via tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/5321
2020-08-31 23:33:02 +01:00
Jeff Young
1ea08f27f8
Keep local number up-to-date so we don't have to look at libPin's.
...
The libPin, in particuar, may have been freed.
Fixes https://gitlab.com/kicad/code/kicad/issues/5399
2020-08-31 20:09:47 +01:00
Jeff Young
cd55185904
Don't accept any values not in the dropdown for alternate pins.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5399
2020-08-31 20:04:05 +01:00
Jeff Young
2697fc3864
Remove canvas-switching from OSX.
...
The Cairo renderer doesn't work on Retina displays.
Fixes https://gitlab.com/kicad/code/kicad/issues/4788
2020-08-31 18:48:25 +01:00
Jeff Young
88635ee5b6
Clean up error messages.
...
Convert a lot of nags to InfoBar errors/warnings/messages, and some
that never should have been exposed to wxFAIL_MSGs.
2020-08-31 14:19:57 +01:00
Jon Evans
38a4e4ad5a
Remove the last bits of the old netlist system
2020-08-30 16:30:04 -04:00
Jon Evans
cf17a675b4
Port simulator probing to new connectivity info
2020-08-30 16:05:16 -04:00
Jon Evans
9f7bca38b3
A better way of handling standalone project files
2020-08-30 16:04:39 -04:00
Jon Evans
be0aad5984
Move similar labels check to new connectivity engine
2020-08-30 15:43:16 -04:00
Jon Evans
48d7c46a53
Move pin table checks to new connectivity system
2020-08-30 15:43:16 -04:00
Jon Evans
68dd508fbd
Use correct wildcard for creating new schematics
2020-08-30 15:43:16 -04:00
Jeff Young
20211eed49
Unroll a level of prefs for fieldname templates.
...
It was playing havoc with the saving of project and global templates
without one overwriting the other.
Fixes https://gitlab.com/kicad/code/kicad/issues/5415
2020-08-30 18:58:18 +01:00
Jeff Young
45ed91a405
Regularize formatting.
2020-08-30 18:58:18 +01:00
Jeff Young
cc64709407
Reimplement skip-parent-page to work with MacHack.
...
This prevents the "leaking" pages where the layers panel is shown
in the background of all other panels.
Fixes https://gitlab.com/kicad/code/kicad/issues/5182
2020-08-29 20:53:53 +01:00
Jeff Young
e2f32ce7b6
Allow setting a stroke type back to the default.
2020-08-29 18:47:11 +01:00
Jeff Young
1bd7290309
Repair broken logic in ForceKeepAnnotations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5382
2020-08-29 18:18:23 +01:00
Dominik Wernberger
b653df2b21
Make numbers in pin table read only
2020-08-29 12:06:33 +02:00
Jeff Young
f005977aab
Minor simplification to custom colour theme GUI for print/plot dialogs.
2020-08-28 14:15:58 +01:00
Jeff Young
e7db43285f
ADDED new footprint fabrication attributes.
...
This commit also adds mapping of the new symbol properties
"exclude from BOM" and "exclude from board" to be correctly
handled in Update Board from Schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/2399
Fixes https://gitlab.com/kicad/code/kicad/issues/4643
Fixes https://gitlab.com/kicad/code/kicad/issues/2233
2020-08-28 11:05:58 +01:00
Seth Hillbrand
46cb760641
Standardize eeschema header with pcbnew
...
Removes the host tag with build data and replaces with the "generator"
tag
2020-08-27 12:23:26 -07:00
Mark Roszko
1082402b33
Convert UNDO_REDO_T to an enum class
2020-08-26 18:04:32 +00:00
Seth Hillbrand
731f247eb3
Libedit: conform default pin offset to KLC
...
Move default defines to standard location
Fixes https://gitlab.com/kicad/code/kicad/issues/5373
2020-08-26 10:30:19 -07:00
jean-pierre charras
a97f2fb22a
Eeschema: cosmetic enhancement: add 2 missing icons
2020-08-26 13:00:46 +02:00
ferdymercury
b0af66afc7
Allow empty value field if simulation is disabled
2020-08-26 02:42:50 +00:00
Jon Evans
1d2838bd92
Fix overzealous driver check that was causing false positives
2020-08-25 21:54:14 -04:00
Jon Evans
d40ae3de46
ADDED: ERC check for missing hier labels for sheet ports
...
A subsheet may have more than one instance of a hier label,
but it's generally a mistake if there is no matching hier label
for a port on the parent sheet.
This is harder to do today now that we don't have manual tool
for placing hier ports, but it's still possible if you place
ports but then rename the label on the subsheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/3468
2020-08-25 21:52:52 -04:00
Jon Evans
f50dba6b62
Offer to open annotation dialog when running ERC on unannotated schematic
...
Also improve the error messaging and use an infobar to display it
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2292
2020-08-25 21:17:54 -04:00
Jon Evans
45cae6405d
Improve no-connect ERC and check for floating wires
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2393
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2038
2020-08-25 18:00:16 -04:00
Jon Evans
da17437490
Don't crash when trying to draw a no connect with no parent schematic
2020-08-25 13:26:33 -04:00
Jeff Young
d02ce77bee
Make no-connects (and dangling symbols) more visible.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5329
2020-08-25 13:46:40 +01:00
Jeff Young
1138c32bf3
Don't pass Cancel event where there was a specific action cancelled.
...
For instance, if during a move the user hits ESC they only want the
move cancelled, not (for instance) the selection dropped.
Fixes https://gitlab.com/kicad/code/kicad/issues/5356
2020-08-25 12:54:40 +01:00
Jon Evans
24435fcc62
Don't create new project files when opening boards/schematics
...
Display warning infobar in the board/schematic setup when no project
is loaded, since most of the settings in those dialogs are saved in
the project and not in the board/schematic file.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4868
2020-08-24 22:17:21 -04:00
Jon Evans
5e2946ef90
Use full net names in netclasses
...
Short net names are not unique; full names with paths must be used.
Added a grid cell renderer that does the escaping, to make it easier
to display net names in grid cells.
Once you unescape a net name, you can't go back to the escaped form
because you can't assume which `/` should be {slash} and which `/`
Because of this, we cannot use Unescape/Escape on the data model in
the netclass setup panel, and instead do the Unescape in the view.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5331
2020-08-24 21:19:07 -04:00
Jeff Young
15c136ead2
Make a bunch of help dialogs modeless.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5334
2020-08-24 23:17:33 +01:00
Jeff Young
d5878e552d
Fixes for line, wire and bus styles.
...
1) Return the default netclass if an assignment is not found
2) Local overrides have precedence over netclass values
Fixes https://gitlab.com/kicad/code/kicad/issues/5308
2020-08-24 18:23:55 +01:00
jean-pierre charras
fd4fb61acc
DIALOG_SPICE_MODEL: fix incorrect readonly setting of m_libraryContents.
...
This wxStyledTextCtrl was set to readonly before writing its contents,
so nothing was shown, at least on wxWidgets 3.1.4.
2020-08-24 17:30:36 +02:00
Jon Evans
3673c23696
Code style
2020-08-23 22:10:05 -04:00
Mark Roszko
89e74140eb
Save file / window states for kicad project locally
2020-08-24 02:01:14 +00:00
Ian McInerney
2f7094b352
Cleanup some unused variables
...
* Make the app progress indicator only have the indeterminate state
when the taskbar indicator is used (causes an uused variable warning
on wx<3.1)
* Remove unused dry run variable in pcb_netlist.h
* Remove unused forceDropAnnotations from the paste special dialog
since the dialog only controls keeping them.
2020-08-24 01:51:23 +01:00
Ian McInerney
750b186582
Return the type and shape for alternate pins
...
These return statements were missing from the original implementation,
so the alternate style was never being returned.
2020-08-24 01:18:46 +01:00
Jeff Young
605ddce651
Make sure ERC has a current sheet to resolve text vars with.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5318
2020-08-24 00:49:08 +01:00
Jon Evans
75d813f1bf
Fix gcc-only include
2020-08-23 15:50:16 -04:00
Thomas Pointhuber
a03fb7a9a8
Altium: Refactor and add initial structure for schematic importer
...
altium: move pcbnew/altium2kicadpcb_plugin -> pcbnew/plugins/altium
See: https://gitlab.com/kicad/code/kicad/-/issues/4412
2020-08-23 19:01:08 +00:00
jean-pierre charras
6eab1ce17d
Fix a minor wxWidgets alert.
2020-08-23 15:20:46 +02:00
Wayne Stambaugh
80ee805782
Eeschema: fix broken symbol exclude from BOM support.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5284
2020-08-22 13:44:55 -04:00
Jeff Young
6a5644d981
Make spice model library contents read-only.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5062
2020-08-22 16:20:18 +01:00
Jeff Young
d71d127c1a
Put up infobar when editing board footprint.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5294
2020-08-21 23:53:40 +01:00
Jeff Young
a3a36ed4d6
Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.Disallow text var references in reference designators.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5293
2020-08-21 23:07:56 +01:00
Jeff Young
23c8123ac9
Update a bunch of netlist exporters to resolve textVars.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5285
2020-08-21 22:19:43 +01:00
Jeff Young
65bdaff133
Add include for GCC.
2020-08-21 20:54:36 +01:00
Jeff Young
80846dcbc7
Improve shutdown performance.
2020-08-21 19:12:51 +01:00
Jeff Young
97c34e2516
ADDED alternate pin definitions and assignments.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2002
2020-08-21 18:29:36 +01:00
Seth Hillbrand
7565a08396
eeschema: Add select all to schematic and library editor
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2497
2020-08-20 16:07:10 -07:00
PJM
9cda3dbff5
Eeschema: Verify path can be made relative before asking in plotter dialog
...
CHANGED: When the output path is set in the plotter dialog, the user is
asked if they want to make the path relative to the project. The old
code would ask the user if they wanted to do this, and then if it
failed would present an error dialog. The new code tries it first on
a copy, and only if it works does the user get asked if they want
to do it.
Related to issue https://gitlab.com/kicad/code/kicad/issues/5263 except
that is for Pcbnew, and this fixes the same problem in Eeschema. Issue
5263 is fixed with Merge Request:
https://gitlab.com/kicad/code/kicad/-/merge_requests/370
2020-08-20 17:08:36 +00:00
Wayne Stambaugh
c14065ee98
Fix initial zoom to fit size in schematic and board editors.
...
This may affect other EDA_DRAW_FRAME objects as well but it doesn't seem
to be as noticeable in the symbol, footprint, and worksheet editors.
Fixes https://gitlab.com/kicad/code/kicad/issues/5248
2020-08-20 10:33:30 -04:00
Seth Hillbrand
ee5c991d2f
eeschema: Ensure all wires are joined
...
When running the cleanup routine, we should check that we haven't
changed our lines during the process. If we have, we run again to pick
up the new merges
Fixes https://gitlab.com/kicad/code/kicad/issues/5265
2020-08-20 06:49:05 -07:00
Jeff Young
c5b91c9bb2
Output resolved text to generic BOM XML.
2020-08-20 13:41:49 +01:00
Jeff Young
cb74050d13
Add sheet fields as properties of modules on that sheet.
...
This allows text variables in the module text items to resolve
properly in PCBNew.
Fixes https://gitlab.com/kicad/code/kicad/issues/5005
2020-08-19 13:25:52 +01:00
Ian McInerney
c8917a0951
Cleamup some compiler warnings
2020-08-19 11:35:00 +01:00
jean-pierre charras
b60a7e2aca
Eeschema: fix crash in DIALOG_CHANGE_SYMBOLS when run Update Library Symbols.
...
Probably due to a typo.
Fix also a minor wxWidgets alert in this dialog
2020-08-18 20:53:10 +02:00
Wayne Stambaugh
fb38344e2f
Symbol editor: use C locale for copy and paste.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5223
2020-08-18 14:30:14 -04:00
Seth Hillbrand
a029feb029
eeschema: Add component needs to be Modal
...
Adding a component in eeschema accesses the footprint table as well as
the symbol table. There are no safe edits that can be taken while this
window is open, so we force it to be Modal instead of QuasiModal
The issue is addressed but reveals additional possible problems that
this commit fixes
Fixes https://gitlab.com/kicad/code/kicad/issues/5206
2020-08-18 11:23:18 -07:00
Jeff Young
6ef20e34fc
Better support for mixed styles in Junction Properties dialog.
...
Also move to COLOR_SWATCH to reduce code duplication.
2020-08-18 19:05:30 +01:00
Jeff Young
b0a09b782d
Better support of mixed states in Line Style dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5249
2020-08-18 19:05:30 +01:00
Jeff Young
1558e63c0e
Make local overrides higher priority than netclass widths.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5249
2020-08-18 19:05:30 +01:00
Jeff Young
8a4b7bd9c8
Repair wire-width calculation routine.
...
Netclass handling has been move to GetPenWidth() so it's no longer
just a "1" that we can do a std::max against.
Fixes https://gitlab.com/kicad/code/kicad/issues/5249
2020-08-18 19:05:30 +01:00
Wayne Stambaugh
ede39780e2
Remove all debugging output that cannot be disabled.
...
The use of printf, wxLogDebug, and std::err/std::out causes excessive
debugging output which makes finding specific debugging messages more
difficult than it needs to be.
There is still some debugging output in test code that really needs to
be moved into a unit test.
Add debugging output section to the coding policy regarding debugging
output.
2020-08-18 10:17:36 -04:00
Seth Hillbrand
c2847e00d8
eeschema: Fix crash when rescuing during update
2020-08-18 06:34:34 -07:00
Marek Roszko
1905a23ba1
libedit: fix double msg_panel refresh and use new move event
2020-08-18 13:11:48 +00:00
Marek Roszko
3674064b9e
Fix double msgpanel refresh and use the new moved event
2020-08-18 13:11:48 +00:00
Jeff Young
88d76eaf62
Enforce Apple's destructive button distance guideline.
...
Also fixes a few errant icon buttons that were still setting a fixed
size.
2020-08-17 23:55:31 +01:00
Ian McInerney
4491f24d5e
Ripout the old SyncToolbars infrastructure reminants
...
The tool framework no longer needs to request updates of the UI
state for the controls, wxWidgets will do it for us.
2020-08-16 19:10:26 +00:00
Ian McInerney
fd4388710d
Migrate eeschema, libview and libedit to the UI condition framework
...
Also, fix some issues in other frames identified along the way.
2020-08-16 19:10:25 +00:00
Ian McInerney
3b05d7cddd
Move more frames to the new UI condition framework
...
* Frames moved: cvpcb, cvpcb footprints frame, gerbview, pagelayout editor
This also introduces new EDITOR_CONDITIONS that are used to set the
conditions of very common editor settings.
Also, some IDs were converted to tools in the pagelayout editor.
2020-08-16 19:10:25 +00:00
Ian McInerney
72a1c71e07
Implement a framework to handle wxUpdateUIEvents for tool actions
...
This allows for the tool framework to keep track of a universal
set of conditions for the UI state (enabled/checked/shown) for
controls of actions. It removes the need for the main menubar
menus to be CONDITIONAL_MENUs and be rebuilt on each open,
and instead makes the updates of the check and enabling of
items handled in the native wxWidgets way.
This commit switchs the 3d viewer and kicad project manager window
over to this system.
2020-08-16 19:10:25 +00:00
Ian McInerney
61cdf3436b
Ensure PAINTER::Draw routines properly handle EDA_ITEM casting
...
EDA_ITEM is a child of VIEW_ITEM, so a static_cast is not appropriate,
since in some cases it could be called with a non-EDA_ITEM argument.
This was triggering an ASAN heap-buffer-overflow in GerbView.
2020-08-16 12:37:51 +01:00
Ian McInerney
ade7f529b8
Switch shared_ptr creation to using make_shared
2020-08-16 12:37:50 +01:00
PJM
f58221ca98
Add 'GetBoundingBox' that optionally only calcs w visible fields
...
Cross-probing from Pcbnew to Eeschema revealed that EEschema was
including all fields, visible or not, when calculating the bounding
box of the probed componentt. This caused problems with long strings
such as URLs that were not set as visible. The cross-probing code
tries to minimize 'Zoom to Fit' operations when it's not necessary,
and the overly large bbox values often resulted in zooms not being
performed and components displayed very small.
This code adds a version of 'GetBoundingBox' that takes a boolean
to tell it to include invisble fields or not.
Addresses issue: https://gitlab.com/kicad/code/kicad/-/issues/5149
2020-08-15 22:15:30 +00:00
Jeff Young
57c3d8e8d8
Make sure preview group gets added to view after a clear.
2020-08-15 21:13:44 +01:00
Jon Evans
bd14f8a82a
ADDED: New appearance control widget for PcbNew
...
Featuring:
- Layer view presets
- Per-type opacity for tracks, vias, pads, zones
- Net and netclass color and visibility controls
CHANGED: Simplified object visibilty controls
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1951
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2003
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2173
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2254
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4325
2020-08-15 15:24:28 -04:00
Seth Hillbrand
275e810573
eeschema: Use recursive mutex for SCH_PIN
...
We need to be able to lock individual actions while keeping the code
modular. The recursive mutex keeps this thread-local.
Fixes https://gitlab.com/kicad/code/kicad/issues/5186
2020-08-14 18:42:11 -07:00
Kevin Lannen
e54363524c
lib_manager: Do not make a copy of the parent symbol to save
...
The parent symbol needs to be the same pointer as the symbol that is
saved to the cache otherwise the derived symbol will have it's parent
set to a parent that is not in the cache so it will not be saved.
Signed-off-by: Kevin Lannen <kevin.lannen@gmail.com>
2020-08-14 18:37:44 +00:00
Kevin Lannen
13f9478a76
Symbol Editor: Allow changing parent for derived symbol
...
The symbol editor did not actually update the parent symbol when the
dropdown in the properties editor was changed. This fixes that defect.
Signed-off-by: Kevin Lannen <kevin.lannen@gmail.com>
2020-08-14 18:37:43 +00:00
Jeff Young
2b0b7a5153
Clear pin net-name-driving cache when changing annotation.
...
Also update connectivity after clear annotation, annotate or back
annotate.
Also update status bar for highlighted nets.
Fixes https://gitlab.com/kicad/code/kicad/issues/5170
2020-08-14 12:41:20 +01:00
Jeff Young
cda155ca30
Remove last exposure of GUIDs in UI.
...
Also makes the hierarchical path box bigger so it won't clip on some
themes.
Fixes https://gitlab.com/kicad/code/kicad/issues/5171
2020-08-13 20:59:18 +01:00
Wayne Stambaugh
0bb175a028
Eeschema: Add change and update symbol from library support.
...
ADDED: Add support to to Eeschema to change and update symbols from a
symbol library.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4565
2020-08-13 13:53:49 -04:00
Tomasz Wlostowski
d937fadd6f
Migrate RC_ITEM to use shared_ptr
2020-08-13 14:50:59 +02:00
Jeff Young
e05cd0e914
Raise limit to prevent zooming on cross-probing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5149
2020-08-12 22:28:18 +01:00
Seth Hillbrand
826f81f57d
eeschema: Don't error when replacing references
...
Avoids an unneeded error message when checking the validity of the
replace action
2020-08-12 07:04:51 -07:00
Jon Evans
433616cbf0
Prevent segfault on schematic frame close
...
We are seeing multiple events firing when closing via the manager frame.
Cleaning up the schematic should only happen once.
2020-08-11 18:56:47 -04:00
Ian McInerney
259cacf648
Entries typed into the text size field should be read as mils
...
Previously, they were being interpreted as inches, and then being
displayed as mils - leading to a multiplication by 1000 if there
was no unit string included.
Fixes https://gitlab.com/kicad/code/kicad/issues/5117
2020-08-11 00:14:58 +01:00
Jeff Young
e1c449902d
Ask user before throwing away changes to DRC Rules.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5135
2020-08-10 23:43:24 +01:00
Jeff Young
827138f6b4
Remove left-over debug code.
2020-08-10 14:17:17 +01:00
Jeff Young
f4ab14f32d
Performance improvements for SchematicCleanup().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4563
2020-08-10 12:41:52 +01:00
Ian McInerney
265c6fa3b7
Improve color theme support in the footprint preview widget
...
This ensures the colors used by the status text pane in the preview
widget are the same as the canvas, so there is a seemless transition
between the two.
Additionally, remove the scrollbars from the symbol preview widget
in the place symbol dialog - they are pointless.
2020-08-10 02:29:15 +01:00
Ian McInerney
63f777b620
Fixup the UI for the symbol preview widget
...
This is the proper fix for the symbole preview widget. It will ensure
there are no size changes between the two panels (preview and status),
and also ensure that the status panel has the same background color as
the preview panel.
Fixes https://gitlab.com/kicad/code/kicad/issues/4997
2020-08-10 00:55:36 +01:00
Jon Evans
2fc9c7233d
Add color layer for schematic aux items
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4825
2020-08-09 17:39:52 -04:00
Jeff Young
e910dc0092
Make sure lines/wires/busses get default widths if not spec'ed.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4854
2020-08-09 21:52:36 +01:00
Jon Evans
5abc85aa80
Cleanup re-annotation code style
2020-08-09 12:43:05 -04:00
bjpiccioni
d08bf90576
ADDED: Geographic Reannotation
2020-08-09 12:43:05 -04:00
Mark Roszko
c6e388db14
Implement an app progress indicator in the taskbar
...
ADDED: Progress indicator in the taskbar
This adds a progress indicator to the Windows and macOS taskbar
icons to display the progress of some operations.
Note, this requires wxWidgets 3.1+
2020-08-09 10:55:00 +00:00
Jeff Young
6b7503be8e
ADDED properties passed between eescema and pcbnew.
...
And referencable from textVars.
Fixes https://gitlab.com/kicad/code/kicad/issues/5079
2020-08-08 22:49:04 +01:00
Jon Evans
32a7d00256
Make sure projects are cleaned up nicely when frames close
...
PROJECT objects will be deleted by SETTINGS_MANAGER::UnloadProject
so we need to make sure that this is called at an early enough point
in the closing process that anything needed by the PROJECT dtor
is still around.
Also fix an issue where the schematic worksheet was depending on
the project existing after the schematic had been reset.
2020-08-08 16:52:57 -04:00
jean-pierre charras
111ed6c4ac
Fix simulator: op results are not printed correctly when numbers are very small
...
Was due to an overflow in units calculation.
Fixes #5074
https://gitlab.com/kicad/code/kicad/issues/5074
2020-08-08 15:18:50 +02:00
Jon Evans
dcc484e114
CHANGED: Library editors are now usable with no project loaded
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/3688
2020-08-07 18:02:34 -04:00
Jon Evans
413c2cc2c6
Don't use the schematic grid for page border in pcbnew
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5105
2020-08-07 17:12:21 -04:00
Jeff Young
76bd344730
Preview for PCBNew colour settings editor.
2020-08-06 19:38:06 +01:00
Jeff Young
3522fd0535
Refresh for colour changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4983
2020-08-05 22:56:07 +01:00
Jon Evans
b3b567e591
A better approach to clearing color overrides
2020-08-04 19:50:26 -04:00
Jeff Young
9cc6a77cc0
Fix bug where preview wasn't getting re-added after view cleared.
2020-08-04 20:40:40 +01:00
jean-pierre charras
c01bf9c911
Refinement in NETLIST_DIALOG, spice panel.
...
The run simulator button is enabled only if the command line is not empty.
2020-08-04 13:57:41 +02:00
jean-pierre charras
7f91a1f5da
Eeschema, export netlist dialog: re-add a commane to run spice from this dialog.
...
Fixes #5025
https://gitlab.com/kicad/code/kicad/issues/5025
2020-08-04 12:52:14 +02:00
Jeff Young
be6e2e6308
Add hierarchical sheet (and pin) to color preview.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5029
2020-08-04 11:45:07 +01:00
Jeff Young
9c9fdb2569
More performant (and more correct) deletion of DRC markers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5057
2020-08-04 11:45:07 +01:00
jean-pierre charras
5982626a80
Eeschema: fix a minor wxWidgets alert.
...
Fixes #5066
https://gitlab.com/kicad/code/kicad/issues/5066
2020-08-04 08:27:31 +02:00
Jeff Young
dcd02539e3
Remove linked-pin processing from LIB_PIN's setters.
...
It belongs in the tool layer (specifically LIB_PIN_TOOL).
2020-08-03 22:21:35 +01:00
Jeff Young
c56599ab07
Allow ERC/DRC markers to be deleted without deleting exclusions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4953
2020-08-02 22:45:48 +01:00
Jeff Young
f3b92903e2
Evidently the sheet client list isn't kept up-to-date.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5021
2020-08-02 19:58:15 +01:00
Jeff Young
ee6acb983a
Build out the rest of the schematic preview for colors editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5029
2020-08-01 21:07:14 +01:00
Jeff Young
d586495c0a
Preview fp edges & text while dragging in router.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5037
2020-08-01 15:40:34 +01:00
Jeff Young
e86fc64e7d
Check envvars as well before flagging as un-resolved.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4644
2020-08-01 00:24:26 +01:00
Jeff Young
173493b1a8
Try to store the actual sheet #, but don't store 1 for non-root sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5021
2020-07-31 22:29:05 +01:00
Jeff Young
5f3fd43b29
Fix uninitialized variable.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4948
2020-07-31 17:19:21 +01:00
Jeff Young
1be39195ab
Remove UUIDs from the GUI.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5018
2020-07-31 16:06:54 +01:00
Jeff Young
047e95ccc4
Fix crash on Preferences > Colors.
2020-07-31 12:04:01 +01:00
Jeff Young
4c5fe7e651
Only update relative paths in nested subsheets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4366
2020-07-31 12:04:01 +01:00
Jeff Young
310613a941
Pin junction dot size to no less than 170% of wire width.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4917
2020-07-30 20:04:12 +01:00
Jeff Young
0804f487ec
Add text var cross-reference processing to SCH_FIELDs.
2020-07-30 14:27:42 +01:00
Jeff Young
cdaa866428
Put UUID on own line.
2020-07-30 14:27:42 +01:00
Seth Hillbrand
0a4ce183a4
ADDED: polygon newlines every point
...
By default KiCad will now print each polygon point on its own line.
This adds to the vertical distance for large polygons but makes revision
control much cleaner as single point addition to a polygon does not
propagate to a diff over the full polygon.
Users/developers who want to save the files using the 4-points per line
have the ADVANCED_CONFIG setting 'CompactSave' which will provide the
original save method
2020-07-30 01:18:44 +00:00
Jon Evans
b0c6a0f9ef
Allow sheet colors to remain unspecified if not manually set
...
This way, when the user changes their color theme, any sheets
that did not have a specific color set will change with the theme.
Also add a button to clear color overrides from a sheet, because
any schematics that have been saved before this change will have
the colors set to something other than UNSPECIFIED.
2020-07-29 21:16:07 -04:00
jean-pierre charras
98b1f55e29
Eeschema: minor fixes: fix incorrect label in DIALOG_LIB_EDIT_PIN, electrical pin list.
...
Gives also to functions GetText() and GetBitmap() a more significant name.
Fixes #5007
https://gitlab.com/kicad/code/kicad/issues/5007
2020-07-29 17:04:52 +02:00
jean-pierre charras
f00c59c446
Fix a few Coverity warnings.
2020-07-29 09:26:57 +02:00
Marek Roszko
9278660b10
Add support for the windows application restart api
2020-07-28 14:32:39 -04:00
Jeff Young
55784afbfe
Allow text variables to reference parent sheet's fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2466
2020-07-28 13:35:37 +01:00
jean-pierre charras
039b6fd5cf
Eeschema plot: do not plot the hierarchy sheet symbol background in B&W mode.
...
if the the hierarchy sheet symbol background is not white, in B&W mode it is black,
and texts are not readable.
Fixes #4987
https://gitlab.com/kicad/code/kicad/issues/4987
2020-07-28 10:13:56 +02:00
Jeff Young
b74e125264
Read/write schematic netclass properties.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4990
2020-07-27 23:10:46 +01:00
Jeff Young
4479fcc6dc
Give HardReset() a better chance of success.
2020-07-27 21:55:08 +01:00
Jeff Young
97964b2a4c
Use netclass colour for junction dots and when printing/plotting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4986
Fixes https://gitlab.com/kicad/code/kicad/issues/4982
2020-07-27 21:47:05 +01:00
Jeff Young
8a9fa53cd7
Clear annotations by default on copy/paste.
...
Folks didn't seem to like the "only clear when there are collisions"
behaviour. Paste Special remains available to "force keep".
Fixes https://gitlab.com/kicad/code/kicad/issues/4933
Fixes https://gitlab.com/kicad/code/kicad/issues/4744
2020-07-27 19:53:42 +01:00
Mark Roszko
8324cb30b7
Save the wxDisplay index to set the position of windows correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4338
2020-07-27 02:53:56 +00:00
Mark Roszko
7bdb98f961
libedit: Make context menu follow context
2020-07-26 20:16:38 +00:00
Jeff Young
864087890b
Fix typo assuming new field value was always the name.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4936
2020-07-22 15:10:54 +01:00
Jon Evans
9a801d8b72
Don't disrupt diff pairs when auto-renaming buses
...
With bus groups we can use the prefix to disambiguate
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4916
2020-07-20 20:41:56 -04:00
Fabien Corona
a1437f4a95
Eeschema : Add A5 sheet size
2020-07-21 00:00:36 +00:00
Jeff Young
095937563b
Hook libeval compiler up to rule parser
...
- convert expression string tokens to single-quote-delimited
- fix bug where netclass assignments weren't getting updated after
board setup dialog
- move property manager rebuild to lazy evaluation
- improve performance with wider use of const&
- retire DRC_SELECTOR stuff
- use wxString for GUI stuff (particularly translated stuff)
- fix EqualTo() to return false instead of asserting when op types
don't match
- fix buffer overruns with fixed-size string buffers
- make expression function calls case-insensitive
- integrate expression errors into rule parser
- produce more and better error messages
- keep BOARD_ITEM ptrs const as long as possible
- fix a couple of uninitialized variables
2020-07-20 22:11:53 +01:00
Mark Roszko
3b727b5d16
Make preference groups not selectable
2020-07-20 13:45:46 +00:00
jean-pierre charras
1d450adfdf
Eeschema: fix crash when trying to save as a library in a non writable folder.
...
The crash was due to a non caught thrown error.
Fixes #4914
https://gitlab.com/kicad/code/kicad/issues/4914
2020-07-19 18:27:19 +02:00
Ian McInerney
ae45c08ce4
Fix label creation for new netname driven from a pin
...
LIB_PIN is never used in the connectivity calculation,
so it should use SCH_PIN instead. Additionally, the label
orientation should take into account the orientation of
the component to ensure they don't overlap.
2020-07-19 01:52:34 +01:00
Ian McInerney
50b2271f84
Fix missing variable initialization
2020-07-18 23:56:39 +01:00
Jeff Young
1e9d947598
Save MRU path when doing a library Save As....
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4910
2020-07-18 15:26:11 +01:00
Ian McInerney
cc688a3e1d
Initialize variables properly
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4919
2020-07-18 00:36:47 +01:00
Jeff Young
3fd0a3f842
Update text variables even when they're changed from other binary.
...
For instance, you might have PCBNew open but change the variable
value through EEschema > Schematic Setup.
Fixes https://gitlab.com/kicad/code/kicad/issues/4918
2020-07-17 21:05:11 +01:00
Jeff Young
33480ecad1
Show all symbol libraries by default.
...
Also fixes an issue where the plugin wasn't getting reset if the
library type was changed.
2020-07-17 18:33:14 +01:00
Jeff Young
944c9eac7c
Allow Update Schematic from PCB to re-link based on refdes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4306
2020-07-16 18:32:49 +01:00
jean-pierre charras
6296b4e20b
Kicad manager: create a minimal .kicad_pro file when creating a project from scratch.
...
Fixes #4889
https://gitlab.com/kicad/code/kicad/issues/4889
2020-07-16 11:31:39 +02:00
Wayne Stambaugh
0ab8b9a2d9
Symbol editor: fix assertion attempting to copy an inherited symbol.
...
Copying or cutting an symbol to the clipboard using the context menu
in the library tree requires a root symbol. Inherited symbols must
be flattened in order to properly be added to a symbol library.
Fixes https://gitlab.com/kicad/code/kicad/issues/4901
2020-07-15 20:57:34 -04:00
Jeff Young
11ca21039a
Clear new flag when creating image pins.
...
Otherwise if you then move it we'll think it needs to be inserted
and end up with a circular drawings list.
Fixes https://gitlab.com/kicad/code/kicad/issues/4622
2020-07-16 01:39:29 +01:00
Jeff Young
e8079bf655
Make sure UI gets adjusted for Symbol property changes.
...
For instance, if the number of units is changed from 1 to not-1
or vice versa then we need to rebuild the units selector.
Fixes https://gitlab.com/kicad/code/kicad/issues/4622
2020-07-16 01:39:29 +01:00
Wayne Stambaugh
729dc75396
Symbol editor: fix copy/cut and paste bug.
...
Use the s-expression symbol library file format for copy/cut to clipboard
instead of legacy symbol file format when using the library tree context
menu copy and cut entries. Also use s-expression file format for parsing
clipboard contents using the context menu.
Fixes https://gitlab.com/kicad/code/kicad/issues/4900
2020-07-15 20:23:10 -04:00
Ian McInerney
af729d578f
Unify settings reset buttons into one location
2020-07-16 00:08:16 +01:00
Jeff Young
19d0899a80
Fix previous botched attempt to deal with duplicate field ids.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4821
Fixes https://gitlab.com/kicad/code/kicad/issues/4891
2020-07-15 13:51:12 +01:00
Jeff Young
1dc804232c
Fix issue with duplicate field IDs getting saved out.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4821
2020-07-14 16:00:38 +01:00
Seth Hillbrand
7f991ce855
Revert "Set DoubleBuffering to reduce flicker"
...
This reverts commit 106259f6e6
.
2020-07-13 20:23:12 -07:00
Seth Hillbrand
e19a7910f8
Revert "Revert "Set DoubleBuffering to reduce flicker""
...
This reverts commit c18cab6154
.
2020-07-13 20:19:10 -07:00
Jeff Young
dd61f6f019
Use pin graphic only for rubber-band selection hit-testing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4138
2020-07-13 22:41:56 +01:00
Jeff Young
1cd2a51db2
Make undo/redo lists protected.
2020-07-13 15:53:36 +01:00
Jeff Young
fa9937701f
Undo for Edit Component's LibId.
2020-07-13 14:16:21 +01:00
Jeff Young
7340c97ef9
Undo for schematic-wide operations.
...
Editing value/footprint fields of multi-unit components.
Find/Change.
Annotation.
Back annotation.
Fixes https://gitlab.com/kicad/code/kicad/issues/2122
Fixes https://gitlab.com/kicad/code/kicad/issues/4869
Fixes https://gitlab.com/kicad/code/kicad/issues/3933
Fixes https://gitlab.com/kicad/code/kicad/issues/4871
Fixes https://gitlab.com/kicad/code/kicad/issues/3899
2020-07-13 12:32:17 +01:00
Seth Hillbrand
9f09c3872f
Ensure file reads always use the C-locale variant
...
Str2Double assumes current locale. We usually switch the locale when
reading files but we should be using the function that explicitly gets
the C-locale conversion.
2020-07-12 20:03:50 -07:00
Jon Evans
a2041073ee
Skip project backup in standalone mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4867
2020-07-12 11:42:05 -04:00
Jeff Young
9b92b275de
Remove vestiages of old open-PCB-for-settings hack.
...
We used to have to open a PCB_EDIT_FRAME to get the settings for
the footprint editor and footprint viewer. This necessitated some
special processing when opening a PCB_EDIT_FRAME to actually edit
a board as it might already be open but unloaded.
Since the new settings architecture allows the footprint editor and
footprint viewer to init themselves we no longer need the special-
case code.
2020-07-11 21:19:49 +01:00
Jeff Young
e325d2e18f
Allow Net Inspector to create, rename and delete nets.
...
ADDED: create/edit/delete nets in PCBnew Net Inspector
ADDED: update from PCB now allows updating of changed nets
Fixes https://gitlab.com/kicad/code/kicad/issues/1996
2020-07-11 21:19:49 +01:00
Seth Hillbrand
c18cab6154
Revert "Set DoubleBuffering to reduce flicker"
...
This reverts commit 106259f6e6
.
In its place, we set double buffering to only menubars in an attempt to
find a soluton to #4785
Fixes https://gitlab.com/kicad/code/kicad/issues/4863
2020-07-11 09:43:30 -07:00
Seth Hillbrand
106259f6e6
Set DoubleBuffering to reduce flicker
...
This sets double buffering for GTK and MSW to minimize flicker when
redrawing window elements.
Fixes https://gitlab.com/kicad/code/kicad/issues/4785
2020-07-10 09:29:42 -07:00
Jon Evans
4a5792cb87
Fix bus unfolding in the wake of bus entry changes
...
Since bus entry shape is not a thing anymore,
unfolding routine can be simplified to just use size
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4853
2020-07-09 18:51:42 -04:00
Jon Evans
66bdd37637
Connectivity optimizations
...
Cache names of potential driving items
Change a few data structures based on profiling
2020-07-09 18:14:37 -04:00
Jon Evans
fc92fb076e
Cache sheet path to string conversion in UpdateSymbolInstances
...
Profiling of large designs (with many hierarchical sheets)
showed that this can be a huge (4x) speed up to schematic
loading times.
2020-07-09 18:14:37 -04:00
Jon Evans
b1b9cef5fb
Full-project automatic backup system
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4763
2020-07-09 13:55:19 +00:00
Jon Evans
282fcd5f3c
Connectivity optimizations
...
Don't copy the recursion test cache when copy-constructing
SCH_SHEET_PATHs as it's not needed in connectivity
Fix a few places that were copying unnecessarily
2020-07-08 17:42:12 -04:00
Jeff Young
741481591e
NetClass settings for Eeschema.
...
ADDED Eeschema-specific netclass settings including wire and bus
thickness, color, and line style.
Netclasses override individual wire & bus colors and line styles.
If that proves an issue we might look at something more sophisticated
with inheritance.
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-08 21:23:25 +01:00
Jeff Young
d292db866a
Fix mismatch between dialog and code.
...
(The code was updated to use INDETERMINATE_ACTION, but the dialog
wxChoice still specified an entry of "...". This moves both to the
code so it's harder for them to get out of sync.)
2020-07-08 19:31:44 +01:00
Wayne Stambaugh
41dd31babf
Symbol editor: fix unnecessary "Save As..." prompt.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4818
2020-07-08 14:06:10 -04:00
Ian McInerney
37ce9fb847
Tell wx that we really want a transparent background
...
Try more options for telling wxWidgets that we want the area
to have a transparent background. Also, fix some spacing issues.
Fixes https://gitlab.com/kicad/code/kicad/issues/4842
2020-07-08 16:29:04 +01:00
Wayne Stambaugh
4c383c51fa
Eeschema: add update symbol from library command to context menu.
...
Rather than displaying dialog that has every update option possible like
updating footprints in the board editor, this change updates the library
symbol immediately using the symbol library identifier and requires no
additional input from the user.
ADDED: Context menu entry for schematic symbols to update the symbol from
the symbol library using the existing library identifier.
2020-07-08 10:15:24 -04:00
Jon Evans
7f1e1a4abb
Fix missing pin table visible columns setting
...
This got missed in the settings merge
2020-07-07 20:59:55 -04:00
Jon Evans
788f31d743
Fix import of Eagle schematics
...
Old project needs to be unloaded before schematic is reset,
then new project has to be loaded before doing the import
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4836
2020-07-07 20:48:32 -04:00
Ian McInerney
908377f9c4
Remove incorrect factor of 2 scaling
...
This was a copy-paste error that caused the junction dots
to be twice as small as they should be.
Fixes https://gitlab.com/kicad/code/kicad/issues/4834
2020-07-08 01:45:11 +01:00
Ian McInerney
c6eb072726
eeschema: Fix cutoff text in pinmap
...
Ensure the proper bounding box is used when computing the amount
of space taken by angled text in the control.
Fixes https://gitlab.com/kicad/code/kicad/issues/4761
2020-07-07 23:12:17 +01:00
Ian McInerney
f481be3358
Set a proper default for the schematic junction size
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4834
2020-07-07 23:12:17 +01:00
Ian McInerney
ccc0ceb32f
Remove deleted item global variables
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4819
2020-07-07 23:12:17 +01:00
Seth Hillbrand
7cea4b23f1
ADDED: Expand selection in context menu
...
Break out the context menu with heuristically limited choices being
appended to the main list rather than re-selecting
Fixes https://gitlab.com/kicad/code/kicad/issues/4799
2020-07-07 14:18:35 -07:00
Jon Evans
84b02e51f1
Fix overly aggressive ERC check
...
It helps to only check for the pintypes I care about
2020-07-07 17:08:07 -04:00
Jeff Young
358cccfd73
A bit of safety if realtime connection updating isn't on.
2020-07-07 14:45:14 +01:00
Jeff Young
e66523586b
Add Assign Netclass... to context menu.
...
ADDED Assign Netclass feature to EEschema.
Netclass assignments also now shown in status bar.
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-07 14:23:39 +01:00
Jon Evans
d8be5f9ecf
Don't allow pins with NC electrical type to join other nets
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1826
2020-07-06 20:27:38 -04:00
Jon Evans
23ce2d2e36
Re-add missing include
2020-07-06 19:47:07 -04:00
Seth Hillbrand
66f38dfc10
Remove assert that fires in normal operation
...
The missing symbol happens normally when the user does not have their
cache file available. This should not be an assert
2020-07-06 14:37:03 -07:00
Jon Evans
0410fdd9fb
Push a few missed project settings out of the frame
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4823
2020-07-06 17:30:27 -04:00
Jeff Young
3939b31027
Integration of netclasses into Eeschema.
...
This is mostly architecture, with the hookup of the Schematic Setup
dialog's Net Classes page. Things like assigning to a net on the
canvas to follow.
Fixes https://gitlab.com/kicad/code/kicad/issues/2132
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-06 20:00:50 +01:00
Jeff Young
b917e9aa72
Implement import from... for pin conflicts map.
2020-07-06 20:00:50 +01:00
Jeff Young
b0ca7d5140
Netclass setup for Eeschema.
...
ADDED netclass panel in Schematic Setup dialog.
Fixes https://gitlab.com/kicad/code/kicad/issues/2132
2020-07-06 20:00:50 +01:00
Tomasz Wlostowski
c1d5394e46
properties: post-rebase fixes
2020-07-05 22:44:38 +02:00
Jeff Young
509cd8f495
Remove duplicate fix not found by merge.
2020-07-05 21:01:19 +01:00
Jeff Young
ec6c1b80b7
Fix a couple of bugs in the CurrentSheet architecture.
2020-07-05 19:53:04 +01:00
Jon Evans
e9b99cc8b7
Fix grabbing connections from power components
2020-07-04 20:59:35 -04:00
Jon Evans
04a51a5ba4
Push current sheet handling to SCHEMATIC
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4803
2020-07-04 20:59:35 -04:00
jean-pierre charras
9e669db5b4
Eeschema: fix a name collision with a Windows header.
...
the member ERROR of the class PIN_ERROR was colliding: changed to PP_ERROR
2020-07-04 17:51:00 +02:00
Jon Evans
d143e14694
Fix memory leaks in color theme editor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4794
2020-07-03 22:34:41 -04:00
Jon Evans
f725248fd8
Fix ERC pin checking logic
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4577
2020-07-03 17:51:20 -04:00
Jon Evans
b94e29e3b1
Persist ERC pin table in project settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2066
Also a partial fix for https://gitlab.com/kicad/code/kicad/-/issues/4577
2020-07-03 17:11:42 -04:00
jean-pierre charras
cf38d382c7
Eeschema: ensure the netlist data is up to date before generating the netlist
...
Fixes #4779
https://gitlab.com/kicad/code/kicad/issues/4779
2020-07-03 21:08:38 +02:00
Jon Evans
0201cb4e7e
Fix schematic reload in standalone mode
2020-07-03 10:43:23 -04:00
Jon Evans
05771f74f7
Fix netlist QA test
2020-07-03 08:21:19 -04:00
Jon Evans
1c72042fc4
Clean up stale nested settings when changing project pointer
2020-07-02 23:55:46 -04:00
Jon Evans
498fa8d8ba
Fix some things about template fieldname synchronization
2020-07-02 23:42:36 -04:00
Jon Evans
4dbbe1cf68
Project settings fixes from review
...
- Fix file extension for new project
- Fixes for exceptions on MSW
- Fix some ASAN issues
- Allow SETTINGS_MANAGER to run headless
- Don't flag schematic as modified after schematic setup is closed
- Don't automatically unload projects when LoadProject is called
- Don't unload project if it's the same as the current one
- Make sure to properly init/de-init template field names
2020-07-02 22:08:54 -04:00
Jon Evans
fe5959b625
Remove the schematic and board backup file system
...
Per discussion on the developers list, this old system
no longer provides much value and is seen as annoying
by many users. The new save logic should prevent any
cases of file corruption on save, which was a major
reason for the backup file system existing.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2012
2020-07-02 22:08:54 -04:00
Jon Evans
12b4a55ae8
Port Eeschema to new project settings
...
DRC/ERC error serialization changed to use explicit tokens
Old stored severities and ignored errors are discarded
2020-07-02 22:08:54 -04:00
Jon Evans
c0aa6965de
Migrate PcbNew project settings to new framework
...
Various architecture upgrades to support this.
Creating a BOARD now requires a valid PROJECT, which caused
some (mostly transparent) changes to the Python API internals.
ADDED: Project local settings file
CHANGED: Board design settings are no longer stored in PCB file
CHANGED: Net classes are no longer stored in PCB file
CHANGED: Importing board settings now reads boards, not just projects
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2578
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4070
2020-07-02 22:08:54 -04:00
Jon Evans
0e2f9cb1bd
Migrate CvPcb project parameters
2020-07-02 22:08:54 -04:00
Jon Evans
a4fadfcdf2
Begin moving project file load to new system
2020-07-02 22:08:54 -04:00
Jon Evans
a7708fa6dc
Add PROJECT_FILE and basic load/unload methods
2020-07-02 22:08:54 -04:00
Ian McInerney
f7156a9d49
eeschema: Only warn user about off-grid pins if the position has changed
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4673
2020-07-03 02:11:47 +01:00
Jeff Young
e91acfb67b
Correct SHEETNAME validation exclusions which were for SHEETFILENAME.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4748
2020-07-02 21:38:37 +01:00
Jeff Young
7b042f4a75
Add rectangle tool to PCBNew toolbar in favour of Aux Origin.
...
ADDED new rectangle graphics tool for PCBNew and Footprint Editor.
Also adds rectangle tool to both Footprint Editor and PCBNew Place
menus.
The Aux Origin tool can come back once we have multi-select toobar
buttons.
Also collapses an unnecessary level out of the auxOrigin and gridOrigin
settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/2246
2020-07-01 13:31:30 +01:00
Jeff Young
6d56ba2072
Minor cleanup to edit label dialog.
2020-06-30 19:55:04 +01:00
Jeff Young
61b5a12362
Don't allow component & sheet field IDs to collide.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4748
2020-06-30 19:17:28 +01:00
Ian McInerney
bb1afb747a
Remove bus entry shape
...
The shape isn't needed anymore, since bus entries can be rotated
and mirrored like other items.
Fixes https://gitlab.com/kicad/code/kicad/issues/4588
2020-06-30 02:09:33 +01:00
Jon Evans
8a0277eb2e
Fix null graph in some connections
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4747
2020-06-29 20:27:08 -04:00
Seth Hillbrand
67bd49b4a8
Fix order-of-ops issue in sim plot
2020-06-27 19:59:49 -07:00
Jon Evans
bd19c580f4
Add configuration for cross-probing behavior
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2317
2020-06-27 22:48:48 -04:00
Jeff Young
6acd35c981
Cleanup.
2020-06-27 20:07:26 +01:00
jean-pierre charras
0f0627a53e
Eeschema: add 4 new zoom levels (0.1, 0.15, 0.2, 0.3) in context menu.
...
However, to see them in context menu, the old eeschema.json
config file must be deleted, because it contains the list of allowed zooms.
2020-06-27 20:35:54 +02:00
Jeff Young
32c3ea4edd
Flags cleanup.
...
Remove extraneous use of FLAG0 from tracks cleaner (it was checked but
never set).
Fix issue in expand connections where two parts of it couldn't agree
on the same flag (BUSY vs SKIP_STRUCT), and where the second part was
clearing the flag instead of setting it.
Remove obsolete HIGHLIGHT infrastructure (we now use selection).
Remove extraneous use of BUSY flag in several places (it was never
set).
2020-06-27 17:53:04 +01:00
Ian McInerney
fb10406e67
Add right-click context menus for toolbar items
2020-06-26 21:29:03 +00:00
Ian McInerney
52856a8ce4
Move scaled toolbar separator into ACTION_TOOLBAR
...
* Ensure all separators are scaled separators
* Clean up toolbar creation functions
2020-06-26 21:29:03 +00:00
Wayne Stambaugh
2078e629c5
Eeschema: allow editing of junction properties diameter and color.
...
Add missing plot and print changes for the new bus entry properties.
ADDED: Junction properties diameter and color can now be edited.
Fixes: https://gitlab.com/kicad/code/kicad/issues/4593
2020-06-24 13:36:17 -04:00
Wayne Stambaugh
853cf2c9b9
Eeschema: make bus wire entry properties editable.
...
CHANGED: Bus to wire entry object properties line color, width, and style
can now be edited.
Fixes: https://gitlab.com/kicad/code/kicad/issues/4591
2020-06-24 13:36:17 -04:00
Wayne Stambaugh
b15ee1086f
Eeschema: factor out line stroke property object.
...
The line stroke property object STROKE_PARAMS was factored out an used in
the schematic line object. This will allow it to be used in other objects
that require line stroke properties so every object does not need to have
it's own definition for line stroke properties.
2020-06-24 13:36:17 -04:00
Tormod Volden
e82e30d215
bom2grouped_csv.xsl: Fix sorting of grouped references
...
Commit a96ebe8f
seems to have missed a dollar sign.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/940
hopefully for good this time.
Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
2020-06-23 15:48:59 +02:00
Jon Evans
158f6ad526
Fix net highlighting
2020-06-22 12:02:58 -04:00
Jon Evans
40e0a4295d
Re-add netlisting logic inadvertently removed during refactor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4692
2020-06-21 21:43:24 -04:00
Jon Evans
202b55f4d2
Plot sheet background colors if present
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4697
2020-06-21 20:43:47 -04:00
Jon Evans
09cb75b8a1
Use a temporary file when saving boards/schematics to make the operation more atomic
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4517
2020-06-19 23:31:26 +00:00
Jon Evans
dd42a19319
Prevent grid axes from inadvertently turning on in eeschema
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4680
2020-06-19 17:22:25 -04:00
Jon Evans
6d2f30005e
Don't blow up the sheet path when selecting an ERC item
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4685
2020-06-19 17:00:41 -04:00
Jeff Young
ee9d8fcd15
Collapse Pcbnew & ModEdit display and edit settings.
...
(Prep work for reusing them with a custom shape editor.)
2020-06-18 15:38:01 +01:00
Jon Evans
15b95f2980
Fix project references in eagle importer after SCHEMATIC object
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4672
2020-06-17 17:30:24 -04:00
Jeff Young
a7703d1207
Cleanup Graphics to parallel Cleanup Tracks & Vias.
...
This also allows for easier migration to DRAWSEGMENT::S_RECTs by
auto-converting 4 rectilinear lines to a rectangle.
2020-06-17 18:44:39 +01:00
Seth Hillbrand
4480759599
Remove unused variable
2020-06-15 12:40:02 -07:00
Jeff Young
ad12c42e8b
Push grid settings dialogs down into common.
...
This also gives support for fast grid switching and a user grid
to eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/2200
2020-06-14 19:26:37 +01:00
jean-pierre charras
a8d5d9b690
panel lib tables: avoid crash when deleting the last entry in list.
2020-06-14 17:39:32 +02:00
Jeff Young
e16426987a
Fix wxWidgets alert on integer overflow.
2020-06-13 22:44:16 +01:00