jean-pierre charras
ff46b7b1e5
fix compil warnings
2023-01-27 18:25:09 +01:00
Jeff Young
36d44e0ef2
Fix vertical centering of buttons in button row.
2023-01-27 12:34:50 +00:00
Marek Roszko
d8bde5bcfe
Avoid the sentry prompt in kicad-cli
...
Fixes KICAD-47
2023-01-27 06:52:40 -05:00
Alex
a872ed11bf
Fix paths for Copy default global library table.
2023-01-27 09:24:52 +03:00
Seth Hillbrand
242b9855dd
Protect VIEW against oddball items
...
Importing may have more view layers than we allocate. In these cases,
we need to avoid accidentally writing to unallocated view layers
Fixes https://gitlab.com/kicad/code/kicad/issues/13638
2023-01-26 11:22:56 -08:00
Seth Hillbrand
bcc1e28bab
Fix Windows build error
...
bc Microsoft owns all the words
2023-01-25 16:45:04 -08:00
Seth Hillbrand
33bef16376
Simplify the winding calculation
...
This algorithm is more robust against points and cheaper to execute.
2023-01-25 13:13:38 -08:00
Seth Hillbrand
cf52bfcc55
Handle missing Bold/Ital outline fonts
...
If the font face doesn't include a Bold or Italic version, we still want
to display the font as bold/italic, so we fake it with freetype.
This also prevents recurring error messages where the outline font warns
about "substitutes" within the same font family.
Also allows variants on the weight descriptor to be used without
throwing a substitution warning
Fixes https://gitlab.com/kicad/code/kicad/issues/13654
2023-01-25 13:13:38 -08:00
Jeff Young
51293858b3
Allow empty lib tables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13653
2023-01-24 23:45:55 +00:00
Jon Evans
769afa6fe6
Properties: refactoring
2023-01-24 12:08:37 -05:00
Jon Evans
890103a012
Properties: Fix handling of mixed value selections
2023-01-24 11:51:26 -05:00
Marek Roszko
669d302ccf
Revert "Try to handle fetching the player frame slightly safely"
...
This reverts commit 679a3a6552
.
2023-01-24 06:54:10 -05:00
Marek Roszko
679a3a6552
Try to handle fetching the player frame slightly safely
...
Maybe a fix for KICAD-3A
2023-01-23 22:02:37 -05:00
Jeff Young
220c5a259b
Refresh schematic's copy of template fieldnames after preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13203
2023-01-24 00:07:40 +00:00
Seth Hillbrand
442ee52905
Add versioning to lib tables
...
Sets lib table version to allow easier migration between versions
2023-01-23 22:21:12 +00:00
Seth Hillbrand
70a57505de
Migrate lib tables to KICAD7 on open
...
If KiCad does not detect an environmental variable set for the old
library table variables AND the library table being opened references
the unset env var, we will dynamically update the env var to the new
value
Fixes https://gitlab.com/kicad/code/kicad/issues/13464
2023-01-23 22:21:12 +00:00
Seth Hillbrand
efe12f2da5
Cleanup variable naming
...
Also remove ancient/unused code for lazy resolving
2023-01-23 22:21:12 +00:00
Seth Hillbrand
a9ed47f06c
Update KICAD6->KICAD7
2023-01-23 22:21:12 +00:00
aris-kimi
09b83b95d0
PCB Editor: Locked filter unchecked by default
...
And some minor code style improvement in one place
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13246
2023-01-23 11:36:06 +00:00
Graham Keeth
3f3a43ee5a
add gkeeth to docs team in about dialog
2023-01-23 11:34:28 +00:00
Jon Evans
e76fd128c3
Stop treating OpenProjectFiles failure like a fatal error
...
There is no need to try to bail out if this call fails,
and the bail-out was wiping out the app settings.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13427
2023-01-22 22:48:31 -05:00
Jon Evans
e419b0bfe8
Support sub-libraries in symbol library browser
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12842
2023-01-22 19:25:15 -05:00
jean-pierre charras
1551477f00
Eeschema: Try to fix printing issues for bitmaps.
...
These issues are highly dependent on wxWidgets version
Tested on W10 with wx 3.1.5, 3.1.7 and 3.2.1
Fixes #12461
https://gitlab.com/kicad/code/kicad/issues/12461
2023-01-22 20:03:29 +01:00
Jeff Young
bf8762c57c
Streamline color lookup (and a bit of wxS).
2023-01-22 17:18:03 +00:00
Jon Evans
09cb222252
Change indeterminate checkbox behavior to be more intuitive
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13604
2023-01-22 12:10:45 -05:00
Jon Evans
351f668645
Separate selection change updates from properties updates
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13624
2023-01-22 12:10:45 -05:00
Alex
2628ab3e16
Update About dialog.
2023-01-22 19:09:49 +03:00
Marek Roszko
0ff32d20cd
wxS more things
2023-01-22 09:41:42 -05:00
Marek Roszko
323bec4adc
Remove hidden undocumented env var for worksheet
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8342
2023-01-22 08:56:28 -05:00
jean-pierre charras
e900e472ce
Fix compil and Coverity warnings
2023-01-22 09:40:09 +01:00
Jon Evans
3a9ef02fdf
Clean up handling of selection changes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13620
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13609
2023-01-21 17:37:29 -05:00
jean-pierre charras
f14e24d2cf
PDF_plotter: fix crash when the font used to plot texts is not specified.
...
(In this case the default Kicad font must be used)
Fixes #13615
https://gitlab.com/kicad/code/kicad/issues/13615
2023-01-21 20:12:30 +01:00
Marek Roszko
b2421c7d9f
Fix tiny bug in double 2 string formatting
...
- I forgot to handle the trailing dots when I added the fmt variant
- UIDouble2Str (the original) lacked the comma check
- Add unit test lol
2023-01-21 13:54:52 -05:00
Chris Morgan
2b128c79f2
sprintf -> snprintf to silence some compiler warnings
2023-01-21 18:39:51 +00:00
Seth Hillbrand
3465fe3e50
Allow variable recursion
...
Simple recursion of variable expansion allows for multiple use cases in
portability of designs. This also includes basic prevention of
recursion loops
Fixes https://gitlab.com/kicad/code/kicad/issues/10398
2023-01-20 16:44:48 -08:00
Seth Hillbrand
9986eb5cf6
Don't show error when added new paths
...
Empty paths should be discarded instead of throwing an error about
missing data
2023-01-20 16:43:16 -08:00
Seth Hillbrand
d8ac53d7b4
Fix 3D model resolution for older boards
...
Older boards use older 3d model environmental variables. We need to
support both older environmental variables (if the user has them) as
well as updated environmental variables (if the user only has a single
3d model path)
This updated the environmental resolver to look first in the named
location and then substitute the new location if the old location is not
defined in the environment
Fixes https://gitlab.com/kicad/code/kicad/issues/10674
2023-01-20 15:59:23 -08:00
Seth Hillbrand
e6dbca051c
Force realtime connectivity on
...
The pressure relief valve was not useful for common work patterns as it
forced the recalculation on many common actions such as bus expansion.
This caused it to actually feel slower than with the pressure relief
valve off.
For most schematics, realtime is now fast enough to not need the valve
and for those that are extremely complex, removing the valve helps this
run more predictably
2023-01-20 15:17:57 -08:00
Seth Hillbrand
5347fbdbb1
Update languages to be installed for release
...
Languages that have been abandoned or are not yet sufficiently
translated are not shipped with release. The po files and existing
translations remain and will be re-enabled post release for future
development
2023-01-20 13:23:13 -08:00
Jeff Young
b0ba898a27
nullptr safety (necessary during startup before project exists)
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13608
2023-01-20 19:28:18 +00:00
Jeff Young
2367c5cf1b
Fix another early return while evaluating text variables.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13610
2023-01-20 19:20:15 +00:00
Jon Evans
6cce99e0d0
Support showing Value field in symbol chooser
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13527
2023-01-19 22:14:10 -05:00
Seth Hillbrand
da1707d5ba
Place hidden PDF text behind words better
...
Rather than hiding a single line at once, we align each word in the
string with the approximate location of the output word. This allows
better selecting text in the output pdf
Fixes https://gitlab.com/kicad/code/kicad/issues/12159
2023-01-19 15:53:46 -08:00
Mike Williams
7ab651f078
Common: make grid prev/next wrap
...
Consistent with our other keys like change track and via sizes.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9051
2023-01-19 11:47:03 -05:00
kliment
0e04c4b1da
Add librarian credits
2023-01-19 16:28:31 +00:00
Wayne Stambaugh
774f3f9794
Use wxMessageDialog in IsOK() on GTK builds.
...
wxRichMessageDialog does not have the same appearance as the native
message dialogs on GTK builds so they look completely out of place.
2023-01-19 08:28:48 -05:00
Jeff Young
47ae8bdb86
Fix duplicated message.
2023-01-19 11:01:22 +00:00
Seth Hillbrand
7e5a2450b8
Move multiple wxMessageBox to DisplayErrorMessage
...
Also provide protection for headless running in multiple callsites
Fixes https://gitlab.com/kicad/code/kicad/issues/13575
2023-01-18 16:54:01 -08:00
Jeff Young
ae55b1581e
Use error message routine that checks for headless mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13575
2023-01-19 00:19:00 +00:00
Dag Lem
cff0560088
Eagle schematic import: Handling of escaped text
2023-01-18 12:33:36 +00:00
Jeff Young
3af9c658e6
Don't specify fonts in wxFormBuilder. It only leads to pain.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13547
2023-01-18 12:28:07 +00:00
Jeff Young
f399dc0c3a
Nullptr safety. (Sentry KICAD-4F)
2023-01-18 01:16:57 +00:00
Jeff Young
26c821962f
Simplify and regularize text variable substitution architecture.
...
EDA_ITEMs are responsible for giving their parent a crack at it if
they failed to resolve it. This recurses all the way up to the schematic/
board, and then to the project.
Cross-reference handling is also move to the EDA_ITEMs. It must be done
before bubbling up so that we don't end up in loops. (The aDepth parameter
will break the loop, but without having done anything useful.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-17 17:05:41 +00:00
Mike Williams
369c0efade
Bitmaps: respect source DPI
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13565
2023-01-17 11:20:17 -05:00
Jeff Young
ea1d7c5d97
Update Eagle imported variable mapping to better match Eagle output.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-17 13:43:47 +00:00
Jeff Young
8ac0543a5e
Try a bigger hammer to keep wxFormBuilder from messing up grid fonts.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13547
2023-01-17 13:41:53 +00:00
Wayne Stambaugh
7361414f4c
Fix GCC build issue on Linux.
2023-01-17 07:59:09 -05:00
Marek Roszko
1edf84d756
More wxS ugh
2023-01-17 07:43:04 -05:00
Marek Roszko
d2c0f5fc2a
More wxSing
2023-01-16 23:14:38 -05:00
Marek Roszko
ac94995f70
Some more wxS
2023-01-16 19:07:50 -05:00
aris-kimi
b1308d21c3
Calculator eseries, remove trailing spaces from 3R and 4R
2023-01-16 17:18:21 +00:00
Jeff Young
9315e885ee
Substitute variables in imported symbol text.
...
Also allows mulit-line text items to be imported.
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-16 16:01:45 +00:00
JamesJCode
3d6045a7c8
Supress wxLocale warnings when no matching locale found when setting default locale on MacOS
...
Re-fixes warning appearing in https://gitlab.com/kicad/code/kicad/-/issues/13371#note_1238532117
2023-01-16 14:12:16 +00:00
Jeff Young
62649b868c
Ensure good fonts in grid headers.
...
Also moves rendering to a flat look for headers (instead of a beveled
border).
Fixes https://gitlab.com/kicad/code/kicad/issues/13547
2023-01-16 02:47:14 +00:00
Marek Roszko
789db0cecb
Some more wxS
2023-01-15 21:32:23 -05:00
Marek Roszko
57c66a50ac
Add some missing wxS wraps
2023-01-15 20:24:29 -05:00
Jeff Young
ca1fb732c8
Share Eagle var substitution between board and schematic importers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13541
2023-01-15 22:27:19 +00:00
Roberto Fernandez Bautista
355e817302
Move DefaultTransform definition to transform.cpp, so it can be shared
2023-01-15 19:17:51 +01:00
jean-pierre charras
96a0bd556e
Pcb calculator: fix not working calculation in E Series.
...
Fixes #13519
https://gitlab.com/kicad/code/kicad/issues/13519
2023-01-14 15:36:00 +01:00
Simon Richter
dc9aaf7844
Fix mismatched deallocation
...
The strings are allocated via strdup() -> malloc(), and need to be freed
with free(), the array is allocated with operator new[], and needs to be
deallocated with operator delete[].
2023-01-13 14:48:26 +01:00
James Jackson
8f2f53192b
On MacOS, ensure the application locale is set to the system default
...
Fixes #11046
2023-01-12 21:39:08 +00:00
Seth Hillbrand
a5e6f11682
Fix crash when closing non-modal
2023-01-12 13:21:22 -08:00
Seth Hillbrand
fa91d906d0
Fix event blocker on GTK
...
We block events when a modal window is active. But detecting when the
modal window is closed is harder on GTK than just counting modal closes
because the modal flag can sometimes be unset before the wxEVT_SHOW
event fires. Instead, we track the stack of modal windows opened and
close the window and subsequent windows when the object pointer matches
Fixes https://gitlab.com/kicad/code/kicad/issues/13372
2023-01-12 11:53:00 -08:00
Jon Evans
c530bdb5a1
Rename GetSelectMenuText to GetItemDescription
...
This descriptive text is used for many more things than
just the select menu these days.
2023-01-11 22:27:44 -05:00
Jon Evans
05b578a9bb
Bitmaps: use original size for caching
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13486
2023-01-11 21:15:07 -05:00
Jon Evans
253122dc78
BITMAP_BASE: update original when converting to greyscale
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13487
2023-01-11 21:07:50 -05:00
Seth Hillbrand
a206f6717d
Desaturate the symbols in DNP for print/plot
...
The desaturation should match screen display
Fixes https://gitlab.com/kicad/code/kicad/issues/13481
2023-01-11 13:44:08 -08:00
Seth Hillbrand
248399f771
Standardize print/plot terms
...
Use choice box for color/bw selection
"border and title block" -> "drawing sheet"
Fixes https://gitlab.com/kicad/code/kicad/issues/13128
2023-01-11 12:30:02 -08:00
Seth Hillbrand
481c2493a4
Fix comile on Linux
2023-01-10 19:49:36 -08:00
Jeff Young
30c9deb9d5
Flat(er) look for paged dialogs.
2023-01-11 01:11:25 +00:00
Roberto Fernandez Bautista
99d02ac7c0
CADSTAR SCH: Load symbol shapes with correct fill state
...
Changes architecture of importer to use SHAPE_LINE_CHAIN.
For now lets just load symbol shapes like this, but we could update code
for all other loading operations (also in PCB).
FIxes https://gitlab.com/kicad/code/kicad/-/issues/8060
2023-01-10 22:28:01 +01:00
Roberto Fernandez Bautista
ee6e86d1db
Add conversion from CADSTAR SHAPE to SHAPE_POLY_SET
2023-01-10 22:28:01 +01:00
Wayne Stambaugh
c3ded7a03d
Remove board editor standard dialog button static line separators.
2023-01-09 08:49:38 -05:00
Marek Roszko
9f71e9af03
Add arg to plot hidden symbol pins in cli
2023-01-08 22:39:38 -05:00
Jeff Young
f17ddf5c88
Terminate overbar notation correctly.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13438
2023-01-08 20:08:53 +00:00
Wayne Stambaugh
9c0445ed98
Remove schematic editor standard dialog button static line separators.
2023-01-08 14:26:10 -05:00
Wayne Stambaugh
f28ea5e784
Remove standard dialog button static line separators.
...
For the sake of consistency across all dialogs and window that behave
like dialogs, remove the static line that separates the main part of
the dialog from the standard buttons. This only applies to windows
that have the standard button on the bottom of the frame.
This covers the 3D viewer, CvPcb, common, GerbView and KiCad dialogs.
2023-01-08 13:15:33 -05:00
Alex
53dedb2c99
Prefer later versions in import of previous settings
2023-01-08 00:24:23 +05:00
Jeff Young
aeb0d1d887
Use a more reliable conversion to UTF8.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12722
Fixes https://gitlab.com/kicad/code/kicad/issues/13313
2023-01-07 13:13:13 +00:00
Jon Evans
2f7f41b090
Do not pattern-match against the empty net
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13412
2023-01-06 17:25:36 -05:00
Jeff Young
e315eb871c
Size columns after we've restored saved size of dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13278
2023-01-06 14:33:44 +00:00
qu1ck
7dfa100ff0
Correctly refresh the board after action plugin run and maintain
...
selection
2023-01-05 14:05:15 -08:00
Jon Evans
1d9783ed32
Suppress wxWidgets popups when locale can't be loaded for some reason
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13371
2023-01-05 12:39:16 -05:00
Jeff Young
3d8d27caf3
Make sure ResetGridSizes works for SCH apps.
2023-01-05 16:30:55 +00:00
Jeff Young
3b021d98be
Completely remove reading SCH grid sizes from config files.
...
It messes up too many things if you put metric grids in there.
Fixes https://gitlab.com/kicad/code/kicad/issues/13345
2023-01-05 12:25:43 +00:00
Seth Hillbrand
611fcc2f19
Initialize m_originalBitmap when loading PNG data
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13374
2023-01-04 11:32:15 -08:00
Seth Hillbrand
98d55ce82f
Avoid rebuilding with each commit
...
We shouldn't include the kicad_build_info.h outside of the wrapper
build_info.h. Also adds an error directive to prevent re-introduction
of define dependencies
2023-01-04 11:32:15 -08:00
Roberto Fernandez Bautista
f518d08bf8
Update the bounding box when printing "Fit to Page"
...
Fixes edge case from c5d8dffca4
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13370
2023-01-04 14:44:36 +01:00
Roberto Fernandez Bautista
00655f9f29
Default to Fast Antialiasing for OpenGL GAL
2023-01-04 14:44:36 +01:00
Roberto Fernandez Bautista
1eef438a96
Always default to Accelerated (OpenGL) rendering and fallback if required
...
When falling back the GAL, let's not update the user preference and instead
just keep track of the failure that happened this session.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11720
2023-01-04 12:58:19 +00:00
Jon Evans
8894b8e669
Implement bitmap rotation and mirroring without texture modification in opengl_gal
2023-01-04 00:26:45 +00:00
Jon Evans
ac3ed02283
Rework bitmap cache and enable it
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12405
2023-01-04 00:26:45 +00:00
Marek Roszko
8ab9934143
Use our own cmake module path variable to avoid conflicting with the main ones listy functional
2023-01-03 19:18:16 -05:00
Roberto Fernandez Bautista
2d4ec7cab7
Happy New Year 2023!
2023-01-03 15:55:08 +01:00
Jeff Young
056349e5ea
Units for footprint preview widgets.
2023-01-02 22:12:26 +00:00
jean-pierre charras
40e41d0129
Protect against null pointer use.
...
Fixes #13349
https://gitlab.com/kicad/code/kicad/issues/13349
2023-01-02 15:42:49 +01:00
jean-pierre charras
e8114dc49a
Minor compil and Coverity warnings fixes.
2023-01-02 10:21:42 +01:00
Alex
c1ea90abc6
Handle view centering properly when drag-panning and zooming.
2023-01-02 14:20:43 +05:00
Gary Kim
8e8a3c7bdc
Do not translate name in version info
...
Leave the application name in version info untranslated when
viewed, copied, or used in a bug report.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13298
2022-12-31 20:28:45 -05:00
qu1ck
84ad38fd5d
Add VECTOR2I_EXTENDED_TYPE template spec to swig
...
Allows access to Dot(), Cross() and other vector2i methods in python
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9967
2022-12-31 18:52:07 +00:00
Alex
3f34485013
Add missing limits header.
2022-12-30 14:44:48 +05:00
Jeff Young
c0e0cbceb0
Move eseries helper class to common.
...
Also improves some terminology for english-speakers.
Also substitues [] vector access (which creates empty elements) over
at() (which throws if the item is not found).
2022-12-29 18:05:57 +00:00
Jeff Young
4c63b4e061
Class name <-> file name sync.
2022-12-29 18:05:57 +00:00
Mike Williams
6816ee937a
Flags: remove unused IS_DRAGGING
2022-12-28 12:27:57 -05:00
Mike Williams
f03fd5ad2d
Schematic: remove IS_RESIZING
...
Is unused/redundant with IS_MOVING
2022-12-28 12:27:57 -05:00
Jeff Young
fc15454dd1
Debounce button control drawing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13288
2022-12-27 23:55:28 +00:00
Jon Evans
7e778c9856
KiWay: Make sure to mark closed windows as closed
...
Also make sure to veto project import if we couldn't close the existing project.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13215
Maybe also fixes some other weird crashes, we'll see.
2022-12-27 10:31:45 -05:00
Jeff Young
572c10b2c4
If we don't recognize a var then it's an error, not 0.0.
2022-12-27 13:50:44 +00:00
Jon Evans
ee0a41e3bc
Remove excess calls to SelectedItemsModified
...
We really don't want to post these events unless the *selected* items
were actually modified, since it results in a redraw of the properties
panel (which disturbs edit state and causes flicker on MSW).
Now the COMMIT system is responsible for sending this event iff the
commit touches items that are selected.
Side note: UpdateMsgPanel is useless on every app except pl_editor, so
it can probably be refactored/removed at some point.
2022-12-26 20:57:58 -05:00
Jeff Young
542ff699cf
Scale list columns with dialog width.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13278
2022-12-27 01:04:47 +00:00
Jeff Young
a18c2043c4
Minor adjustment for bitmap button size for GTK.
2022-12-26 23:13:22 +00:00
Jeff Young
340a8fb154
Default a library item selection if there is none.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13261
2022-12-26 14:11:46 +00:00
Wayne Stambaugh
78e2f0fd4d
Sheet instance handling improvements.
2022-12-26 08:30:03 -05:00
Jon Evans
fbaf4af489
Properties: Allow dynamic update of read-only state
2022-12-25 20:35:44 -05:00
Jeff Young
91dc79169a
CLang-tidy.
2022-12-24 22:20:03 +00:00
Pavel Dovgalyuk
9cd9d7a36a
Fix STRING_LINE_READER buffer overflow
...
STRING_LINE_READER::ReadLine contains the code for expanding the buffer
for the current line. But it modifies length before expanding.
Therefore expandCapacity function tries to read the memory outside
the buffer.
This patch postpones m_length modification, until buffer resizing
is finished.
2022-12-23 17:25:03 +00:00
Jon Evans
826f641dff
Properties: Add shape fill control
2022-12-22 17:45:16 -05:00
Jon Evans
4a0588db7a
Properties: translation fixes
2022-12-22 17:45:16 -05:00
Jon Evans
b16e4595d3
Properties: fix group display ordering
2022-12-22 17:45:16 -05:00
Mike Williams
eceee28c99
Schematic: add TODO for multiple netclass assignments
2022-12-22 14:00:51 -05:00
Jon Evans
66799b60f8
DbLib: Reconnect if connection is lost
2022-12-22 12:15:04 -05:00
Mike Williams
0958b9778b
Schematic: assigning netclass multiple times should replace, not add
2022-12-22 10:50:18 -05:00
Seth Hillbrand
1cc9792cdb
Fix snapping dist when disabling grid
...
The disable grid hotkey should allow the snap scale to be completely
determined by the snapSize and world scale. This prevents snapRange
from overriding in the case where grid is disabled.
Additionally, we disallow grid snapping when the grid scale is not
visible. This means that when zoomed out sufficiently to not show the
minor ticks, these minor ticks will not override a snap
Fixes https://gitlab.com/kicad/code/kicad/issues/12303
2022-12-21 17:47:45 -08:00
Seth Hillbrand
73c4ec0b85
Update displayed information in bug reports
...
Include two new pieces of information:
- Running platform
- Compiled platform (where these are different)
Additionally, we include information about the linux distribution where
it is available.
Fixes https://gitlab.com/kicad/code/kicad/issues/13225
2022-12-21 16:54:13 -08:00
Jon Evans
1590e48ec1
Use translated strings for property display
2022-12-21 18:03:15 -05:00
Seth Hillbrand
fcc4b202db
Set interpolation/anti-alias in plots
...
This doesn't do much for Linux, but the interpolation modes for MSW and
Mac should clean up lines a bit in plotting
Fixes https://gitlab.com/kicad/code/kicad/issues/10239
2022-12-21 12:03:47 -08:00
Jeff Young
e28f6ecc00
Fetch a better location for keepout area collsions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13220
2022-12-21 18:22:15 +00:00
Tanay Gupta
b0cbab5c4b
Footprint Editor: Focus search field when window is first opened
...
The search field on the Symbol Editor is focused when its window
is first opened. Similar behavior has been implemented in the search
field of the Footprint Editor with this change.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13100
2022-12-20 19:54:02 +00:00
Mike Williams
389f0655cd
Schematic: re-enable old break wire functionality, add slice
...
Also fix break/slice wires for multiple wires. The shortcut and code
always allowed it, the context menu just didn't appear.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13163
2022-12-19 15:55:59 -05:00
Roberto Fernandez Bautista
e3b8475a3d
Special case unspecified property value (i.e. <...>)
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13200
2022-12-18 17:07:08 +01:00
Jeff Young
9a8a25a596
Don't dismiss an infobar that isn't shown to start with.
...
On Mac (at least), we get a 1 second pause even if the bar wasn't shown.
Fixes https://gitlab.com/kicad/code/kicad/issues/13193
2022-12-18 10:55:37 +00:00
Jon Evans
13925074cb
Remove assert on ReplaceProperty
...
We can't guarantee initialization order for these, so it results in false warnings
2022-12-17 14:05:50 -05:00
J RB
5f0d26cbe2
Remove argument to wxButton::GetDefaultSize on wxGTK-3.0.x
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13181
2022-12-16 22:40:37 +00:00
Jon Evans
bc45e3f16e
Suppress wx error popups when locale is missing
2022-12-16 17:07:57 -05:00
Jon Evans
5abf73e3c9
Never call ReCreateMenuBar inside a menu event handler
...
As of wxWidgets 3.2, the wxWidgets event handler runs code after the
the client event handler that depends on the menu still existing.
Because there are potentially many paths to call ReCreateMenuBar from
within a menu event handler, let's just wrap this action in a CallAfter
to make sure it happens after the wx handler call completes.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13149
2022-12-16 16:37:51 -05:00
Jeff Young
0e2a4e3f15
Better handling of multi-monitor scaling.
2022-12-16 19:11:34 +00:00
Jeff Young
75a4de4744
Dim bitmap when button is disabled.
2022-12-16 01:22:50 +00:00
Seth Hillbrand
e91c039ed3
Prevent event stackup when init pages
...
The paged book initialization (and others) can generate events,
re-laying out the whole dialog multiple times during initialization.
This halts events during the layout period
Fixes https://gitlab.com/kicad/code/kicad/issues/13158
2022-12-15 11:39:03 -08:00
Alex
c66dc035c7
Clear loop points when resetting polygon/zone draw.
2022-12-15 19:02:22 +03:00
Wayne Stambaugh
84f927d057
Schematic import bug fix.
...
Check for already loaded schematics in the current sheet path as well
as the current project root sheet path to prevent multiple loads of
shared schematic. This bug was causing shared sheets to be loaded more
than once which caused instance data to get separated by each copy rather
than saved in one copy of the schematic which would result in all instance
data being lost except the last saved copy of the schematic. This bug has
been around forever and may be the cause of some unexplained schematic
instance data corruption issues. This bug does not apply when opening
the full project.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11076
2022-12-15 09:58:39 -05:00
Jeff Young
5984a6dddd
Fixup a few more collapsing textEditCtrls on Mac.
2022-12-14 15:13:29 +00:00
Mike Williams
756db0d542
Schematic: fix selection disambiguation not changing highlighted item
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13103
2022-12-14 10:08:19 -05:00
Jeff Young
77998d7c51
Better fix for not selecting all of netlist.
2022-12-14 14:13:25 +00:00
Jeff Young
355bfe1587
Blind attempt to fix MSW rendering bug.
2022-12-14 13:36:28 +00:00
Marek Roszko
2f8cc84551
Hotglue footprint to svg export
...
This needs additional work
2022-12-13 22:50:15 -05:00
Jeff Young
c0872364d4
Get rid of bloated bitmap buttons on wxWidgets 3.2.
2022-12-13 20:48:02 +00:00
Marek Roszko
f1f5fff072
Add cli export of symbols from kicad libraries
2022-12-12 22:44:26 -05:00
Jeff Young
d3228dbab2
Differentiate search panel font between Mac and others.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13145
2022-12-13 00:47:19 +00:00
Seth Hillbrand
ad9b983a27
Fix spelling
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13144
2022-12-12 15:29:02 -08:00
Jeff Young
3144459939
Fix issue with text edit boxes being too narrow on wxWidgets 3.2.
2022-12-12 20:45:48 +00:00
Jeff Young
6d73d9a08e
Split another couple of hairs in the never-ending "how big is a font".
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13009
Fixes https://gitlab.com/kicad/code/kicad/issues/13115
2022-12-12 17:37:17 +00:00
Jeff Young
2a32bc4372
Pay attention to indeterminate state in onUnitsChanged().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13127
2022-12-12 17:37:16 +00:00
Seth Hillbrand
c5d8dffca4
pcbnew printing: Handle scaling correctly
...
When scaling, we need to consider both the sheet size in pcbnew and the
paper size in the printer settings. When scaling 1:1, the output box
should always be the sheet
Fixes https://gitlab.com/kicad/code/kicad/issues/10913
Fixes https://gitlab.com/kicad/code/kicad/issues/12530
2022-12-12 08:38:20 -08:00
Marek Roszko
7e53663d5d
Add a bulk gerber export that's a wee bit smarter
2022-12-11 20:13:26 -05:00
Jeff Young
56aae7a147
Reduce compiler warnings.
2022-12-11 13:39:59 +00:00
Jeff Young
4e47b5c25f
Fix some layout and selection issues on Mac.
...
Some of these are due to moving to wxWidgets 3.2, but I'm not sure
all of them are. In particular, the need for CallAfter() in the
search pane's selection handler is probably just a wxWidgets bug on
Mac (the control lies about the current selection inside the event
handler).
Also sets better column widths in the search pane.
2022-12-11 00:56:46 +00:00
jean-pierre charras
75f1067642
GRAPHICS_CLEANER: fix bad detection of short Bezier curves that can be cleaned
...
eda_shape: small enhancement: when generating a polyline from the Bezier curve,
filter the last point if the last segment is shorter than the given min lenght
2022-12-10 18:19:09 +01:00
jean-pierre charras
f76811471e
Avoid an annoying compil warning with GCC 12.2
2022-12-10 14:48:47 +01:00
Alex
be43484bc7
Make build45DegLeader static.
2022-12-10 06:21:54 +03:00
Alex
3d2b1aaf90
Improve H/V/45 deg mode when drawing zones and polygons.
2022-12-09 19:11:56 +03:00
Mike Williams
a417aa6e69
Selection: provide disambiguate for deselections of multiple items
...
Don't assume we're a delayed drag if the user is using selection
modifers.
2022-12-08 14:12:12 -05:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Simon Richter
2214e853c1
Make a few variables const
2022-12-08 18:22:25 +00:00
Simon Richter
d6c6116e67
Calculate weighted column width locally
...
Multiplying the global variable also modifies all columns to the right,
which is not a problem right now because none exist, but might be in the
future.
2022-12-08 18:22:25 +00:00
jean-pierre charras
966f7bfa4c
Fix commit 0a881e09
, not working on wxWidgets 3.1.5/msys2
2022-12-08 15:39:10 +01:00
Jon Evans
2b0d7f65d0
Properties: sync wxPGGlobalVars map state with editor global state
...
Thanks to @dsa-t for suggesting this
(maybe)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12297
2022-12-08 07:55:57 -05:00
Jon Evans
0a881e091c
Fix build for gcc and wx < 3.1.6
2022-12-08 07:30:04 -05:00
Jon Evans
435651237c
Properties: Support overridden availability functions
2022-12-08 00:09:51 -05:00
Marek Roszko
2fc0cd68ed
Avoid crashing due to empty lib tables in cli
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13097
2022-12-07 23:56:03 -05:00
Jon Evans
33d76f63b0
Properties: save and restore splitter position
2022-12-07 21:38:33 -05:00
Alex
e03a91c9c7
Reduce static ratsnest opacity when moving items; tweak colors.
2022-12-07 21:01:56 +03:00
Jeff Young
b15913bd53
Support env variables in spice library paths.
...
Also removes a bunch of std::string stuff from the file handling in the
simulator. All our file handling, env variable expansion, project path,
etc. stuff is wxString based, and jumping through std::string in between
just makes it more complex and increases the potential bug surface.
Also fixes a bug where you'd get two error messages when a spice model
library wasn't found.
Also fixes a bug where you'd get a spice model library not found error
when the text field was empty.
Also fixes a bug where we'd try to absolutize a path starting with an
unresolved text or environment variable. If the path starts with a
variable it's probably absolute, and tacking on the project path in the
error message just obfuscates things.
Fixes https://gitlab.com/kicad/code/kicad/issues/13082
2022-12-07 15:07:25 +00:00
Marek Roszko
c0b5fe58c3
Implement output targeting of symlib/fplib upgrade per request
2022-12-06 21:20:27 -05:00
Jon Evans
ad8e5891d2
Properties: update evaluator locale when creating editors
2022-12-06 17:56:33 -05:00
Jon Evans
d435ba6485
Properties: improve handling of enter/return
2022-12-06 09:10:59 -05:00
Jon Evans
1a0c774940
Properties: Space to toggle booleans; fix arrow keys
2022-12-06 08:56:13 -05:00
Jon Evans
071a2ec46d
Properties: clean up some unit handling
...
Make sure units show up properly in editor on focus kill
Make sure editor shows correct value initially
2022-12-06 08:55:48 -05:00
Jon Evans
40f9a59255
Remove disconnects from SetControl
...
These aren't needed as the control is going to be destroyed by the grid,
and can cause a crash on exit if the control is destroyed before the unit binder.
2022-12-06 08:06:16 -05:00
Jon Evans
74fa88c0f6
Defer splitter calculation until next event
...
Windows doesn't have valid sizes in the size event
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13019
2022-12-06 08:05:28 -05:00
Jon Evans
c326c57e05
Properties: make sure to reset binder units when changing rows
2022-12-05 23:47:00 -05:00
Jon Evans
b673202a4e
Remove extraneous event binding
2022-12-05 20:44:47 -05:00
Wayne Stambaugh
5001555f0e
Fix crash in Altium schematic importer.
...
The crash was caused by an unhandled exception. The uncaught exception
caused a cacophony of null configuration setting pointers so guards were
added to prevent crashes should other exceptions occur that do not get
handled correctly.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13046
2022-12-05 20:20:01 -05:00
Jon Evans
d0024bd9f7
Properties: clear text ctrl from unit binder before it is destroyed
...
The lifetime of this text ctrl is managed by the property grid, so
we need to catch when it is hidden before destruction in order to avoid stale pointers being used to handle unit change events.
Credit to @dsa-t for the fix
2022-12-05 19:33:20 -05:00
Seth Hillbrand
77b763f8ba
Change binding with units
2022-12-05 15:34:23 -08:00
Seth Hillbrand
6f43915b25
Don't keep a stale iu reference around
...
The IU memory areas are const but we need to be able to update this when
the frame changes, so use pointers instead
2022-12-05 13:33:45 -08:00
Alex
6d513e7ecf
Expose changing arc edit mode in arc button context menu and Preferences
...
Ctrl+Space can still be used to cycle through modes.
Fixes https://gitlab.com/kicad/code/kicad/issues/5412
2022-12-05 21:28:16 +03:00
Jeff Young
295ef6588d
Fix uninitialized variable.
2022-12-05 14:42:05 +00:00
Jeff Young
b7d41e0e56
Update simulator with NUMERIC_EVAL, decimal separator processing, etc.
...
Also includes fixes for instance data and resolving of textvar
references.
Also includes virtual d'tors for IBIS parser to get rid of all the
compile warnings on CLang.
Fixes https://gitlab.com/kicad/code/kicad/issues/12357
2022-12-05 12:40:29 +00:00
Seth Hillbrand
54dd494ff2
Remove frame dependency from UNIT_BINDER
...
Place the frame information into the event data instead of keeping a
pointer (potentially invalid) into the frame
2022-12-04 16:50:27 -08:00
Jon Evans
a8cb0ee116
Properties: Use insertion order as display order
2022-12-04 17:20:34 -05:00
Alex
fc062e8a19
Restore tooltip message.
2022-12-05 00:41:11 +03:00
Alex
4482e9f634
Minor UI fixes.
2022-12-05 00:37:25 +03:00
Jon Evans
6e1f075daa
Remove debug code
2022-12-04 14:28:38 -05:00
Graham Keeth
ef83d01455
Minor string changes: "eeschema" / "pcbnew" in tooltips, and power port terminology
2022-12-04 14:29:57 +00:00
Jeff Young
f6822120b3
Enable tab and return commit in property grid.
2022-12-04 11:51:44 +00:00
Jeff Young
f805fd267f
Divorce UNIT_BINDER from wxFrame.
...
This allows us to supply Pcbnew or Eeschema as the unitsProvider when
called from the main frame.
Fixes https://gitlab.com/kicad/code/kicad/issues/13066
2022-12-04 11:51:44 +00:00
Jeff Young
96819f6c01
Better cache invalidation for text objects with references.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13059
2022-12-04 11:51:44 +00:00
Seth Hillbrand
234cda4197
Re-add PGInit call
2022-12-03 20:39:42 -08:00
Seth Hillbrand
9f551bfbf8
Remove the duplicate initionalize of pg globals
...
Testing to see if this is needed for windows builds anymore that we have
fixed the general init
Fixes https://gitlab.com/kicad/code/kicad/issues/12297
2022-12-03 17:14:36 -08:00
Seth Hillbrand
6a1acd84c2
Activate Clipper2 by default
...
Fixes https://gitlab.com/kicad/code/kicad/issues/git
2022-12-03 16:07:17 -08:00
Seth Hillbrand
92266635cc
Add an advanced config value for the minimum sliver
...
The hard coded value was too small for certain calculations. Better to
have a configurable value that is initially set to our error level to
allow for deviations that don't meet the visibility test for spikes.
These have become more apparent with Clipper2
2022-12-03 16:03:43 -08:00
Jon Evans
8f39dd69be
Properties: fix caption text in dark mode on GTK
2022-12-02 22:43:11 -05:00
Jon Evans
4134db3c47
GCC fixes
2022-12-02 22:38:15 -05:00
Jon Evans
3cf3d15590
Properties: fix display ordering
2022-12-02 22:17:08 -05:00
Jon Evans
3d0fcfe8af
Remove debug code
2022-12-02 21:55:52 -05:00
Jon Evans
70f9d8cab9
Properties: Add text orientation
2022-12-02 21:33:21 -05:00
Jon Evans
2091aaba2f
Properties: Move angles to UNIT_BINDER
...
Also add support for unicode degree sign in evaluator
2022-12-02 21:25:42 -05:00
Jon Evans
5e352d2a66
Properties: improve handling of unit binders
2022-12-02 19:37:44 -05:00
Jon Evans
9b2f1ad0b1
Properties: show base class groups
2022-12-01 23:18:42 -05:00
Jon Evans
ef3f2a8f1e
Properties: ignore shape props for textbox
2022-12-01 21:54:12 -05:00
Jon Evans
a5096bf28a
CLI: Fix macOS binary dir
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12799
2022-12-01 16:55:12 -05:00
Marek Roszko
bae8cb55c0
Rename the bom cli to pythonbom since we'll have a real bom system later
2022-11-30 19:56:59 -05:00
Jeff Young
f5770fe7e0
Actually free the projects before the settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10973
2022-12-01 00:05:21 +00:00
Alex
55a3946af8
Properties: Use a constant variable for PG_UNIT_EDITOR editor name.
2022-11-30 20:10:22 +03:00
Jon Evans
cfd52d8362
Properties: Fix sort order for base class props
2022-11-29 18:56:15 -05:00
Jon Evans
12b7e68703
Properties: Skipped group should not assert
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13028
2022-11-29 18:12:28 -05:00
Jeff Young
31eb91e9e5
Infobar for slow zone auto-refill.
2022-11-29 21:09:16 +00:00
Seth Hillbrand
5fc5a2132b
Fix Properties panel to reference the correct frame
...
The properties editors are global but the frame that they reference is
not static, so we need to be able to update the frame reference when
restarting pcb editor from the main window. This updates the frame,
being careful to remove the signalling when closing pcbnew but keeping
the instance of the editor in place.
Fixes https://gitlab.com/kicad/code/kicad/issues/12297
2022-11-29 09:24:41 -08:00
Jeff Young
8260f0ee13
Add support for unitless values to PCB_EXPR_EVALUATOR.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13016
2022-11-29 14:24:20 +00:00
Marek Roszko
21fed9fc8c
Hotglue a symbol upgrade function in cli
2022-11-29 00:00:45 -05:00
Marek Roszko
25d5defc10
Add cli for "fp" upgrade
2022-11-28 20:48:14 -05:00
Seth Hillbrand
4f6b853756
Don't use modifiers when moving with keyboard
...
The modifier keys on the keyboard control the motion spacing (Ctrl) and
shouldn't be confused with the modifier key used to disable grid
snapping when moving with the mouse (also Ctrl)
Fixes https://gitlab.com/kicad/code/kicad/issues/13027
2022-11-28 11:05:12 -08:00
Jon Evans
b2b3f5752f
Properties: Add grouping and sorting by creation order
2022-11-27 22:40:23 -05:00
Jon Evans
5bbe21f540
Properties: don't rebuild the panel when closing an editor
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12984
2022-11-27 14:29:16 -05:00
Jeff Young
ec9c6a8053
Separate creation of polygons for open and closed shapes.
...
This allows us to create a bounding hull from an open shape-line-chain,
which is useful for defining milled slots.
2022-11-27 18:29:41 +00:00
Jeff Young
740e193871
Increase bounding box of stroke text and the leader box of all text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13009
2022-11-27 15:27:30 +00:00
Jeff Young
387f1214f0
Add some heuristics to guess a better font overbar offset.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13010
2022-11-26 17:26:20 +00:00
jean-pierre charras
709ad14e74
Fix a compatibility issue with wxWidgets 3.1.5 and older
2022-11-26 08:31:30 +01:00
Jon Evans
96fe93618e
Properties: Stop sorting by name
...
It's more useful to have properties shown in add order,
since we can group them
2022-11-25 16:29:56 -05:00
Jon Evans
778d01c46b
Properties: More API differences in wx3.0
2022-11-25 15:24:38 -05:00
Jon Evans
773f444636
Properties: fix for wx 3.0, second try
2022-11-25 15:20:32 -05:00
Jon Evans
85a6ddfca1
Properties: fix for wx 3.0
2022-11-25 15:15:04 -05:00
Jon Evans
611c19016f
Properties: add support for string escaping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12975
2022-11-25 13:15:46 -05:00
Jon Evans
5061f0556f
Properties: implement ellipsization for name column
2022-11-25 12:37:47 -05:00
Jon Evans
396db7794d
Properties: add friendly names to shapes
2022-11-25 12:37:47 -05:00
Jon Evans
220ef6fb44
Properties: Add some missing footprint properties; cleanup
...
Add concept of "internal" properties that will be accessible from
Python/DRC but not shown in the Properties Manager
2022-11-25 12:37:47 -05:00
Jon Evans
696a1cd39d
Properties: improve handling of column splitter
2022-11-25 09:58:44 -05:00
Jon Evans
11e784cf10
Properties: specialize layer setting for footprints
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12480
2022-11-24 22:11:26 -05:00
Jon Evans
4285b38b74
Properties: Handle units changes correctly
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12885
2022-11-24 17:15:07 -05:00
Jon Evans
436129cb75
Use correct format specifier when displaying inches
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12925
2022-11-24 16:52:22 -05:00
Mike Williams
60d42a7b1e
Spelling: fix various suppress misspellings
2022-11-22 13:47:10 -05:00
Seth Hillbrand
62863d6c5b
Ensure that we clear deleted values
...
When throwing on an invalid value, we may end up freeing the same tree
twice. This is generally not an issue but we need to mark the freed
memory as null to avoid a double free
Fixes https://gitlab.com/kicad/code/kicad/issues/12981
2022-11-22 06:11:03 -08:00
Seth Hillbrand
7b1702b5fb
Use IsType() for selection testing
...
Straight Type() comparison breaks for the TYPE_LOCATE values
2022-11-21 05:02:06 -08:00
Alex
cda855fcd6
Fix build error.
2022-11-19 04:10:38 +05:00
Alex
d3aed6c408
Optimize hot loop in UpdateItems.
2022-11-19 04:02:05 +05:00
Jeff Young
bc271a8d15
Protect move tool from re-entrancy.
...
m_dragInProgress is usually sufficient, except when we haven't started
one yet. In any case, conflating the two is probably a bad idea.
Fixes https://gitlab.com/kicad/code/kicad/issues/12936
2022-11-18 17:08:38 +00:00
Jeff Young
c409646aad
Update message panel after rebuilding connectivity.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10122
2022-11-18 15:29:16 +00:00
Jeff Young
b09a106880
Split gerbview diff and xor into two separate view modes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10122
2022-11-18 15:29:16 +00:00
Alex
53b9baa5ba
Some refactoring around Gerber files extension checking.
...
Fixes a case where most Protel inner layer files couldn't be drag and dropped.
2022-11-18 09:55:34 +05:00
Alex
95b8fe26b4
Fix display and archiving of Protel gerber files in Project manager.
2022-11-18 04:39:18 +05:00
Alex
4b1994e554
Don't update hidden scrollbars.
2022-11-18 00:33:22 +05:00
Alex
dcb131c20d
Improve canvas responsiveness by better swap interval management.
2022-11-18 00:32:25 +05:00
Alex
6418441218
Fix status bar flicker.
2022-11-17 09:31:24 +05:00
Alex
c5c5a3fe91
Use a single-shot timer for auto-panning.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11425
2022-11-17 05:30:55 +05:00
Alex
5e7c4b734c
Small optimizations in DRC and SHAPE_POLY_SET.
2022-11-17 02:10:22 +05:00
Jeff Young
a61ac363c2
Excise the remaining occurrences of "Alias" for derived symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12895
2022-11-16 18:37:40 +00:00
Jeff Young
1b3f03a800
Don't feed wxWidgets negative column widths.
2022-11-16 13:33:55 +00:00
Jeff Young
13f5c78e89
More tightening of group parent lifecycles.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12908
2022-11-16 00:42:38 +00:00
Jeff Young
a0b6247a06
Try a different order of destruction.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10973
2022-11-16 00:42:38 +00:00
Wayne Stambaugh
8ad35604b4
Fix build error with wxWidgets 3.0.
2022-11-15 13:27:20 -05:00
Jeff Young
2db6b25b51
Allow setting "mixed" properties to a value.
2022-11-15 16:01:24 +00:00
Jeff Young
3af4e889b9
Unobfuscate wxAnyToVariant registration and remove global var hack.
...
Note that I don't have any data that the global var hack was causing
the bug, so this may or may not fix it. But it seems as good a candidate
as any.
Fixes https://gitlab.com/kicad/code/kicad/issues/12871
2022-11-15 16:01:24 +00:00
Jeff Young
93c6d99a6d
Move saving preferences out of the destructor.
...
For other reasons we wrap the adapters in a wxDataObject, which has
delayed destruction semantics, but that means the settings stuff may
no longer be around when the d'tor executes.
Fixes https://gitlab.com/kicad/code/kicad/issues/12371
2022-11-14 20:01:37 +00:00
Marek Roszko
39d5cc31d4
Add schematic xml bom output
2022-11-12 21:51:32 -05:00
Marek Roszko
3dd2ae762d
Refactor step export to use our normal board processing routines
2022-11-12 21:27:10 -05:00
jean-pierre charras
248181e62d
Fix Coverity and compil warnings.
2022-11-12 16:02:24 +01:00
Marek Roszko
29bf96f7f0
Sanitize the variable names in the 3d alias migration
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12683
2022-11-10 06:21:57 -05:00
Marek Roszko
43f039ef5f
Add netlist export cli
2022-11-09 22:37:55 -05:00
Jon Evans
d9d3ccd6eb
DbLib: Allow inheriting field properties from source symbol
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12856
2022-11-09 21:24:31 -05:00
Jon Evans
dbd498f451
Re-add keyword mapping
2022-11-09 20:50:01 -05:00
Jon Evans
3a15fa5e0f
Don't remove a read-only settings file
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12844
2022-11-08 23:27:26 -05:00
Jon Evans
c07477b94c
Move to explicit symbol properties mapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12845
2022-11-08 22:19:08 -05:00
Seth Hillbrand
056f45cd70
Fixup most intersecting polygon points
...
Remaining is the intersecting complex pad, so this keeps the error
message when drawing
Fixes https://gitlab.com/kicad/code/kicad/issues/12806
2022-11-08 16:05:04 -08:00
jean-pierre charras
9501f4303d
Rename CreateWindow to CreateKiWindow to avoid a collision name with a windows header
...
No code change, but it fix an issue specific to msys2 that bother me when
trying to fix issues with wx 3.0.x version
2022-11-08 12:31:07 +01:00
jean-pierre charras
cb3d215b6a
Fix compil and Coverity warnings.
2022-11-08 11:53:13 +01:00
Marek Roszko
cd30da179a
Round out the cli with position file export
2022-11-07 19:53:35 -05:00
Jeff Young
ae741b93e6
Resore push/pop-less PickerTool.
...
(Functionality was accidentallly lost when we removed the opt command
strings.)
2022-11-07 19:11:12 +00:00
Jeff Young
095f02e6ef
Fix encoding issues in Simulation Model dialog's property grid.
2022-11-07 15:03:18 +00:00
Jon Evans
32b3f24f8b
Thanks xorg
2022-11-06 18:27:18 -05:00
Jon Evans
f708dad5cd
Don't use frame events for PROPERTY_EDITOR_UNIT_BINDER
2022-11-06 18:26:17 -05:00
Jon Evans
dd94b2d3a7
Rename PROPERTIES to STRING_UTF8_MAP for clarity
...
This class has nothing to do with the properties system
2022-11-06 11:51:52 -05:00
Jon Evans
68de92313e
Properties: move to custom editor for distances; refactoring
...
Also fix display of angle values since EDA_ANGLE was introduced
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12290
2022-11-06 11:40:45 -05:00
Jeff Young
76ce580bd0
Don't use KiCad escape sequences for JS text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 15:21:38 +00:00
Jeff Young
be142af4d0
Another attempt at string encoding for JS inside a PDF.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-11-06 14:34:54 +00:00
Jeff Young
165c9bf68b
Reference assignment is not the same thing as pointer assignment.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12837
2022-11-06 12:01:06 +00:00
Jeff Young
b385a4b60a
Implement DarkMode for the Appearances Palette.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11734
2022-11-06 00:34:45 +00:00
Jeff Young
25f06eed8c
Move zone borders back to their "host" layer.
...
Zone borders shouldn't be affected by zone-opacity control; we always
draw them in full layer opacity.
Fixes https://gitlab.com/kicad/code/kicad/issues/12438
2022-11-05 16:50:54 +00:00
Jon Evans
995a153f27
Update nlohmann::json to 3.11.2
...
Also update json_schema_validator to match new deprecations
2022-11-05 10:53:57 -04:00
Jeff Young
cf581137d8
Handle multiple unitProviders in a WX_GRID.
...
This allows us to provide a more consistent and less buggy presentation
of the netclasses grid in both eeschema and pcbnew.
Fixes https://gitlab.com/kicad/code/kicad/issues/12826
2022-11-05 10:23:12 +00:00
Seth Hillbrand
de21eb5268
Remove errant debugging printf
2022-11-04 13:22:49 -07:00
Seth Hillbrand
685185bd68
Remove unneeded assert
...
Asserts should really only be used if the condition would trigger a
program error. These just need a warning
2022-11-04 11:49:50 -07:00
Bevan Weiss
4f634d7df7
Updated accelerating zoom controller to use default (non-accelerated)
...
zoom if changing direction.
Signed-off-by: Bevan Weiss <bevan.weiss@gmail.com>
2022-11-04 16:28:32 +00:00
jean-pierre charras
9dba54190e
PDF plotter: Encode '\' as "{backslash}" for CTX_JS_STR context.
...
This is a poor hack (similar to hack for the ' char), but it allows displaying
context menu when '\' is inserted in a property.
2022-11-04 07:31:23 +01:00
Seth Hillbrand
bd4c2df3ba
Suppress signedness warning
2022-11-03 15:08:45 -07:00
Jeff Young
4ad0eeefc6
Fix compile error on Mac.
2022-11-03 17:19:59 +00:00
Jeff Young
1b93b8c51b
Fix JS to support more Acrobat versions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12819
2022-11-03 17:19:59 +00:00
Sylwester Kocjan
a234d5a2c8
common,eeschema,pcbnew: path cleanup
2022-11-02 13:29:52 +00:00
Alex
e992bd13bf
Remove what looks like forgotten lines
2022-11-02 11:06:41 +05:00
Marek Roszko
b60c42ea41
Add schematic cli plotting
2022-11-01 23:34:49 -04:00
dsa-t
aeef215ffb
gal: Pass aReserve to drawLineQuad in drawPolyline.
2022-11-01 05:02:17 +00:00
Jon Evans
a5d685ff5c
Handle coordinate transforms in properties system
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12320
2022-10-31 23:01:52 -04:00
Seth Hillbrand
5be0ddca27
Draw degenerate lines as points
...
Rather than not drawing, which will miss some imported elements that
should be visible due to the line width, we draw a zero-length line that
appears as a point.
2022-10-31 16:18:38 -07:00
Mike Williams
6c43ace018
common: fix build (missing return)
2022-10-31 10:29:50 -04:00
Tomasz Wlostowski
f25d449d5f
JSON_SETTINGS: added direct serialization to a string (FormatAsString) and parsing
...
from explicitly provided file (bypassing the migration and settings framework). Used for
router regression tests.
2022-10-31 11:17:31 +01:00
Marek Roszko
0deebab8a8
Try and make the msg panel resize more correctly due to dpi
2022-10-30 18:34:58 -04:00
Marek Roszko
321d6e3ea8
Try a hackfix for windows icon scaling
...
Related https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-10-30 18:34:08 -04:00
Marek Roszko
c0f8810759
Don't fix the visibility icon size or it will never scale properly
...
Related https://gitlab.com/kicad/code/kicad/-/issues/11880
2022-10-30 15:03:00 -04:00
Jeff Young
a2679f62cd
Enormous hack to deal with JS encoding issues in PDF.
...
No, PDFDocEncoding (as spit out by encodeStringForPlotter()) does
not seem to work.
Fixes https://gitlab.com/kicad/code/kicad/issues/12782
2022-10-29 22:03:52 +01:00
Marek Roszko
0a134788d0
Implement cli for gerber, drill, pdf export of pcb
2022-10-29 11:56:10 -04:00
Marek Roszko
30211da69f
Move the cli definitions to kicad
2022-10-29 11:55:38 -04:00
jean-pierre charras
50d2237f06
command_export_pcb_dxf.cpp: switch to "C" locale before exporting the file
...
Fix also a minor Coverity warning
2022-10-29 09:45:45 +02:00
Wayne Stambaugh
fb21eb7457
Coverity issue fixes.
2022-10-28 13:01:23 -04:00
Jeff Young
fb8493d0bc
Move model pin editor to GRID_CELL_ICON_TEXT_POPUP.
...
wxChoice is hopeless on Mac (it still doesn't highlight on rollover),
and using a char for the "assigned" graphic isn't great.
2022-10-28 15:27:00 +01:00
Jeff Young
78db69bb48
Don't append '+' when modifier used on its own.
2022-10-27 18:03:07 +01:00
Jeff Young
58ac62d493
Return cursor to arrow when leaving search ctrl.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12764
2022-10-27 16:27:19 +01:00
Jeff Young
f6c441c434
Viewport switcher keys are platform-specific.
...
Also fixes a regression where ctrl-tab doesn't get recognized.
Fixes https://gitlab.com/kicad/code/kicad/issues/11778
Fixes https://gitlab.com/kicad/code/kicad/issues/10127
2022-10-27 14:28:11 +01:00
Wayne Stambaugh
6a0db3e7e2
Fix Coverity warnings.
2022-10-26 14:39:44 -04:00
Marek Roszko
ee92ace419
Fix some cli switch values
2022-10-26 07:10:19 -04:00
jean-pierre charras
5f7213e419
fix a compil warning
2022-10-26 08:03:48 +02:00
Marek Roszko
a7e1f668a7
Some cleanup of the cli functions
2022-10-25 23:26:23 -04:00
Jon Evans
a01de6bf53
Fix starting path in worksheet selection dialog when using env vars
2022-10-25 22:08:36 -04:00
Marek Roszko
2b8a29b662
Try and make the svg command handling warn a little, also default the output
2022-10-25 20:17:25 -04:00
Jeff Young
f480cbf93f
Treat internal copper layers as side-specific.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12726
2022-10-25 12:08:57 +01:00
Jeff Young
d37526ba42
Don't stroke outline font polygons, even with a really narrow pen.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12739
2022-10-25 11:58:25 +01:00
Jeff Young
4778122aa0
Flip anything on a side-specific layer, rather than physical layer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12726
2022-10-24 16:54:33 +01:00
Jeff Young
c8261d13a5
Better platform fidelity on Mac for SPLIT_BUTTON.
2022-10-24 00:14:12 +01:00
Jeff Young
064e7f0f2c
Dark mode hacks for SPLIT_BUTTON on OSX.
2022-10-23 17:56:44 +01:00
Jeff Young
cef7cd8f7c
Move default font to RENDER_SETTINGS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12723
2022-10-22 21:32:42 +01:00
Wayne Stambaugh
d78b41969f
Fix broken autosave when board is modified.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12700
2022-10-22 15:49:03 -04:00
Jeff Young
38c863c3f4
Attempt to fix nullptr error when looking up units scale in pl_editor.
...
(I can't be sure if this works or not because my M1 build won't launch
pl_editor for some reason.)
Fixes https://gitlab.com/kicad/code/kicad/issues/12717
2022-10-22 14:11:01 +01:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
Seth Hillbrand
d1bf889e71
Resolve embedded text vars
...
Title Block text variables are embedded into the pcb file and should
be used for resolving when the project file is missing
2022-10-21 08:37:37 -07:00
Jeff Young
0ae2a8483e
Debugging aid.
2022-10-20 18:37:48 +01:00
Seth Hillbrand
53fea46fed
Re-order headers to avoid X11 None def
...
X.h helpfully defines the word "None" because surely no one would ever
use that as a token, right? Right?
2022-10-19 20:04:00 -07:00
Seth Hillbrand
27add591ec
Add Clipper2
...
Currently this lives behind the advanced config flag `UseClipper2`.
Enabling this flag will route all Clipper-based calls through the
Clipper2 library instead of the older Clipper. The changes should be
mostly transparent.
Of note, Clipper2 does not utilize the `STRICTLY_SIMPLE` flag because
clipper1 did not actually guarantee a strictly simple polygon.
Currently we ignore this flag but we may decide to run strictly-simple
operations through a second NULL union to simplify the results as much
as possible.
Additionally, the inflation options are slightly different. We cannot
choose the fallback miter. The fallback miter is always square. This
only affects the CHAMFER_ACUTE_CORNERS option in inflate, which does not
appear to be used.
Lastly, we currently utilize the 64-bit integer coordinates for
calculations. This appears to still be faster than 32-bit calculations
in Clipper1 on a modern x86 system. This may not be the case for older
systems, particularly 32-bit systems.
2022-10-19 16:25:45 -07:00
Jeff Young
e3842514e7
Move courtyard collision setting to preferences.
...
Also cleans up PCBNew/FPEditor edit options panel to be more in sync
with each other.
2022-10-19 11:33:11 +01:00
Jeff Young
437d2c4589
Overhaul of remove-unconnected's zone filling and drawing strategies.
...
1) The highest priority zone that a via/pad collides with "owns" its
connectivity state. Once set, lower priority zones cannot change it --
and in fact, if they would have connected to it are forced not to.
2) The connectivity state goes with the zone fill state, and therefore
must be saved in the file.
3) Display of remove-unconnected's pads is no longer done in GetViewLOD()
(which isn't called for selected items), and is instead done in PCB_PAINTER.
This allows us to draw the full pad in outline mode when a via/pad is
selected which would otherwise only show the hole.
4) Note that in some cases this will still generate DRC errors -- in
particular when a via nearly collides with a higher priority zone it
won't get "owned" by that zone and may therefore have insufficient
clearance if said zone concludes it's unconnected and a subsequent
(lower priority) zone connects to it (causing it to now become flashed).
Fixes https://gitlab.com/kicad/code/kicad/issues/11299
2022-10-18 13:05:42 +01:00
Wayne Stambaugh
598b09821a
Coverity fixes.
2022-10-17 15:30:20 -04:00
Jeff Young
92f1ee556f
Don't fill drawing sheet rects with transparent fill.
...
It might make sense to do that with board and/or schematic items for
hit-testing or something, but it definitely doesn't make any sense for
the drawing sheet border.
Also, when reading in items with a transparent fill, treat them as
unfilled (otherwise we get filled with layer colour in at least PCBNew).
2022-10-17 17:51:11 +01:00
jean-pierre charras
6be87d41e1
Pcbnew, Print preview frame: remember last size & pos during a session.
...
This feature was already existing in Eeschema.
Fixes #10980
https://gitlab.com/kicad/code/kicad/issues/10980
2022-10-17 16:57:19 +02:00
Jeff Young
054649fa38
Formatting.
2022-10-16 18:39:37 +01:00
Jeff Young
390069cee9
Formatting. (No functional changes.)
2022-10-13 13:05:51 +01:00
Marek Roszko
d6f8ca9a2e
Patch out the install for argparse
2022-10-12 23:17:05 -04:00
Jeff Young
a02d156e5d
Improved auto-save message.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12589
2022-10-12 11:22:02 +01:00
Jeff Young
e02c05d38f
Add unit and eval support to WX_GRIDs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/1871
Fixes https://gitlab.com/kicad/code/kicad/issues/4285
2022-10-11 23:40:58 +01:00
Jeff Young
3221877fe8
Push autosave-require down in to EDA_BASE_FRAME.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11790
2022-10-10 14:03:52 +01:00
Jeff Young
be6f08deca
Code clarity. (No functional changes.)
2022-10-10 14:03:52 +01:00
Marek Roszko
3b63ce8a48
Don't use the 3d resolver config anymore
2022-10-08 14:27:10 -04:00
Alex
2577ebb94d
Increase dynamic ratsnest opacity for better visibility.
2022-10-07 21:50:12 +00:00
jean-pierre charras
b8dfbe02ad
Fix some issues in STEP exporter
2022-10-07 18:53:31 +02:00
Seth Hillbrand
863184e3dc
Ensure node count is signed
...
Fixes a broken commit from a0865082fb
2022-10-07 08:14:53 -07:00
Alex
d44a52ceee
Make arc endpoint theta consistent with polar coordinate system.
2022-10-07 08:35:14 +03:00
Jeff Young
19d270fe74
Text size sanity checking for TEXT_ITEMS_GRID.
...
Oh dear, there was a bunch going on here. Firstly the move from int
to long long int for ValueFromString() means that we were no longer
catching overflows (as we were C-style casting it back to int in many
places). But even when the overflow is caught, it would run in to
wxWidgets' empty string bug while trying to log it.
Fixes https://gitlab.com/kicad/code/kicad/issues/12577
2022-10-06 13:19:08 +01:00
Jeff Young
b52106aa37
Formatting and commenting.
2022-10-06 13:19:08 +01:00
jean-pierre charras
0a620816a8
Eeschema: edit arc: keep arc angle <= 180 degrees when moving a arc end.
2022-10-06 09:22:59 +02:00
Marek Roszko
40a279ae32
Hotglue the unit tests to work for now
...
The mocks never expected InitPgm to work and I accidentally fixed it for the kicad-cli
2022-10-05 17:12:32 -04:00
jean-pierre charras
92f70a9fa2
Eeschema: ensure arcs are < 180 deg when creating them.
2022-10-05 11:33:12 +02:00
Marek Roszko
3fe004fd1b
New kicad-cli will now be the cli interface
2022-10-04 22:24:13 -04:00
Seth Hillbrand
a0865082fb
Fix compile warnings
2022-10-04 17:06:45 -07:00
jean-pierre charras
0c7b6c3cbc
fix minor compil warnings
2022-10-04 19:51:51 +02:00
Jeff Young
2be9586c38
Improve default new-library destination logic to be more project aware.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12570
2022-10-04 17:56:00 +01:00
jean-pierre charras
4611817f25
Eeschema: fix a crash when invoking eeschema.exe with 2 filenames to open
...
Fix also a minor compil warning
2022-10-04 16:56:13 +02:00
Marek Roszko
7d16fba8f9
Fix launching of files
2022-10-04 07:32:22 -04:00
Mark Roszko
fb8a4c10f7
Shove kicad2step into pcbnew itself with a new cli
2022-10-04 01:53:37 +00:00
Seth Hillbrand
b716afd6f1
Clarify various uses of "Center"
...
Distinguish between the english verb "Center" and the noun "Center",
which may be translated differently
Fixes https://gitlab.com/kicad/code/kicad/issues/11109
2022-10-03 12:48:57 -07:00
Seth Hillbrand
46016cfc61
Remove duplicated text in Report Bug
...
Now that GitLab insists on inserting this text, we shouldn't duplicate
it in the Report Bug action
Fixes https://gitlab.com/kicad/code/kicad/issues/10939
2022-10-03 11:12:50 -07:00
Jeff Young
01e6491046
Fix side-effect of multi-select in lib trees.
2022-10-03 19:11:31 +01:00
Jeff Young
230762053d
Translate mod flags between wx and Kicad.
...
Also we have to use wxEVT_CHAR_HOOK instead of wxEVT_CHAR or up/down
end up getting handed to COMMON_TOOLS.
Fixes https://gitlab.com/kicad/code/kicad/issues/11034
2022-10-03 18:42:50 +01:00
Jeff Young
2422b9a7c8
Simplification, formatting, and spelling.
2022-10-03 18:42:50 +01:00
Jeff Young
e335c1c612
Fix for LIB_TREE hotkeys over canvas and possible fix for over LIB_TREE itself.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11034
2022-10-02 22:22:21 +01:00
Jeff Young
1fc5ecae6e
Minor dialog layout improvements.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12497
2022-10-02 11:45:30 +01:00
Jon Evans
7059ef9b89
Store netclass visibility separately from nets
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10290
2022-10-01 19:54:13 -04:00
Seth Hillbrand
1b38acd9c6
Add "Letter-like character" Omega for Unicode x2126
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12531
2022-10-01 16:39:00 -07:00
Seth Hillbrand
fdf9fcc24d
Fix missing token initializer
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12555
2022-10-01 12:15:49 -07:00
Seth Hillbrand
19378675f1
Ensure that token size is large enough
...
Input tokens can be arbitrary, so output needs to keep pace
Fixes https://gitlab.com/kicad/code/kicad/issues/12555
2022-10-01 11:30:30 -07:00
jean-pierre charras
efdb67aa64
Minor fixes.
2022-10-01 18:42:02 +02:00
Seth Hillbrand
93239516d9
Remove ID from property fields
...
ID was not maintained or used other than to ensure unique fields.
Instead of saving, we assign the known IDs to specific field names and
sequentially create new IDs on load
Fixes https://gitlab.com/kicad/code/kicad/issues/12390
2022-09-30 17:19:53 -07:00
Jeff Young
c0a666507c
Work around more instances of the wxWidgets color string locale bug.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12552
2022-09-30 20:56:25 +01:00
dsa-t
01572c0f7d
ADDED: Focus follows mouse between SCH and PCB editors (option).
2022-09-30 18:32:06 +00:00
Jeff Young
f2de3e9f67
Minor cleanup.
2022-09-30 13:02:08 +01:00
Seth Hillbrand
519084546e
Ensure dtor throws into catch block
...
Explicitly destruct the GAL context to get StopDrawing throws in the
proper try block
Fixes https://gitlab.com/kicad/code/kicad/issues/12117
2022-09-29 15:26:39 -07:00
Marek Roszko
8ae48bb093
Ensure the socket server is killed during destruction of the kiway player
2022-09-28 21:37:19 -04:00
Marek Roszko
f3be769095
Fix comment placement
2022-09-28 21:19:19 -04:00
Marek Roszko
0b1b37a75f
Try and avoid a crash by suppressing the socket events first before deleting
...
Might fix a sentry issue, unknown
2022-09-28 21:18:09 -04:00
Seth Hillbrand
3d3b7d839c
Prevent out of scope lambda use
...
Keeping a function reference is only in scope when the call is
immediately executed, not when it enters its own event loop.
This commit also excises one more onUpdateUI call as it is not needed
Fixes https://gitlab.com/kicad/code/kicad/issues/12395
2022-09-28 17:18:04 -07:00
Seth Hillbrand
18d7a1b427
Update contributions
2022-09-28 13:49:30 -07:00
Alex
4095172259
ADDED: Pack and Move Footprints, improved footprint spread algorithm.
2022-09-28 13:37:23 +00:00
jean-pierre charras
7d20418d6f
Fix compil issues and warnings, especially in ibis code.
2022-09-28 09:55:00 +02:00
Marek Roszko
46471247ff
Some header cleanup
2022-09-27 23:25:20 -04:00
Marek Roszko
1a43187fb7
Display the sentry uid in preferences
2022-09-27 19:31:32 -04:00
Marek Roszko
21c1c97bf3
Unbind search pane listview events on destruction to avoid event race
2022-09-27 19:16:29 -04:00
Alex
dc07ab9df1
Replace PROF_COUNTER with PROF_TIMER in some conditional places.
2022-09-27 14:07:47 +00:00
Jeff Young
9e580b3116
Other -> Unspecified and a couple of other terminology improvements.
2022-09-27 12:15:18 +01:00
jean-pierre charras
7584ccc758
Fix duplicate variable member m_userUnits, creating issues depending on
...
the way it was acceded (by name or by accessor).
2022-09-26 19:47:28 +02:00
Alex
d0b4fb7b32
Don't fail when reserving 0 vertices.
2022-09-26 12:18:45 +03:00
Marek Roszko
c50b4fb04f
Add relative to footprint 3d model path resolution
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2073
2022-09-25 22:56:16 -04:00
Jon Evans
375b530dad
ADDED: Column selection and reordering in symbol chooser
2022-09-25 22:49:49 -04:00
Marek Roszko
8e96751af2
Strip out and migrate 3d search paths in favor of env vars
...
This mainly stops reading/writing 3dresolver.cfg
We still keep some sillyness for kicad2step for now
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9164
2022-09-25 21:29:52 -04:00
Jeff Young
76a7a2b4bc
Fix asserting when drawing empty line of text.
2022-09-25 22:20:51 +01:00
Marek Roszko
2490ad1458
Fix search panel not remembering visibility
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12494
2022-09-25 11:56:41 -04:00
Ian McInerney
40ff7cb9bd
Fix some UI element spacing in settings panels
2022-09-25 15:41:39 +01:00
Ian McInerney
3a297093e6
Fix lambda capture in ACTION_TOOLBAR
2022-09-25 15:41:39 +01:00
jean-pierre charras
28165c6a31
SEARCH_PANE_TAB: fix a typo and add missing event handler.
2022-09-25 16:40:08 +02:00
Marek Roszko
8f52821cd4
Add missing clear of children memory in outline node
2022-09-25 08:47:28 -04:00
jean-pierre charras
7c44dbd9d6
Fix gcc compil warnings.
2022-09-25 11:01:25 +02:00
Marek Roszko
0595efd0a7
Make the page outline nodes goto page...
2022-09-24 23:37:55 -04:00
Marek Roszko
209e1b2086
Add naming of the outline page entries
2022-09-24 22:54:38 -04:00
Marek Roszko
a381a0acb2
Generalize bookmarks to support additional groups and names
2022-09-24 22:35:20 -04:00
Marek Roszko
6f8205235f
ADDED: Add outline support to schematic PDF and PCB plot
2022-09-24 21:45:48 -04:00
Ian McInerney
1683e552f7
Add/fix some variable initializations
2022-09-25 00:48:38 +01:00
Jeff Young
659a6e5b04
Replace macHack as its requirement sadly never went away.
2022-09-24 23:50:45 +01:00
jean-pierre charras
22cd2a3428
3D viewer: add option to show/hide fp not in position file.
...
Previously they were not shown, and this is really bad, because
"not in pos file" does not mean never mounted, and not even not mounted.
2022-09-24 13:58:31 +02:00
Jon Evans
dcfcfd5f29
Don't run context menu actions when clicking outside the menu
2022-09-23 23:44:08 -04:00
Jon Evans
f37086e840
Remove size handler that messes up column sizes
...
Could not reproduce an issue on wxGTK. If this causes problems
on other OS's, let's find a more appropriate fix
2022-09-23 22:08:33 -04:00
Ian McInerney
6310f84a57
Fix shadowed definition of EAGLE constant
2022-09-24 01:37:57 +01:00
Jon Evans
201b45b41a
Remove call that crashes MySQL connector sometimes
...
It no longer is necessary anyway
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12471
2022-09-23 19:28:04 -04:00
jean-pierre charras
bd28bd7a00
fix a few compil warnings
2022-09-23 18:30:42 +02:00
qu1ck
6ebb3baa3b
PCM: autoload libs from installed packages to global lib tables
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/9713
2022-09-23 16:16:13 +00:00
Jeff Young
bb1eb94aa0
Fix typo.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12467
2022-09-22 10:53:42 +01:00
jean-pierre charras
c44e54756a
search panel: fix a crash and a refresh issue after selecting a second item
...
at least on W10/msys2
2022-09-21 19:36:35 +02:00
Jeff Young
8eb68ee472
Add pin/unpin context menu to Symbol Chooser and Footprint Chooser.
...
Also moves some more code down into common so it can be shared.
Fixes https://gitlab.com/kicad/code/kicad/issues/12384
2022-09-21 14:45:12 +01:00
jean-pierre charras
25f1f7b0df
Fix a compil issue on GCC
2022-09-21 09:04:31 +02:00
Marek Roszko
ec25463fed
Allow multi-selecting from the search pane
...
Fix https://gitlab.com/kicad/code/kicad/-/issues/12476
2022-09-20 23:58:49 -04:00
Marek Roszko
30dbcbbcf5
Only search the current tab on events
2022-09-20 23:38:06 -04:00
jean-pierre charras
f851526c67
Plotters: make virtual void PLOTTER::Arc() using arc angles protected.
...
Using arc angles to plot an arc is really error prone due to different
options between plotters, and angles defined in Kicad, using this version of
arc plotting from Kicad is no longer allowed in Kicad code.
2022-09-20 18:55:20 +02:00
Jeff Young
7f34586c7e
Allow text variable resolution through properties in drawing sheet text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12473
2022-09-20 15:28:05 +01:00
jean-pierre charras
bbaf5a21c2
Eeschema: fix a plot issue with arcs.
...
Arcs are really error prone, due to different Y axis orientation, and geometry transforms.
Probably we should remove plot and print functions using arc angles as parameters
that are a can of worms.
Fixes #12465
https://gitlab.com/kicad/code/kicad/issues/12465
2022-09-20 16:04:17 +02:00
Jeff Young
7e8b6083f4
Try to find a better brace highlight color strategy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12467
2022-09-20 13:31:38 +01:00
Jeff Young
30a4d3d2de
Coverity fixes.
2022-09-20 00:19:15 +01:00
Jeff Young
7fe3999457
Fix a bit of fall-out from making command strings non-optional.
2022-09-20 00:08:12 +01:00
Jeff Young
64a6fc0fd4
Push UNITS_PROVIDER down into a low-level mixin.
...
This allows us to also construct cheap UNIT_PROVIDERs for specific
tasks when necessary.
2022-09-19 17:10:59 +01:00
Mike Williams
9304607624
TOOL_EVENT: make command string non-optional
...
We're getting segfaults in places where this isn't checked. Also, add
some asserts so we can catch bad tool push/pop.
Removes all uses of GetCommandStr() and makes it private.
2022-09-19 10:23:09 -04:00
Mike Williams
b7ba24b2d9
TOOL_EVENT: fix lifetime issues with const aEvent& refs
...
Without this the event is on the stack, and as soon as the tool calls
Wait(), the event will be deallocated. The aEvent reference will then
point to invalid memory.
2022-09-19 07:59:11 -04:00
Jeff Young
45d6b4a9fc
Readability improvements.
2022-09-19 11:18:20 +01:00
Alex
bdf4cf51b8
Add a missing statement in segments reservation.
...
Also adds an assert in FinishItem.
Fixes https://gitlab.com/kicad/code/kicad/issues/12448
2022-09-19 02:36:21 +00:00
Marek Roszko
63295cfb9e
Remove unused vars
2022-09-18 08:49:07 -04:00
Marek Roszko
f26a6f76e4
IUToMils should return int
...
It was already truncating even in old code...lets just clean this up
2022-09-17 09:27:27 -04:00
jean-pierre charras
97963a2bba
Better after base_units.cpp changes in python stuff.
...
Move an include to kicad.i
2022-09-17 11:21:48 +02:00
Marek Roszko
ece23d434b
Split up Double2Str to a format function to make its use case clear
2022-09-17 00:10:22 -04:00
Marek Roszko
59a9ddac20
Convert the primary file io formatter for doubles
2022-09-16 23:20:15 -04:00
Marek Roszko
3d5913c825
Remove convert_to_biu.h, merge contents to base_units.h
2022-09-16 21:09:28 -04:00
Marek Roszko
0f2411587e
Remove Millimeter2iu
2022-09-16 21:09:27 -04:00
Marek Roszko
7a5829f8d6
Move IU2Mils
2022-09-16 21:09:27 -04:00
Marek Roszko
61e11d6896
Strip out Mils2Iu
2022-09-16 21:09:27 -04:00
Marek Roszko
ee48c8d232
Remove some more
2022-09-16 21:09:26 -04:00
Marek Roszko
a8613ee80f
Combine Iu2Millimeter & remove PcbMm2iu
2022-09-16 21:09:26 -04:00
Jeff Young
85e8d1eb38
Try re-organizing the events for the search ctrl to allow MSW icon to be shown.
...
See further comments in bug report.
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-16 17:04:46 +01:00
Jeff Young
4de264ddaa
Don't steal up/down arrows from textboxes and the like.
2022-09-16 16:52:26 +01:00
Jeff Young
4f453d6b92
Remove turning the cursor on in FocusOnLocation.
...
We don't (at present) have any good way to turn it back off.
Fixes https://gitlab.com/kicad/code/kicad/issues/12440
2022-09-16 16:44:18 +01:00
Jeff Young
cf1565a16a
Bug fixes for layer expression processing.
...
1) Push a VAR onto the stack, not a resolved value
2) Don't collapse a PCB_LAYER_VALUE to a VALUE during processing
3) Make sure we run overloaded operators from the correct side
Fixes https://gitlab.com/kicad/code/kicad/issues/12437
2022-09-16 14:14:43 +01:00
Mark Roszko
b00178adb3
Nuke base_units from orbit
2022-09-16 04:38:10 +00:00
Jeff Young
9a4a68fb5e
Hide search button on MSW.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-15 23:23:23 +01:00
Jeff Young
a21d24a4c8
Experiment with loading recent searches into the search menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11743
2022-09-15 14:44:02 +01:00
Jon Evans
da9be1a812
ADDED: Multi-selection cut/copy/paste in symbol editor library tree
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11505
2022-09-14 22:20:38 -04:00
Jeff Young
c48286b879
Fix missing variable initialization.
2022-09-15 00:45:29 +01:00
Jeff Young
12ee8b5d7c
Improve DRC cross-probing a bit.
2022-09-15 00:45:29 +01:00
lulu731
0180bcf90a
ADDED: Implement Drag and Drop
...
dropping files to Kicad manager :
*.kicad_pro, *.pro -> open project;
gerber and job files -> open in Gerbview editor;
Eagle and Cadstar files -> open project.
dropping file to schematic editor -> append schematic;
dropping library file to Symbol editor -> add library;
dropping board file to PCB editor -> append board;
dropping library or footprint file to Footprint editor -> add library or import footprint;
dropping ZIP file or gerber files to Gerbview editor -> open files;
dropping sheet file to Drawing Sheet editor -> open sheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11638
2022-09-14 22:28:09 +00:00
kliment
b97f9ea329
Add support for symbol unit display names in eeschema and symbol editor
2022-09-14 22:11:37 +00:00
dsa-t
bd8b737c44
GAL: Do better job at reserving vertices.
2022-09-14 16:07:47 +00:00
Mark Roszko
75ae0d8e5e
Revert "Use {fmt} for double -> string conversions"
...
This reverts commit 03fff6e58d
2022-09-14 10:56:50 +00:00
Jeff Young
281b9d405a
ADDED ability to specify where pad number (& net name) go on custom shaped pads.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6627
2022-09-14 11:37:20 +01:00
Marek Roszko
03fff6e58d
Use {fmt} for double -> string conversions
...
Faster at printing floats than sprintf due to the modern algos
2022-09-13 23:17:15 -04:00
Mark Roszko
f304e2d4f6
ADDED: Search/inspect pane
2022-09-14 02:59:57 +00:00
aris-kimi
7bd8cfd7f9
Added common option to hide scrollbars
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9093
2022-09-13 22:15:27 +03:00
jean-pierre charras
bde2d388f1
Fix a very serious memory leak in OUTLINE_FONT::getTextAsGlyphs().
2022-09-13 17:55:12 +02:00
Wayne Stambaugh
4f3db82c68
Add debugging support for KiCad2Step command line generation.
2022-09-12 14:30:07 -04:00
Mike Williams
9cda5e200c
Hotkeys: Swap on Shift S and revert old actions back to S
2022-09-12 14:18:54 -04:00
Mike Williams
37d2addf0e
Icons: add swap
2022-09-12 11:11:49 -04:00
Mike Williams
f70e1d0f22
SCH/PCB: Set Swap hotkey to 'S'
...
* Move Add Sheet to Shift+S in Schematic Editor
* Move Set Grid Origin to Shift+S in PCB Editor
2022-09-12 11:11:49 -04:00
Mike Williams
fcfb9cc5ad
Selection: track selection order
2022-09-12 09:39:43 -04:00
Jeff Young
d95847ae79
Add missing format specifier to UnescapeString.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9542
2022-09-12 01:48:23 +01:00
Jon Evans
b4e71de89f
LIB_IDs can have forward slashes
2022-09-11 10:11:25 -04:00
Jeff Young
1b104f20b6
Don't give Scintilla a colour with alpha; it doesn't know what to do.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10829
2022-09-11 13:08:31 +01:00
Jeff Young
da7eaeffd2
Move IsOK() to wxRichMessageDialog so it handles <ESC> properly.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12360
2022-09-11 12:21:16 +01:00
Jeff Young
a9877ab117
Include markdown files in project view.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12178
2022-09-10 21:11:24 +01:00
Jeff Young
52ea9d0bc5
Don't allow preview canvases to steal focus when keyboard navigating preferences tree.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10407
2022-09-10 20:15:49 +01:00
Jeff Young
d5430906d4
Make sure cursor settings get saved.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11663
2022-09-10 18:43:32 +01:00
Jeff Young
b95d9d660d
Move gerbview colors to preferences dialog.
2022-09-10 16:11:24 +01:00
Jeff Young
f87bf3c46d
Special case up-key so it can get past headers in paged dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10078
2022-09-10 09:31:27 +01:00
Seth Hillbrand
09ef7c8f1e
Add RPT_SEVERITY_DEBUG for developer-type messages
...
Move a bunch of importer messages out of the user-visible space as they
are not information that the average user can act on.
2022-09-09 17:21:47 -07:00
Jeff Young
59f546ced0
Allow recursion up the sheet hierarchy for text variable resolution.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11953
2022-09-10 00:04:20 +01:00
jean-pierre charras
df35576cf9
fix my previous commit ( c0661468
) broken.
2022-09-09 19:00:47 +02:00
jean-pierre charras
c06614689e
OPENGL_GAL: disable bitmap image caching due to serious issues (memory leak)
...
It was re-enabled by commit cbc3bfbf
.
The current code to handle cached bitmaps is no longer compatible with the
current code.
Many cached items are created because a lot of clones are used to manage bitmap images.
Cached items are never cleaned, so a lot of memory is never freed after
using these temporary clones
And caching items do not significantly speedup drawings.
2022-09-09 18:37:30 +02:00
Jeff Young
f179754118
Implement add-new-on-return for some of our grids.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12335
2022-09-09 13:41:13 +01:00
Marek Roszko
087550ebd3
Get 3d plugins working for running from build dir
2022-09-08 21:49:10 -04:00
jean-pierre charras
c13b938a4b
Free memory when unused, forgotten in my commit d4feb59e
2022-09-08 13:07:36 +02:00
jean-pierre charras
d4feb59ed9
OPENGL_GAL, draw bitmap: Rebuild the bitmap cache if the bitmap itself was rotated.
...
Fixes #12378
https://gitlab.com/kicad/code/kicad/issues/12378
Fix also a Coverity warning.
2022-09-08 12:00:43 +02:00
Jeff Young
9523586bf1
Remove atrophied PCB NO_CONNECTS layer and its colour.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12316
2022-09-08 00:28:31 +01:00
Jeff Young
6f5281258e
Separate text-thickness clamping into strict and lenient modes.
...
We used to use the bold setting, but since PCBNew allows you to
directly define the width you end up with settings in between normal
and bold that get clamped to the normal max.
Fixes https://gitlab.com/kicad/code/kicad/issues/12367
2022-09-08 00:28:30 +01:00
Marek Roszko
89310bc403
"Cleaner" pan fix and add internal setter on state
2022-09-07 07:19:39 -04:00
Marek Roszko
59e9225619
Remove accidental debug code
2022-09-06 23:09:07 -04:00
Marek Roszko
971a8489b3
Hackfix the autopan on Windows
...
Autopanning is kinda doesn't jive with how events work on Windows
This is a hackfix for testing
Kinda fix https://gitlab.com/kicad/code/kicad/-/issues/11425
2022-09-06 23:07:59 -04:00
Jon Evans
1520a1d372
Use cached untranslated header for looking up width
2022-09-06 09:18:34 -04:00
Jeff Young
b80824951e
Clean up some of the PDF hypertext stuff, and add opening HTTP[S] urls.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12153
2022-09-06 13:59:52 +01:00
Jeff Young
8afc1db7a6
Property popups for symbols, labels, sheets, and footprints in PDF.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5521
2022-09-06 13:59:52 +01:00
Jon Evans
90996d0698
Don't toggle checkboxes selected rows if only one row is selected
2022-09-05 16:50:54 -04:00
Jon Evans
e294fe2074
ADDED: Dynamic field columns in symbol chooser
...
CHANGED: Symbol chooser search now considers custom symbol fields
Visible columns can be controlled in database libraries.
In standard KiCad libraries, we show columns for all custom fields for now.
Customizable column visibility will be added in the future.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11946
2022-09-05 16:38:14 -04:00
Roberto Fernandez Bautista
6013c796dd
Fix TRANSFORM::MapAngles (Third time lucky?)
...
Use epsilon value to decide whether we should swap the angles
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12346
2022-09-04 23:21:29 +02:00
Jeff Young
895a8a8dbc
Work around focus issues for status popups.
...
Autoscroll wasn't working on Mac because the status popup's panel
has the focus. This *may* also fix a problem on MSW of the auto-scroll
not being cancel-able.
Fixes https://gitlab.com/kicad/code/kicad/issues/11425
2022-09-04 21:08:01 +01:00
Jon Evans
26ba8e1938
Don't use recursive mutex for nicknames anymore
2022-09-04 13:01:32 -04:00
Jon Evans
a5246a6df7
DbLib: Support showing field names
2022-09-04 13:01:32 -04:00
Jeff Young
71724bea0c
Remove curly brace from string encoding.
...
It causes issues with formatting constructs and text variable refs,
and it's not a reserved character even in filenames.
Fixes https://gitlab.com/kicad/code/kicad/issues/12351
2022-09-04 10:34:32 +01:00
Jeff Young
efae2bbb4c
Better feedback for netclass assignment patterns.
2022-09-03 21:33:56 +01:00
Jeff Young
c30a557810
ADDED netclass assignment from PCB canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
qu1ck
977b6cd8f3
PCM: add ability to pin packages
...
Pinned packages don't affect available update notification and will not
be updated with "Update All" button. Manual update is still possible but
will trigger a confirmation dialog.
2022-09-03 17:07:55 +00:00
Roberto Fernandez Bautista
112f089485
Fix TRANSFORM::MapAngles for other transformations than y=-y
...
Tested on transformation that results in: y=-y & x=-x
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12345
2022-09-03 00:28:15 +02:00
Jon Evans
b0aba0fdf3
Cache works better with unique keys
2022-09-01 23:11:35 -04:00
Jon Evans
60f6bb8c77
DbLib: Fixes for MySQL ODBC driver
...
SQLSetConnectAttr crashes for this driver, and SQLSetStmtAttr is the ODBC3 way anyway.
2022-09-01 00:24:56 -04:00
Jeff Young
9188838e50
RIP EDA_RECT.
2022-08-31 23:57:24 +01:00
Jeff Young
b4492e0bd2
More EDA_RECE yeetage.
2022-08-31 17:19:50 +01:00
Jeff Young
f17a865593
Move EDA_ITEM hitTest to BOX2I.
2022-08-31 17:18:45 +01:00
jean-pierre charras
3857e68452
Python, swig: add definition of BOX2I
2022-08-31 17:18:46 +02:00
Jeff Young
2dc6300501
Move EDA_ITEM bounding boxes to BOX2I.
2022-08-31 10:16:55 +01:00
Jon Evans
ae879c8f02
DbLib: Add single-row query cache
...
Since single-row queries are performed rapid-fire during certain actions like
stepping through the symbol browser, there is high value in caching them for
a small amount of time. The default cache parameters will keep results for
10 seconds, which errs on the side of getting fresh data from the database
on most user interactions.
2022-08-30 22:18:36 -04:00
Jeff Young
5679b9dbdc
Remove a few EDA_RECT instances.
2022-08-31 01:22:49 +01:00
Jeff Young
0c8787cbb9
Some more wxPoint/EDA_RECT yeeting.
2022-08-31 00:44:33 +01:00
Seth Hillbrand
b736460e71
Move optional access from value() to *operator
...
`value()` throws. Where we check for existence, we don't need to use
the throwing version and should just use the unprotected variant
2022-08-30 13:59:39 -07:00
Seth Hillbrand
91fbb5c957
Don't prevent immediate actions while router active
...
Immediate actions that can take place are useful. We should only be
preventing immediate actions while actively routing or dragging
Fixes https://gitlab.com/kicad/code/kicad/issues/12311
2022-08-30 10:31:29 -07:00
Jeff Young
63386ba64d
Pointer safety for ERC/DRC dialogs.
...
Also makes the "Edit ingored violations" easier to find.
Fixes https://gitlab.com/kicad/code/kicad/issues/12308
2022-08-30 12:07:19 +01:00
Marek Roszko
8dddc07f26
Remove #ifndef that's redundant
...
This seems to date back to once upon a time when gerbview didn't even use base_units
2022-08-29 23:24:48 -04:00
Marek Roszko
a8a75a91e1
Try and fix file encoding
2022-08-29 20:57:14 -04:00
Marek Roszko
03aa63bd50
Move 5 helpers to EDA_UNIT_UTILS since they aren't iu specific
2022-08-29 20:11:03 -04:00
Marek Roszko
99f8bb3219
panel_gal_display_options can be common
2022-08-29 18:18:38 -04:00
Marek Roszko
f0956e48f2
Make EDA_TEXT common
...
Since EDA_TEXT is a base class, we can just force the child classes to pass the correct iu scaled size
ALLOW_BOLD_THICKNESS removed because it's a pre-custom font holdover
2022-08-29 07:31:03 -04:00
Marek Roszko
1a7157fe37
Remove unused include
2022-08-29 07:31:03 -04:00
Marek Roszko
b1eff8abd4
Fix leftover base_screen.cpp
2022-08-28 19:41:52 -04:00
Marek Roszko
5ebd3b2d80
Make EDA_SHAPE common
...
Looks like it's dependency on unit macros was dropped some time ago
2022-08-28 19:35:41 -04:00
Jon Evans
ba3e31bd09
GRID_TRICKS: Allow toggling checkboxes in a set of selected rows
2022-08-28 18:30:08 -04:00
Jeff Young
48f77973da
Another try at getting the Link combobox working on MSW.
2022-08-28 23:25:01 +01:00
jean-pierre charras
abc7335fd7
Cosmetic enhancement: add two missing icons
2022-08-28 16:01:26 +02:00
Jon Evans
474d732d94
Fix for wx3.2
2022-08-28 08:53:25 -04:00
Jon Evans
7d73376bbd
Fix assertion when no netclass assignments exist
2022-08-28 08:28:13 -04:00
Jeff Young
95fd7cb80a
Move wxComboBox to wxBitmapComboBox in hopes it will work better.
...
(Not sure if it solves the MSW issues yet, but at least it highlights
the items in the dropdown on rollover on OSX.)
Also added some text to the dropdown menu for intersheet references in
the PDF.
2022-08-28 12:05:27 +01:00
Jeff Young
c0d2052e4b
PDF hypertext menus for intersheet references.
2022-08-27 23:58:13 +01:00
Jeff Young
560dc7d2b6
Underline for hypertext rollovers.
2022-08-27 23:58:13 +01:00
Jon Evans
49354e52a8
Add support for sub-libraries concept
...
Sub-libraries allow a single-level hierarchy inside a symbol library.
This is useful for database libraries and for supporting other EDA library types where a
single file can contain multiple logical groupings of symbols.
2022-08-27 18:47:39 -04:00
Roberto Fernandez Bautista
a76d1a791d
Hyperlinks: Don't forget about file:// protocol
2022-08-27 23:16:28 +01:00
Roberto Fernandez Bautista
f73a3f852e
Hyperlinks: Fix URL validation for https
2022-08-27 22:45:19 +01:00
Jeff Young
122a6d7f46
Move hypertext linking to user-page-numbers.
...
Also moves most navigation code to SCH_NAVIGATION_TOOL.
Also changes page number href to anchor syntax ('#foo').
Also adds hypertext processing to SCH_TEXTBOXes.
Also adds combobox with schematic pages to text properties dialog.
2022-08-27 19:17:43 +01:00
Roberto Fernandez Bautista
9b007ca4bf
ADDED: Go to page hyperlinks in schematic editor (virtual page numbers)
...
The problem is that "real" page numbers can be duplicated, so we work around it
by using virtual page numbers instead which are guaranteed unique.
Example "goto:3" will go to page 3. If customised page numbers are used such as
a, b, c, then to go to page b, we should specify goto:2 (i.e. the virtual page
number).
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
5d90f3f54f
WIP - fix up parsing + generalise to the pcb
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
3cd867e656
WIP - add hyperlinks to pages within pdf
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
f788945cf4
Add pdf output to hyperlinks
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
366b0ab08b
Fix variable naming in pdf plotter
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
20ed9b475b
Configurable hyperlink hovering color
2022-08-27 19:17:42 +01:00
Roberto Fernandez Bautista
840bcffefb
ADDED: Hyperlinks on text items in Schematic Editor
2022-08-27 19:17:42 +01:00
Marek Roszko
9acc5ac7ea
base_screen became free of base_unitry awhile ago
2022-08-27 14:02:51 -04:00
Marek Roszko
bf964d8678
Commonize page_info by simply making the Iu scale a parameter on call.
2022-08-27 13:36:00 -04:00
Roberto Fernandez Bautista
7d5bdd23de
more cleanup TRANSFORM::MapAngles
2022-08-27 12:51:33 +01:00
Roberto Fernandez Bautista
5cae80d737
Cleanup asserts in TRANSFORM::MapAngles
2022-08-27 12:51:33 +01:00
Roberto Fernandez Bautista
029cc65b34
EDA_SHAPE: Remove m_upsideDownCoords hack (Fixes hitTest routine)
2022-08-27 12:51:32 +01:00
Roberto Fernandez Bautista
2812794742
Move TRANSFORM to common
2022-08-27 12:51:32 +01:00
jean-pierre charras
4b5c5aa6b6
Preferences dialog: avoid crash on opening if a dll is missing.
...
Fixes #12273
https://gitlab.com/kicad/code/kicad/issues/12273
2022-08-27 11:36:37 +02:00
Jon Evans
300d92438c
Allow hiding symbol library tables from symbol chooser
...
Hidden but loaded libraries are useful when using database libraries
2022-08-26 20:18:40 -04:00
Jon Evans
d22fc24d9e
Attempt to fix MSVC build
2022-08-26 12:51:14 -04:00
jean-pierre charras
5c7f1083c7
database_connection.cpp: Fix compil issues on msys2. these issues are
...
due to "old" (or not existing) types used in sql.h
2022-08-26 18:15:57 +02:00
Jeff Young
3da2f79d0e
Fix initialisation order issue in PANEL_SETUP_NETCLASSES.
2022-08-26 17:05:25 +01:00
Seth Hillbrand
146495672e
Utilize our combine_hash routine for multiple hash
...
We should be using the one routine every time we want to build a hash
from indepedent values rather than rebuilding it differently in multiple
places
2022-08-26 08:45:13 -07:00
Seth Hillbrand
06786c34d7
Blacklist hashes for 2d integer elements
...
The hash table for integer hashes is extremely limited and places most
elements in the same buckets. This leads to a linear search time for
structures built on this.
This blocks hashes, directing the coder to utilize std::set or std::map
structures instead of hash tables for implementing integer-based
lookups.
2022-08-26 08:43:37 -07:00
Seth Hillbrand
ed02d7c974
Spread bitmap store hash table elements
...
XOR of two sequential ints makes for an inefficient hash table. The
hash_combine function is intended for this purpose
2022-08-26 08:43:37 -07:00
Jon Evans
ae6a2a6443
ADDED: Database libraries MVP
...
Allows placing parts from an external database that reference symbols from another loaded library.
Includes:
- nanodbc wrapper
- database schematic library plugin
- basic tests
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7436
2022-08-26 10:51:13 -04:00
Jon Evans
31c24f4421
Add nanodbc
2022-08-26 09:38:11 -04:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Seth Hillbrand
c491cd01c5
Silence property warnings
2022-08-25 13:39:38 -07:00
Roberto Fernandez Bautista
8a02f2f809
DIALOG_PASTE_SPECIAL: Set focus on OK button
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12285
2022-08-25 20:25:23 +01:00
jean-pierre charras
a306246558
Fix a few (minor) compil and Coverity warnings.
2022-08-25 20:21:00 +02:00
jean-pierre charras
27c31061b1
Set locale in SaveToFile routine before calling json stuff.
...
It avoid wxWidgets alerts about locale when running some python scripts
2022-08-24 07:36:57 +02:00
Marek Roszko
e30f059b43
Silence uninitialized warning
2022-08-23 23:51:42 -04:00
Marek Roszko
fc99b3ba95
Don't link gdiplus everywhere anymore
...
Tested on msys2 which is the only place it would have been buggy
CMake seems to share the gdiplus linkage with the other dependencies automatically now
2022-08-23 23:51:35 -04:00
Marek Roszko
e0f28fc4e1
Replace wxFindReplaceData with our own container
...
By dropping the flags, we can be strict with options.
Also it makes future usage of search functionality a little more "UI" framework independent
2022-08-23 22:16:51 -04:00
Seth Hillbrand
7a8b188569
Fix Sentry crash for font loads
...
We cache newstroke loading, but if we have threaded loads, we might ask
multiple threads to load the newstroke font at the same time. This
causes conflicts in the vector allocations->crashes
2022-08-23 09:51:20 -07:00
Jon Evans
284917b999
Fix assertion when rendering layer editor
2022-08-22 21:32:33 -04:00
Roberto Fernandez Bautista
7208ceb5f1
Handle mils in property panel
2022-08-22 21:32:33 -04:00
Roberto Fernandez Bautista
bfdb39f418
Properties Panel: Plain-language descriptive noun function of EDA_ITEM
2022-08-22 21:32:33 -04:00
Roberto Fernandez Bautista
f5a75a4001
Minor nullptr fixes
2022-08-22 21:32:33 -04:00
Jon Evans
f5597238fb
Properties: add color swatch to layer enum
2022-08-22 21:32:33 -04:00
Jon Evans
239fd29da4
Use checkbox mode for boolean props
2022-08-22 21:32:33 -04:00
Jon Evans
91c15b7e21
Properties panel appearance tweaks
2022-08-22 21:32:33 -04:00
Jon Evans
3c6e8aea0f
Properties panel: post-rebase fixes and hide by default
...
Remove layer widget re-added by Orson's rebase
2022-08-22 21:32:33 -04:00
Maciej Suminski
990ea5595e
Properties: Fixed a startup crash
2022-08-22 21:32:33 -04:00
Maciej Suminski
af71d42307
Renamed PROPERTY_TYPE enum names to avoid a conflict on MSYS2
2022-08-22 21:32:32 -04:00
Maciej Suminski
c37c429c75
Rename PROPERTY_PANEL::Update() to PROPERTY_PANEL::UpdateData()
...
The base class (wxPanel) already provides Update() method,
which should not be overridden.
2022-08-22 21:32:32 -04:00
Maciej Suminski
7f00efe6cf
Properties: Fixed conditional properties using enum values in the conditions
...
When wxAny holds an enum, it cannot be compared with an integer due to a
missing conversion function. In such case, conditional properties
compare a raw value rather than wxAny.
2022-08-22 21:32:32 -04:00
Maciej Suminski
8fa513e903
Properties: fix Properties panel refresh
2022-08-22 21:32:32 -04:00
Maciej Suminski
f6f6ebd5f9
WIP: Properties GUI
2022-08-22 21:32:32 -04:00
Maciej Suminski
95fd58b25a
Properties meta-data for pcbnew classes
2022-08-22 21:32:00 -04:00
Jeff Young
32461c91e9
Wide status bars can afford to give the text more room.
2022-08-22 22:33:38 +01:00
Alex
3a76d42630
Cross-probing/selection for multiple items (PCB -> SCH)
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10469
2022-08-22 19:33:39 +00:00
Jeff Young
f42b66bc1c
Regularize ellipsization of menu and status text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12257
2022-08-22 17:52:58 +01:00
Jeff Young
4f0136db3b
Attempt to fix std::initializer_list lifetime issue.
2022-08-21 20:54:41 +01:00
Jeff Young
b2a2d66005
Move Bus Definitions to common GUI paradigm in Schematic Setup.
...
Also includes a change to the std::initializer_list stuff to try and
fix a crash.
2022-08-21 12:29:51 +01:00
jean-pierre charras
a5283d91eb
shape.i: disable a SWIG warning (warn 509) creating noise for this file.
2022-08-21 08:29:19 +02:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
Jeff Young
46df421064
ADDED defined pad groups for net-tie footprints
...
Each pad group is allowed to short nets with other pads in its group.
Legacy footprints with the "net tie" keyword hack will get a single
group auto-created with all the footprint's pads in it.
DRC and the router now allow a track to collide with copper graphic items
while entering a net-tie pad as long as the closest point in the collision
is within the pad.
DRC (and the footprint checker) now check for copper items in the
footprint shorting pads which are not in the same pad group.
Fixes https://gitlab.com/kicad/code/kicad/issues/2265
2022-08-19 18:54:20 +01:00
Jeff Young
508df402f6
Cleanup.
2022-08-19 18:54:19 +01:00
jean-pierre charras
e0fbe2542f
Fix a few compil and Coverity warnings.
2022-08-19 10:53:29 +02:00
Seth Hillbrand
5ed7e28252
Remove KICAD_OCC build option
...
We don't really support builds without OCC these days. Removing to
clear up build flags and settings
2022-08-18 17:06:29 -07:00
qu1ck
f4fa3b02c5
PCM: automatic check for repository updates
2022-08-18 20:41:43 +00:00
Seth Hillbrand
97d7ee1f30
Remove `/` from our forbidden LIB_ID list
...
It is still forbidden from footprint file names but that is handled
separately and it should not be forbidden in symbol files at all
2022-08-18 12:49:40 -07:00
jean-pierre charras
afacec3acb
Protect RC_TREE_MODEL::GetValue() against null pointer
2022-08-18 10:14:02 +02:00
Marek Roszko
19e27ef587
Avoid missing null check in RC_TREE_MODEL::DeleteItems
2022-08-17 07:12:26 -04:00
Alex
371f6d917f
Use VECTOR2I::extended_type instead of long, and int for numeric limits.
2022-08-16 12:08:55 +00:00
Alex
6d739ca9da
Improve handling of long distances
2022-08-16 12:08:55 +00:00
Marek Roszko
d33830e570
Switch sentry to commit hash for kicad nightly releases
2022-08-15 20:57:44 -04:00
Marek Roszko
2ee6f67892
Handle leading whitespace with std::from_chars
...
Testing the parsers, this doesn't generally happen but there was a comment about it before the changes
2022-08-15 19:30:43 -04:00
Marek Roszko
e4ba1d4879
Remove unused string helper
2022-08-15 19:12:45 -04:00
Jeff Young
a3dc38cb32
Update schema versions so we can patch bad data from earlier bug.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12180
2022-08-15 23:48:38 +01:00
Jeff Young
e015f5b086
Formatting.
2022-08-15 23:48:38 +01:00
Seth Hillbrand
34a5a32a52
Prevent GTK from zero-ing out column size
...
Related to https://gitlab.com/kicad/code/kicad/-/issues/12180
2022-08-15 14:24:02 -07:00
Wayne Stambaugh
7155d1af29
Fix a few more compile warnings.
2022-08-15 15:15:35 -04:00
Seth Hillbrand
759e1a64ef
Fix broken const ref in wildcard
2022-08-15 12:09:30 -07:00
Seth Hillbrand
35ac39844f
Clean up some auto usage
...
Don't make new copies of shared_ptr if we can use references. Keep auto
usage down to hard-to-type-out sequences
2022-08-15 11:29:45 -07:00
Jeff Young
1f347582f8
Introduce new marker type so we can track DRC errors on the drawing sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12221
2022-08-15 18:03:03 +01:00
Seth Hillbrand
4b3ac52b1d
Fix shadowed variables
2022-08-15 08:03:30 -07:00
Wayne Stambaugh
898ec0d094
Fix wxWidgets 3.1 and later deprecated build warnings.
...
wxWidgets 3.1 has deprecated wxPATH_NORM_ALL when normalizing file
paths when calling wxFileName::Normalize(). This change keeps the
existing behavior except in places where our own internal
ExpandEnvVarSubstitutions() to expand environment variables.
2022-08-15 08:00:40 -04:00
Jon Evans
6365a37042
Add {fmt} library
2022-08-14 22:49:55 -04:00
Marek Roszko
c418b25756
Centralize the parseDouble functions in the parsers and gcc specialcase
2022-08-14 18:46:19 -04:00
Jeff Young
84138d5039
Fix bug adding netclass in Eeschema.
2022-08-14 23:26:40 +01:00
Jeff Young
86938aa425
Read, write and process the board-wide Allow soldermask bridges in FPs.
2022-08-14 22:56:29 +01:00
Jeff Young
a9536b5de9
CHANGED netclass assignments now done via canvas or via patterns.
2022-08-14 22:56:29 +01:00
Jeff Young
18ac169ac7
Add contexts to EDA_COMBINED_MATCHER.
2022-08-14 22:56:29 +01:00
Marek Roszko
4472435380
Fix broken constructor
2022-08-14 12:57:22 -04:00
Marek Roszko
a070959209
Switch from strtod to std::from_chars for performance
2022-08-14 16:19:24 +00:00
Marek Roszko
90a62d8b02
Use fgetc directly under msvc in richio
...
getc is a real function instead of macro like under gcc implementations. This adds a tiny cost of calls.
2022-08-14 16:19:24 +00:00
Marek Roszko
fd6564cc82
Allow KIID to directly take in std::string
...
Reduces multibyte conversion banging on library load. uuids already are ASCII by their nature and the logic checks that or else it generates a new kiid.
2022-08-14 16:19:24 +00:00
Forrest Voight
bbc0c61ccb
kiid.cpp: Fix Boost version incompatibility and use of boost::*::detail
...
Fix compile with Boost 1.65.1 (and possibly some or all of the 1.59-1.66
range); remove dependence on private boost::*::detail members.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12175
Comment tweaks by Mark Roszko @mroszko
2022-08-11 19:42:07 +00:00
jean-pierre charras
39de92bba2
DIALOG_COLOR_PICKER: fix an issue in DC.SetDeviceOrigin() due to changes in wxWidgets.
...
DC.SetDeviceOrigin() behavior has changed in version 3.1.7 (or 3.1.6), and the settings
needs a small change.
Fixes #12204
https://gitlab.com/kicad/code/kicad/issues/12204
2022-08-11 10:15:50 +02:00
Mikolaj Wielgus
67d149ca73
QA: Use wxLogError() (not wxLogDebug()) in DisplayError[Message]()
2022-08-09 21:08:48 +02:00
Jeff Young
2e2264cb74
Minor cleanup.
2022-08-09 08:46:12 +01:00
Marek Roszko
f695ae5522
Generate const keyword_hash maps at compile time
...
Or else the map gets pointlessly recreated during footprint loading thousands of times
2022-08-09 00:56:49 -04:00
Jeff Young
a11f48ef10
Markers provider is no longer responsible for all markers.
...
Unconnected items and schematic partity violations are also now
represented by markers, so the ERC/DRC window itself needs to do
the deep-delete.
Fixes https://gitlab.com/kicad/code/kicad/issues/12182
2022-08-08 22:02:20 +01:00
Jeff Young
51b905ba32
Move Configure Paths help inside dialog.
...
This allows us to switch back to a standard modal dialog (instead of
quasi-modal, which has problems with Ctrl-V in a search box inside a
standard file dialog -- such as when picking a path).
Fixes https://gitlab.com/kicad/code/kicad/issues/9473
2022-08-07 11:28:16 +01:00
Jeff Young
5c9aed62aa
Use wxWidgets IDs for cut/copy/paste.
...
This allows them to work in places like search boxes in standard file
dialogs. If wxWidgets doesn't find the standard IDs in our menus
then it won't enable them.
2022-08-07 11:28:16 +01:00
Jeff Young
509d233d97
Fix knockout text bounding boxes and hit testing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12133
2022-08-06 00:00:04 +01:00
jean-pierre charras
d0d19423e0
Eeschema: Try to fix bitmap printing in wx version > 3.1.5
...
We had on a regular basis problems when printing bitmaps.
Probably due to issues in wx and in our code.
2022-08-04 14:25:52 +02:00
Jeff Young
e4b6da287f
Fix errant string format char.
2022-08-03 14:27:56 +01:00
Jeff Young
96f01d33c8
Performance improvements.
...
1) Move a bunch of std::map's to std::unordered_map to get constant-time
look-ups
2) Lengthen progress-reporting intervals to spend more time doing work
and less time talking about it
3) Reverse order of SHAPE_LINE_CHAINs in thermal intersection checks to
make (much) better use of bbox caches
4) Don't re-generate bboxes we already have
5) Fix some autos that weren't by reference (and were therefore copying
large datasets)
6) Rename delta progressDelta so it's easier to search for in future
7) Get rid of a few more autos (because I don't like them)
8) Pass large items to lambdas by reference
Fixes https://gitlab.com/kicad/code/kicad/issues/12130
2022-08-03 11:59:42 +01:00
Jeff Young
0304ad4494
Move connection width testing to rule system.
...
Also copies connection width progress reporting architecture over to
the sliver checker.
2022-08-01 13:09:51 +01:00
Jeff Young
6f49b57f9b
Cleanup & performance enhancements.
2022-08-01 13:09:51 +01:00
jean-pierre charras
d1ff8f4781
PROGRESS_REPORTER_BASE: call code to resize it only if the message has change.
...
In wxWidgets 3.15 (and perhaps older version) the call to GetTextExtent() probably
creates major issues when called too many times, at least oo msys2.
It was probably also time costly.
Calling it and resize the PROGRESS_REPORTER only when needed fixes these serious issues.
Issues happened only when the board has a lot of zones (when teardrops are added)
2022-08-01 13:18:50 +02:00