Jon Evans
0463fc4c2b
Fix several bugs and refactor schematic saving
...
Having the logic split between three different paths was
a bit much, this should hopefully be a bit easier to
maintain. All save logic now goes through SaveProject;
individual file writing is now a private function.
Also change Save As to Save Copy As in project manager
mode, as we don't want to change projects from inside
the editor in project manager mode.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9015
2021-08-23 23:01:08 -04:00
jean-pierre charras
4ac2aa675a
lib symbols: make fp filter tolerant to spaces in names.
...
For historical reasons they are stored in a string using spaces as separators.
So each fp filter is now escaped to remove spaces (replaced by {space})
Fixes #9009
https://gitlab.com/kicad/code/kicad/issues/9009
2021-08-23 18:01:31 +02:00
jean-pierre charras
9f22baf109
netlist xml exporter: fix incorrect keyword change (field was changed to f)
...
Keywords cannot be changed without a very good reason. the keyword is now field.
Fixes #9016
https://gitlab.com/kicad/code/kicad/issues/9016
2021-08-23 17:14:45 +02:00
Jeff Young
3bddadc03d
Fix a typo in reference clearing.
...
Also fixes an unrelated bug where all values/footprints were getting
reset rather than just the instance versions.
Fixes https://gitlab.com/kicad/code/kicad/issues/8891
2021-08-22 19:55:20 +01:00
Jeff Young
7561715ffe
Unescape symbol fields going out to XML netlist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8995
2021-08-21 22:03:24 +01:00
Jon Evans
0814219513
Clean up some handling of project files in standalone
...
Add control of project creation to Eeschema; change defaults
to enable project creation in both programs. Properly set
project on newly-created schematics so "Save As" doesn't
get triggered repeatedly.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9000
2021-08-21 12:09:21 -04:00
Jon Evans
4da0c897bc
Fix flagging power pin in ERC check
...
IsPowerConnection() is too restrictive a check
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8881
2021-08-21 11:19:09 -04:00
Mikolaj Wielgus
44ea3a75f2
Simulator: Use last workbook path stored in .kicad_pro as initial path in dialogs
...
Previously this was done using a static variable, which was not loaded
from .kicad_pro on simulator launch, causing unexpected behavior
Fixes https://gitlab.com/kicad/code/kicad/issues/8799
2021-08-20 23:23:23 +00:00
Wayne Stambaugh
1d8fd22cd8
Symbol editor: fix message panel units when selecting from combo box.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8991
2021-08-20 15:45:57 -04:00
Sylwester Kocjan
eefac5cc59
eeschema: fix in populating DC sim settings tab
...
When filling drop-down list with sources, previous selection should be
saved in local variable and restored if it is still available.
2021-08-20 19:23:13 +00:00
Sylwester Kocjan
691b53d125
eeschema: add missing virtual destructors
2021-08-20 19:23:13 +00:00
Seth Hillbrand
bee3d78d78
Limit Eeschema find/replace entries
...
Standardize maximum find/replace entries to 10
Fixes https://gitlab.com/kicad/code/kicad/issues/9007
2021-08-20 11:48:02 -07:00
Seth Hillbrand
75e4fa9b75
Handle multiple annotation in search
...
New schematic format needs to search client screen paths instead of
maintaining multiple copies in a flat format.
2021-08-20 10:24:08 -07:00
Seth Hillbrand
6470be11c3
Add clarifying comments to EE_RTREE ordering
2021-08-20 08:49:43 -07:00
Seth Hillbrand
729ba1e301
Ensure deterministic Find/Replace ordering
...
Sorts first by x and then by y when returning search order
Fixes https://gitlab.com/kicad/code/kicad/issues/8972
2021-08-20 08:42:06 -07:00
Seth Hillbrand
09be1a8c78
Ensure sheets are deterministically sorted
...
Even if a sheet exists at the same x/y coordinate as another, the sort
needs to ensure a deterministic ordering
2021-08-20 08:31:01 -07:00
jean-pierre charras
13083c80c2
Eeschema, dialog Find: do not force a position on screen when reopen dlg.
...
The last position will be used.
Fixes #8969
https://gitlab.com/kicad/code/kicad/issues/8969
2021-08-19 15:40:38 +02:00
Jeff Young
dfacac5eb6
Repair label incrementer to handle formatting constructs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8992
2021-08-19 00:08:37 +01:00
Jeff Young
9549a227ad
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8993
2021-08-18 23:38:11 +01:00
Jeff Young
8879b887df
Fix missing overbar notation conversions in legacy library parsing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8981
2021-08-18 22:48:29 +01:00
Wayne Stambaugh
46b959c3e3
Move plotter headers into include folder.
2021-08-18 16:38:31 -04:00
Wayne Stambaugh
6427197962
Remove duplicate headers in plot and associated code.
2021-08-17 15:41:25 -04:00
Jeff Young
fc4d748bdc
Fix bugs in sheets.
...
1) Default_line_width is in mils, not IU.
2) Plot sheet fields.
Fixes https://gitlab.com/kicad/code/kicad/issues/8984
2021-08-17 13:21:52 +01:00
jean-pierre charras
8c9b0bdba4
Eeschema: plot missing sheet fields.
...
Fixes #8984
https://gitlab.com/kicad/code/kicad/issues/8984
2021-08-17 13:30:23 +02:00
Jeff Young
dd24502255
Clean up (yes, yet again) the default pen width handling.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8980
2021-08-17 11:59:50 +01:00
Jeff Young
41619ebbe2
Decouple PROGRESS_REPORTER interface from implementations.
2021-08-14 21:05:49 +01:00
Jeff Young
1818846cff
Minor improvements to some error messages.
2021-08-14 12:11:47 +01:00
Stefan
bed51a5fc1
altium schematic importer, replace record 211 with compile masks
2021-08-14 11:05:56 +00:00
jean-pierre charras
08d7899f7e
Rework on hint to user when pin scope control has no effect or unexpected result.
...
A info banner is now shown (in synchronized mode) to inform an user when extra
pins are added to other units when a new pin is added.
A good info about the synchronized mode is not easy to create.
2021-08-14 10:21:25 +02:00
Jon Evans
766b67a8f1
Tune selection of wire endpoints near other objects
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8941
2021-08-12 22:04:24 -04:00
Jon Evans
7075aece3a
Hint to user when pin scope control has no effect
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8907
2021-08-12 21:19:27 -04:00
Jeff Young
fbb3f4b58d
Escape names when migrating legacy libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8951
2021-08-12 22:07:57 +01:00
Wayne Stambaugh
04c6b79350
Eeschema: remove unused and unnecessary code.
...
When swapping SCH_SYMBOL objects during undo, no special processing is
required. The SCH_PIN objects are updated when the LIB_SYMBOL objects
are swapped and the call to SCH_SCREEN::SwapSymbolLinks() didn't do
anything.
2021-08-11 14:30:29 -04:00
Jeff Young
c536a4c4f2
Work around annoying wxWidgets assert.
2021-08-10 16:51:30 +01:00
Jeff Young
6eb59b9d9e
Dialog naming conventions.
2021-08-06 20:54:26 +01:00
jean-pierre charras
76bdb423d7
Minor changes: minor code cleanup and fix minor Coverity warning
2021-08-04 16:47:41 +02:00
Jeff Young
48e0f68c7e
Improve ease-of-use of color preferences.
2021-08-04 13:55:42 +01:00
Jeff Young
95b87ba29a
Freshen microwave polygon dialog and remove a bunch of dead code.
2021-08-03 01:11:11 +01:00
david-beinder
c34f45f646
Split global label size expansion from TextOffset setting
...
Global label expansion ratio default is now 37.5%
Wire text offset default is now 15%
2021-08-02 16:40:36 +00:00
david-beinder
bab13debcb
Improve overbar rendering in PCB and global labels
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8584
Moves the font slightly down in global labels
Keeps font with overbar at the same size in PCB OpenGL renderer
2021-08-02 16:40:36 +00:00
Jeff Young
c51b1dad72
Generalize infobar MESSAGE_TYPE handling and use for DRC errors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8782
2021-08-01 21:51:39 +01:00
Jeff Young
d40712d9d6
Formatting and message consistency.
2021-08-01 21:31:23 +01:00
Jeff Young
6ab45d0a6d
Fix double-escaping in Eagle importer.
...
This has actually been there since dot, but the old escaping method
just deleted chars it didn't like so you could run it as many times
as you wanted.
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-07-31 20:07:25 +01:00
Seth Hillbrand
6cd4d68d57
Add drop shadows to MacOS icons
...
Apple UI guidelines ask for small drop shadows on the icons. We add
these using ImageMagick when resizing
2021-07-30 20:55:34 -07:00
Seth Hillbrand
e7d8b1a975
Resize MacOS icons and script their creation
...
Creates a script that will fomat the MacOS icons at 80% of the total
size in line with Apple's guidelines.
Script requires Inkscape 1.0 and png2icns (available on Linux boxen)
Fixes https://gitlab.com/kicad/code/kicad/issues/7977
2021-07-30 20:28:14 -07:00
Seth Hillbrand
ad8acd328c
Expunge some remaining references to kicad-pcb
2021-07-30 20:27:45 -07:00
Wayne Stambaugh
f485ba9338
Fix netlist error when editing schematic symbols in place.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8798
2021-07-30 18:37:45 -04:00
Seth Hillbrand
d5abbd0d14
Allow overwriting existing symbols
...
This allows the workflow:
1) Edit symbol in schematic
2) Save As to original library
Also allows the user to quickly overwrite a symbol they don't want,
either by importing over the existing symbol or creating a new one.
2021-07-30 10:36:08 -07:00
Jeff Young
c716548b29
Enable autoplace whenever sel contains at least 1 field owner.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8886
2021-07-29 20:23:56 +01:00
Jeff Young
539d14ce94
Fix hang-over from legacy canvas where we only looked at sel head.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8886
2021-07-29 16:52:22 +01:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Jeff Young
f221220fe2
Rename layer ids file.
...
It hasn't had anything to do with colors or visibility for some time
now.
2021-07-29 16:03:25 +01:00
Mike Williams
934b6e4cdc
Eeschema: fix symbol library link not showing
...
In wxWidgets GTK, SetLabel() won't show anything. Seems like an old
wxWidgets issue:
https://forums.wxwidgets.org/viewtopic.php?t=20207
2021-07-29 01:19:51 +00:00
Jeff Young
46338403e7
Unwrap some std::library typedefs.
2021-07-28 22:16:38 +01:00
Jeff Young
87e4a1c672
Remove cover type; capitalize class name; make filename equal classname.
2021-07-28 22:16:38 +01:00
Jeff Young
293f207356
Hopefully the last of the symbol id escaping issues.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-07-28 19:44:42 +01:00
Wayne Stambaugh
f233f4a0a9
Expunge EDA_FILE_SELECTOR.
...
EDA_FILE_SELECTOR was just an obfuscation of wxFileSelector().
2021-07-28 14:12:51 -04:00
Jeff Young
6d4c454e8c
Fix some more missing escaping for symbol ids.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-07-28 18:37:09 +01:00
Jeff Young
726f4d8016
Fix up some more cases of missing escaping for symbol names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-07-28 16:40:38 +01:00
Jeff Young
19de38bbae
Avoid Mac-standard Cmd+H as well.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8864
2021-07-27 22:26:13 +01:00
Mike Williams
2c766bdb2b
Eeschema: fix assigning netclass to buses
...
Buses with at least one member can use assign netclass functionality to
set all members to that netclass.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8743
2021-07-27 20:48:25 +00:00
Jeff Young
dd5676f4bc
Implement a safer (RAII) tool re-entrancy guard.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8873
2021-07-27 16:37:34 +01:00
Wayne Stambaugh
37b200cb3e
Pass wxString objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Wayne Stambaugh
78e5e98ea0
Pass VECTOR2I objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
jean-pierre charras
8ff76de18e
DIALOG_EDIT_ONE_FIELD: fix a non resizable widgets and fix a compil warning.
...
Fixes #8877
https://gitlab.com/kicad/code/kicad/issues/8877
2021-07-27 14:12:46 +02:00
david-beinder
8467fe5405
Altium schematic import: text positioning and arc fixes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8844 (power port text positioning, only use 0, 90deg for text)
Adjust text justification due to rotation on import
Set field position through SCH_FIELD::SetPosition
Honor hidden net names at power ports
Calculate start/end points for imported arcs in symbols
2021-07-26 19:49:56 +00:00
Wayne Stambaugh
8fd83cbb95
Pass wxPoint objects by reference instead of on the stack.
2021-07-26 15:35:33 -04:00
Mike Williams
924d4563b7
Symbol Editor: Don't unselect library based on non-existent symbol
...
FIXED: Previously, when the symbol editor frame gains focus it will
unselect the library tree selection unconditionally. This is annoying
when adding a new library and then new symbol to a freshly-opened symbol
editor with no other symbol being edited. Anything that gives the editor
focus will deselect your library before you can add a symbol to it.
2021-07-25 21:37:08 +00:00
Mike Williams
36b2ff262d
Symbol Editor: Auto select newly added/created library
...
CHANGED: When creating a new library, the usual intention is to add a
new symbol to it. Without this, the "No symbol library selected."
message will appear if the user attempts to add a new symbol without
manually selecting their new library.
2021-07-25 21:37:08 +00:00
Mike Williams
13a03f77d3
Eeschema: Fix for delete key in wire tool
...
Delete key was not working for items selected with wire tool active.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8841
2021-07-25 15:17:49 -04:00
Jeff Young
010247bb7f
Add overbar conversion to the legacy SCH reader.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8855
2021-07-25 13:11:30 +01:00
jean-pierre charras
1aadf45947
DIALOG_SHIM: fix not working initial size when creating a dialog.
...
The first time a DIALOG_SHIM was created, with a given size, this size
was not taken in account. This this is now forced.
(when recreated during a session, this is the last dialog size that is used)
2021-07-24 18:59:28 +02:00
jean-pierre charras
dbf17f83ed
Minor fixes (DIALOG_DISPLAY_HTML_TEXT_BASE: ensure min size is working).
2021-07-24 17:03:36 +02:00
Jeff Young
531f5480a7
Reduce line-breaks and increase SNR.
2021-07-24 14:25:59 +01:00
jean-pierre charras
9820e89268
EE_INSPECTION_TOOL::CheckSymbol(): fix incorrect test about pins on grid.
...
(the minimal grid was 25 internal units instead of 25 mils)
Also the coordinates in messages are now printed in current user units.
2021-07-23 18:23:25 +02:00
Jeff Young
29eece7409
Move update-wires-if-driver-changed logic.
...
This prevents RecalculateConnections from getting called twice before
we run the logic. In that case the driver would change on the first
recalc, and then it would look like it didn't change on the second (which
is where we were checking).
Fixes https://gitlab.com/kicad/code/kicad/issues/8812
2021-07-23 16:45:26 +01:00
Jeff Young
fa93c1ec65
Don't include hidden fields in bounding box.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8809
2021-07-22 13:56:09 +01:00
Wayne Stambaugh
1a301d8eea
Stop using wxDialog::EndModal() from inside dialogs.
...
Calling wxDialog::EndModal() directly from inside the dialog is a
potential bug if the dialog is shown in the modeless or window modal
(quasi-modal). Use the internal button events where possible and
check for the appropriate mode before calling the correct end dialog
function.
2021-07-21 17:38:14 -04:00
jean-pierre charras
bff0307ac0
Edit pin number: fix a crash when a pin is common to all units (i.e. having a unit id = 0)
...
Fixes #8824
https://gitlab.com/kicad/code/kicad/issues/8824
2021-07-20 16:49:53 +02:00
luz paz
8bacc9fccb
Fix python 'testing for equality' syntax
...
'Testing whether an object is 'None' using the == operator is inefficient and potentially incorrect.'
Per https://lgtm.com/projects/g/KiCad/kicad-source-mirror/?mode=tree&ruleFocus=7900090
2021-07-19 15:42:30 +00:00
Jeff Young
4317848cfe
Only title-caps "our" field names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8803
2021-07-19 14:43:57 +01:00
Jeff Young
f5aefb7ad9
User pointer compare, not object compare.
2021-07-19 13:17:12 +01:00
Wayne Stambaugh
cb72da294a
More NULL expunging.
2021-07-16 16:13:41 -04:00
Seth Hillbrand
d1c9572bcc
Allow editing symbols when added to schematic
...
We do not allow editing symbols in Legacy libraries, but once they are
added to the schematic, they become editable
2021-07-16 12:08:57 -07:00
Marek Roszko
c794a6ce7a
Add pdb install option for msvc
2021-07-14 23:42:45 -04:00
Mikolaj Wielgus
395602b12a
Use Bind() instead of Connect() for simulator events
...
Also fixed "Settings..." menu item not starting settings. I don't know
why it's called `m_boardAdapter`.
2021-07-13 11:52:09 +00:00
Mikolaj Wielgus
c6a4f25538
Use wx events to update simulator title, start tools and menu items grayed out
2021-07-13 11:52:09 +00:00
Mikolaj Wielgus
3bafe6d6c9
Gray out unavailable simulator menu items, use wxUpdateUIEvent
2021-07-13 11:52:09 +00:00
Mikolaj Wielgus
4f2856b345
Gray out unavailable tools in simulator toolbar
...
Cures some of the dialogitis plaguing the simulator.
2021-07-13 11:52:09 +00:00
Mikolaj Wielgus
4f384085e2
Remove m_simulator null-check -- most of code already assumes it exists
2021-07-13 11:52:09 +00:00
luz paz
0446d35f0d
Fix source comment/doc typos (follow-up)
...
Found via `codespell -q 3 -S *.po,./thirdparty -L aactual,acount,aline,alocation,alog,anormal,anumber,aother,apoints,aparent,aray,dout,einstance,modul,ot,overide,serie,te,,tesselate,tesselator,tht`
2021-07-13 10:48:17 +00:00
jean-pierre charras
4df3ba6a56
DIALOG_SPICE_MODEL: expand env var to open lib file selection dialog in the previous selected lib
2021-07-12 19:40:03 +02:00
Jeff Young
0b4bb9378b
Use consistent terminology.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8777
2021-07-12 11:59:07 +01:00
jean-pierre charras
ad7e563e24
Do not translate something similar to a proper noun
2021-07-12 09:02:04 +02:00
Marek Roszko
759f0e9a75
Be sure to stop the timer during widget destruction
...
Also fix a comment elsewhere :D
Fixes #8772
2021-07-11 19:17:34 -04:00
Jeff Young
5bd30232e8
Remove nag preventing setting shape to default line width.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8774
2021-07-11 13:04:55 +01:00
Jeff Young
01d3a88faa
Allow unnamed embedded step files in altium boards.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7898
2021-07-10 16:37:45 +01:00
Jeff Young
2fc4ee5c5f
Upgrade "project is missing" to a warning.
2021-07-10 09:47:49 +01:00
Jeff Young
a06b95bb1f
Even out spacing around various panels.
2021-07-09 23:42:45 +01:00
Wayne Stambaugh
dffe2661e6
Fix SPICE simulator plot bug.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1944
2021-07-09 16:20:35 -04:00