Wayne Stambaugh
b14b8b5fb1
Move headers from common folders to the appropriate include folders.
2021-08-17 12:40:31 -04:00
Jeff Young
8b5f393804
DRC bug fixes and debugging improvements.
...
1) Don't wait for UpdateUserInterface to build the (global) list of
layer names.
2) Report clearance resolution between a silk layer and a mask layer.
3) When writing DRC reports, include info about the violating rule.
4) Report "no relevant layers" if we fail to find anything to write
a clearance resolution report about.
Fixes https://gitlab.com/kicad/code/kicad/issues/8963
2021-08-17 15:41:12 +01:00
Wayne Stambaugh
8e1015fcc4
Remove all wxWidgets build dependencies from REPORTER object header.
2021-08-16 07:49:39 -04:00
Jeff Young
1a252b4f96
Add a compile error for ill-defined rules, and more performance.
...
Also adds const-safety to GetBoard().
2021-08-16 12:14:17 +01:00
Jeff Young
41619ebbe2
Decouple PROGRESS_REPORTER interface from implementations.
2021-08-14 21:05:49 +01:00
Jeff Young
bff247b08a
Hook up 3D viewer colors to board stackup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5173
2021-08-14 14:00:17 +01:00
Jeff Young
ed38028eaf
Fully resolve path list for Kicad2Step.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7670
2021-08-14 11:21:25 +01:00
Alexander Guy
59ad333650
Check that the OpenGL drawable supports negative frame swap intervals
2021-08-13 21:11:41 +00:00
Jeff Young
c536a4c4f2
Work around annoying wxWidgets assert.
2021-08-10 16:51:30 +01:00
Jeff Young
a10f2b284c
Unify negative zero and percent handling in UNIT_BINDER.
...
Some values, such as solder mask margins, are usually negative and it
helps to display zero as "-0.0".
2021-08-06 18:16:38 +01:00
Roberto Fernandez Bautista
3747cb50c9
wxCHECK_MSG instead of assert
2021-08-05 17:45:12 +01:00
Roberto Fernandez Bautista
dd65ce9523
Simplify & move new arc collision code into Kimath library
...
Don't need to check intersections with the circle, just fix the
calculated "projected" point from the end points.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8234
2021-08-05 17:45:12 +01:00
Jeff Young
d6443d5a2c
Reduce type-casting a bit.
2021-08-04 17:11:35 +01:00
Jeff Young
95b87ba29a
Freshen microwave polygon dialog and remove a bunch of dead code.
2021-08-03 01:11:11 +01:00
Jeff Young
78fd268b18
Retire PARAM_OBSOLETE in favour of a schema migration.
2021-08-02 17:38:15 +01:00
Jeff Young
7d501e8a43
Add PARAM_OBSOLETE to clean out old JSON structures.
...
While not technically necessary, the old structures can be confusing
to users looking at the files.
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-08-02 12:53:57 +01:00
Jeff Young
4876e1b327
Make sure user.json file gets created if it didn't already exist.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-08-02 02:48:23 +01: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
e636fb32cf
Fix typo initializing buswidth with linewidth value.
...
Also reduces line-wrapping a bit.
I don't think this fixes the linked bug, but I can't reproduce it
and this was found while reviewing the code.
Fixes https://gitlab.com/kicad/code/kicad/issues/8810
2021-08-01 19:33:19 +01:00
Jeff Young
f024bf2289
Don't restrict page sizes unnecessarily.
...
Also don't validate custom sizes unless they are enabled.
Fixes https://gitlab.com/kicad/code/kicad/issues/8880
2021-07-29 16:47:45 +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
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
Ian McInerney
36d66085f5
Add a column showing 3D model file loading errors
...
This adds an icon to the left of the row with an error symbol if the
file can't be found or opened, and shows a tooltip over the icon with
and error string.
Fixes https://gitlab.com/kicad/code/kicad/issues/3815
2021-07-28 16:42:22 +01:00
Jeff Young
29b23df7a1
Save both front and back soldermask colour preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-07-27 22:26:13 +01: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
Jeff Young
886dc2f43e
Do-not-show-again section for common prefs & zone fill warning infobar.
...
Note that the dialogs which have mutliple options were not moved over
as it seems perahps not the right choice to have them save state between
sessions.
Fixes https://gitlab.com/kicad/code/kicad/issues/8762
2021-07-27 15:15:49 +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
Wayne Stambaugh
8fd83cbb95
Pass wxPoint objects by reference instead of on the stack.
2021-07-26 15:35:33 -04:00
Jeff Young
e62969d007
Move zone fracture display mode to AdvancedCfg, and add triangulation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8762
2021-07-26 18:57:35 +01:00
Wayne Stambaugh
89b1fdabe9
Pass COLOR4D object by reference instead of on the stack.
2021-07-26 13:28:56 -04:00
Marek Roszko
8921eef0be
Add a "Open Demos Project" shortcut to the kicad launcher
...
Small UX improvement for the new user....
2021-07-25 21:58:57 -04:00
Mike Williams
7ba08962ba
Eeschema/Common: convert mils to IU using doubles
...
The .kicad_pro file can contain fractional mils, and users working in
millimeters would also see weird rounding issues.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7865
2021-07-25 21:58:33 +00: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
Jeff Young
3c1af1af74
Update selected tool string when language changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8813
2021-07-23 20:16:53 +01:00
Jeff Young
a16b85db67
Read/write group locked state. Show locked state in dialog & statusbar.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8796
2021-07-22 12:49:30 +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
Jeff Young
0fb864d596
Pull some name changes back from 7.0 to ease merging.
2021-07-21 20:58:59 +01:00
jean-pierre charras
56412cc843
PCB_TEXT: remove "hide" option, because they are never hidden.
...
- avoid write "hide" option in file
- always return true when calling IsVisible()
Fixes #8806
https://gitlab.com/kicad/code/kicad/issues/8806
2021-07-18 14:58:21 +02:00
Wayne Stambaugh
bcd6bddfd4
Start expunging NULL.
...
Given that KiCad is a C++ project, we should really be using nullptr
instead of NULL.
2021-07-15 15:44:45 -04:00
Pradeepa Senanayake
6cde086ef9
Double click on defined colour executes OK action
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8778
2021-07-14 23:26:40 +00:00
Jon Evans
ae55db77c5
Allow hiding version from manager title bar with advanced config
2021-07-14 18:24:21 -04:00
Wayne Stambaugh
01515680b3
Code cleaning.
2021-07-14 15:47:32 -04: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
fb246403d2
PROGRESS_REPORTER: avoid clipping the bottom of the dialog in some cases.
...
It occurred on Windows, when the message to display is too long and was
displayed using 2 lines.
Now the dialog is resize after changing the message.
Fixes #7953
https://gitlab.com/kicad/code/kicad/issues/7953
2021-07-11 17:52:54 +02:00
Marek Roszko
9162013132
Add advanced cfg to force reloading memory cached 3d models
2021-07-11 00:35:38 -04:00
Marek Roszko
7cb0f8f808
Add ADVANCED_CFG to always reload cached 3d models in memory
2021-07-11 00:31:06 -04:00
Marek Roszko
79b90813ec
Add ADVANCED_CFG to skip caching 3d models to file
2021-07-11 00:00:06 -04:00
Marek Roszko
1fb42c5e43
Try and cleanup the input focus/key event a little
2021-07-05 20:48:48 -04:00
Jon Evans
4f3674bd1d
Fix mangling of direct json_pointer access
2021-07-05 12:33:08 -04:00
Jon Evans
3f55093bff
JSON_SETTINGS: Provide explicit CloneFrom
2021-07-05 12:26:21 -04:00
Marek Roszko
d2aeddc6cb
Add debouncing to the choose symbol dialog.
...
More potato pc friendly in theory.
2021-07-04 21:59:51 -04:00
Marek Roszko
3b33f94c56
Use a wxSearchCtrl instead of wxTextCtrl for the symbol chooser window
...
This just makes it prettier with the search icon and cancel
2021-07-04 21:24:03 -04:00
Mikolaj Wielgus
8b2b3ca797
Define .wbk in wildcards_and_files.{cpp,h}, cosmetic code changes
2021-07-04 14:04:03 +00:00
david-beinder
f33ea6f997
Kiway: Improve performance by using IDs and clearing closed frame entries
2021-07-03 22:48:46 +00:00
david-beinder
a5308e5f5c
Fix python console toggle to work across pcbnew/eeschema
2021-07-03 22:48:46 +00:00
Jon Evans
e95323a37e
Revert "Remove unused variable."
...
It's only unused on Mac
This reverts commit d3fb22014f
.
2021-07-03 16:48:46 -04:00
Jeff Young
d3fb22014f
Remove unused variable.
2021-07-03 21:16:15 +01:00
Roberto Fernandez Bautista
c3051ba48a
Refactor SHAPE_LINE_CHAIN to allow two shapes per point
...
m_shapes now has two possible indices. The first one is populated if
the point is associated with an arc and the second index is populated
if the point is shared between two arcs.
2021-07-03 19:37:50 +00:00
Marek Roszko
eff75b630f
Get rid of anonymous struct typedefs
...
We are using C++14 where there is no reason for this and is banned in C++20 under P1766R1. MSVC generates a warning under C++14 as a reminder.
2021-07-01 18:28:41 -04:00
Wayne Stambaugh
175b474c3e
Coverity issue fixes.
...
Fixes issues #280412 , #314755 , #329615 , #332459 , #332157 , #332167 ,
2021-06-30 18:08:49 -04:00
Jeff Young
6810912f09
Refuse to load schematics from the future.
...
Also fixes a bug where an empty window would get left when loading
a file from the KiCad manager window errored out.
Also fixes a bug where we were getting the wrong exception because
we were rethrowing the type-casted one (rather than just calling
throw).
Fixes https://gitlab.com/kicad/code/kicad/issues/8604
2021-06-30 18:32:07 +01:00
Jeff Young
5cac8afe1d
Remove long-dead revision support for LIB_IDs.
2021-06-30 13:12:57 +01:00
Jeff Young
b1b4caee6a
Escape "naughty" characters in symbol names.
...
It's tempting to say that we don't need to exclude filename chars
from symbols, but we might regret that decision down the road. Better
to just escape them.
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-06-30 13:12:57 +01:00
Jeff Young
0c2ac9a711
Move GUI font code to common.
...
This also allows the Mac fixes for font facenames to be more
compartmentalized.
Fixes https://gitlab.com/kicad/code/kicad/issues/8657
2021-06-29 18:27:58 +01:00
Jeff Young
64f07ea9c6
Update text variables after changes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8697
2021-06-29 13:55:06 +01:00
Jeff Young
8526394394
Attempt to fix gcc builds....
2021-06-28 11:44:22 +01:00
Jeff Young
d296bec5b8
Differentiate aSingleLine mode for SCINTILLA_TRICKS
...
This allows us to avoid the monospaced font (along with the tab-stop
handling), and process a <return> as an OK rather than just <shift> +
<return>.
Fixes https://gitlab.com/kicad/code/kicad/issues/8425
2021-06-28 11:20:12 +01:00
Marek Roszko
7802037495
Namespace the env_vars.h functions
2021-06-27 00:38:19 -04:00
Jeff Young
0f27618125
Use a list dialog that can be parented by the Board Setup dialog.
...
(The current one keeps pulling the Kicad Manager window to the front
on OSX.)
I also removed the UpdateUI stuff which was probably causing:
Fixes https://gitlab.com/kicad/code/kicad/issues/5049
2021-06-27 01:41:35 +01:00
Jeff Young
81fc710a5d
Use consistent terminology.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8681
2021-06-26 10:11:41 +01:00
Jeff Young
1f4a56005e
Remove extraneous isPrinting test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8609
2021-06-25 12:44:51 +01:00
Jeff Young
27804e40e2
Go back to using space-width for tabs (instead of max-char-width).
...
The max-char-width impl was buggy and never applied to PCBNew anyway.
Plus the stroke font has a max-char-width of 2.8 time the space width,
so it made for really wide tab spacing.
Also fixes a bug where the Scintilla editors weren't getting a
monospace font on Mac. (This bug may also exist on the other
platforms, but each would need its own fix.)
Also moves more of the Scintalla customizations to SCINTILLA_TRICKS
where they can be shared.
Fixes https://gitlab.com/kicad/code/kicad/issues/8666
2021-06-24 23:53:27 +01:00
Jeff Young
5fa5a73c6d
File open/import progress dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6864
Fixes https://gitlab.com/kicad/code/kicad/issues/2166
2021-06-23 23:55:54 +01:00
Marek Roszko
aadb62bd42
Avoid generating paths on windows with ".." in them
...
This causes wxwidgets to failover to legacy windows dialogs as windows doesn't know how to handle them being passed to dialogs.
2021-06-21 18:03:55 -04:00
Jeff Young
99da3d1336
Bail on single instance checker.
...
We lock the project file, board, and schematic now, so the second copy
can only open them read-only. While issues might remain, it's unclear
the warning ever prevented anyone from shooting themselves in the foot
anyway.
Fixes https://gitlab.com/kicad/code/kicad/issues/7465
2021-06-20 21:37:02 +01:00
Jeff Young
89718dd3ba
Naming conventions.
2021-06-19 19:36:53 +01:00
Jon Evans
32c21f4a94
Fix several window sizing problems on macOS
...
- Remove outdated y-offset that prevented restoring full-height
(client area returned by wx is correct these days)
- Clamp frame geometry to fit new display when display is changed
- Handle when an automatic window reposition causes a DPI change
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8341
2021-06-17 23:59:19 -04:00
Jeff Young
16047b7419
3D preferences bug fixes.
...
1) Make sure prefs get saved when closing parent frame.
2) Add camera projection mode to settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/8110
Fixes https://gitlab.com/kicad/code/kicad/issues/8626
2021-06-17 12:22:18 +01:00
Marek Roszko
45c7c7c350
Remove unused m_crossHairPosition
2021-06-15 21:25:27 -04:00
Wayne Stambaugh
ee3eac325d
Expunge the use of the word part from Eeschema code.
2021-06-15 08:32:11 -04:00
Jeff Young
abc5a6e775
Migrate net names in netclass info.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8606
2021-06-15 00:17:39 +01:00
Wayne Stambaugh
fb46cd8bc5
Expunge the use of the word component from Eeschema code.
...
The only exception to this is the SPICE simulator's use of component
when referring to physical component (R, L, C, etc.) values.
2021-06-14 14:00:21 -04:00
Jeff Young
2c1da70181
Write all variables to temp config file and have Kicad2Step use that.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7670
2021-06-14 16:54:45 +01:00
Wayne Stambaugh
71c183d7bb
Rename LIB_PART to LIB_SYMBOL.
2021-06-14 07:11:17 -04:00
david-beinder
da833ad7dd
Separate focus from hover state in BITMAP_BUTTON, trigger after mouse down+up
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8556
Adds AcceptDragInAsClick() to maintain support for use in toolbar palettes
2021-06-13 17:00:41 +00:00
Jeff Young
74cefecaac
Add legacy empty-string token handling to EDA_TEXT.
2021-06-13 12:11:01 +01:00
Seth Hillbrand
09e1a0dc48
Increase maximum zoom for pcbnew and gerbview
...
Zoom levels remain the same but high zooms reachable by mouse wheel
Fixes https://gitlab.com/kicad/code/kicad/issues/7093
2021-06-11 14:26:38 -07:00
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
2021-06-11 22:07:02 +01:00
Mikolaj Wielgus
63c263090f
Add versioning to page layout editor worksheets
2021-06-11 18:40:57 +00:00
Mikolaj Wielgus
ade38f48bc
Add conversion from old `~...~` to new `~{...}` notation
2021-06-11 18:40:57 +00:00
Jeff Young
16b0147af8
Prefix DIMENSION types.
2021-06-11 17:59:44 +01:00
Marek Roszko
803e2101de
Fix MSVC compile error
...
Templates and linkage, ugh
2021-06-11 07:32:41 -04:00
Jeff Young
44086ff2b2
Pull 3D preferences into KiCad preferences architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5187
2021-06-11 11:19:40 +01:00
Wayne Stambaugh
fbc135e69f
Rename SCH_COMPONENT to SCH_SYMBOL.
2021-06-10 10:34:49 -04:00
jean-pierre charras
1c3df973d6
Coverity warnings fixes.
2021-06-10 13:45:02 +02:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
david-beinder
053bd66650
Fix localization of OS unsupported message, disallow bug reports from W7
2021-06-09 19:01:54 +00:00