Jon Evans
59495971ee
Properties: fixes to color swatches
2023-06-29 22:53:06 -04:00
Ian McInerney
e17cd5abc6
Allow action description to be different from tooltip
...
The tooltip should be short and easy to read, the description can be
longer and more detailed.
2023-06-30 00:06:03 +01:00
Ian McInerney
8b8586f54b
Add case to ignore the unused scroll events in the view framework
2023-06-29 23:21:15 +01:00
Jon Evans
3487124a4a
Properties: Improve color picker UX
2023-06-28 23:54:27 -04:00
Jon Evans
0e617774dd
DbLib: Remove slashes from table display names
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15074
2023-06-28 19:38:21 -04:00
Ian McInerney
107c79484d
Give default nullptr to gridSetOrigin to denote no known origin
...
Fixes KICAD-2BE
2023-06-29 00:17:12 +01:00
Youbao
4cb993d872
ADDED: Cadence Allegro PCB Designer netlist exporter
2023-06-28 22:47:30 +00:00
Kuba Sunderland-Ober
1edb9bb0ce
Get rid of VECTOR2U.
2023-06-28 20:48:07 +00:00
Jeff Young
c2f2247ae3
Don't process SCINTILLA_TRICKS onCharHook when autocomplete is active.
...
(ESC being the exception that proves the rule.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15001
2023-06-28 00:05:38 +01:00
Kuba Sunderland-Ober
95b9196703
Update the scripts to make the font source file fully reproducible.
2023-06-27 20:23:22 +00:00
Ian McInerney
2a940a5f70
Add COMMIT to TOOL_EVENTs instead of passing as a parameter
2023-06-27 00:57:59 +01:00
Ian McInerney
2fb6f19a84
Separate immediate and delayed action dispatch
...
Using a boolean argument just leads to a lot of trailing booleans in the
function calls and is not user friendly. Instead, introduce PostAction()
to send an action that runs after the coroutine (equivalent to passing
false or the default argument), and leave RunAction as the immediate
execution function.
2023-06-27 00:57:59 +01:00
Steve Bollinger
a318c57d77
Move E-series resistor selector table out of resistor value
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14627
2023-06-26 23:21:40 +00:00
Jeff Young
1b7473c353
Make sure Help menu is at end of menubar.
2023-06-26 14:11:13 +01:00
Jon Evans
c7f6b20405
Properties: Use color picker dialog
2023-06-25 16:32:43 -04:00
Jon Evans
a2ff3bce7d
Properties: custom rendering for COLOR4D
2023-06-25 16:13:07 -04:00
Jon Evans
bf2e9f8261
Properties for SCH_LINE
...
Also rename an incongruous setter
2023-06-24 20:08:42 -04:00
jean-pierre charras
1094cc5331
Fix issues related to the splash screen when no config file found:
...
- do not show it before the application is actually started.
- hide the splash screen before displaying dialogs.
Fixes #15047
https://gitlab.com/kicad/code/kicad/-/issues/15047
2023-06-24 18:09:43 +02:00
Jeff Young
5195bc28fe
Don't prune already-added items from the COMMIT.
...
We perform undo/redo backwards from each other specificially to allow
multiple entries (for instance, a wire is modified and then deleted).
This bus is almost certainly in 7.0 as well, but it comes up mostly
in schematics where 7.0 doesn't use COMMIT. It's also possible that it
will cause unwanted effects in some cases, so I'm leaving it only in
master.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15032
2023-06-24 15:08:26 +01:00
jean-pierre charras
965aaa217c
RULER_ITEM: fix incorrect position of the shadow text shape (round 3).
...
Depending on the text orientation, the shadow shape position was incorrect.
2023-06-23 12:50:56 +02:00
jean-pierre charras
1698fb6608
Refinement of commit 355575e4
(drawing shadow texts of RULER_ITEM and pin names)
...
Also handle non Kicad fonts (that do not use shadow texts)
Fixes #15019
https://gitlab.com/kicad/code/kicad/-/issues/15019
2023-06-23 10:32:23 +02:00
Jon Evans
3a0f8214fa
ADDED: Properties panel for schematic editor
...
Initial infrastructure work; follow-ons will add more
properties for schematic items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6351
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14105
2023-06-22 22:32:24 -04:00
Jon Evans
39a5929f33
Database libraries performance improvements
...
Rework caching system and optimize queries
2023-06-22 18:49:37 -04:00
3GO
206f66aee2
Make user cache path adjustable by env var.
2023-06-22 13:35:48 +00:00
jean-pierre charras
355575e477
Fix some (minor) issues when drawing shadow texts of RULER_ITEM and pin names.
...
Fixes #15019
https://gitlab.com/kicad/code/kicad/-/issues/15019
2023-06-22 13:28:43 +02:00
Kuba Sunderland-Ober
b60f7d4136
Make comparison operators const.
2023-06-21 08:49:26 +00:00
Marek Roszko
74d6dc6642
ADDED: Startup splashscreen
...
This is purely loading in the background based and has no artificial delay.
Will be more useful once kicad.exe ends up loading more on launch immediately ;)
Right now the splash is probably visible the longest launching pcbnew standalone.
The actual splash image can be considered a placeholder
2023-06-20 20:51:08 -04:00
Ian McInerney
480223f67c
More RunAction specialization
2023-06-20 21:52:50 +01:00
Ian McInerney
b0363023a5
Parameterize the tool manager RunAction function to ensure type stabilty
2023-06-20 21:52:50 +01:00
Ian McInerney
3718ecfcd8
Simplify forcing action parameters to have a specific type
2023-06-20 21:52:50 +01:00
Ian McInerney
07cc85e76c
Fix more places where casts into RunAction were happening
2023-06-20 21:52:50 +01:00
Ian McInerney
6c031a4aa4
Fix some more incorrect types in event parameters
2023-06-20 21:52:50 +01:00
Ian McInerney
55a7cfcf36
Translate doDelete action to new framework and add default parameter
2023-06-20 21:52:50 +01:00
Ian McInerney
9ebe6e7614
Update tool manager to handle the std::any parameters
2023-06-20 21:52:50 +01:00
Ian McInerney
b04e54dbea
Switch TOOL_EVENT and TOOL_ACTION to have a std::any parameter
...
Using std::any from C++17 allows for proper type handling in the
parameter field, removing the need for casting to void* and then casting
the void* to the desired type.
2023-06-20 21:52:50 +01:00
Ian McInerney
0a22bb951c
Add custom UI IDs to the action framework
...
This replaces a hack where the parameter was used to identify a custom
UI ID with a proper solution. This moves the cut/copy/paste actions to
the new system, but more like help/quit/close should also be moved over
in the future.
2023-06-20 21:52:50 +01:00
Ian McInerney
b63bbdea5f
Add function-chain contructor for TOOL_ACTION
...
A function-chain constructor method allows for the long list of
parameters to the constructor to be shrunk to only the ones needed by
each action, and allow self-documenting code for what each part of a
TOOL_ACTION constructor does.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/7617
2023-06-20 21:52:50 +01:00
Mike Williams
85f889bc19
Fields: Description now mandatory
...
Propagate from symbols to footprints, footprints keep a library
description, too. (GetLibDescription())
2023-06-20 18:34:52 +00:00
Mike Williams
636db607c1
Footprints: upgrade Sheetpath and Sheetfile to tagged items in file
...
Rather than loose kv properties.
2023-06-20 18:34:52 +00:00
Mike Williams
7d84fa2a9d
Validators: drop unused is m_isLibEditor
2023-06-20 18:34:52 +00:00
Mike Williams
ddafa2e75d
Common: move SCH_FIELD_VALIDATORS to FIELD_VALIDATORS
...
Fields are now common across PCB/SCH
2023-06-20 18:34:52 +00:00
Mike Williams
6d93950dcc
PCB: abolish TEXT_TYPE::TEXT_is_*
...
PCB_TEXT is now always what was formerly TEXT_is_DIVERS and PCB_FIELDs
now what mandatory field type they are already.
2023-06-20 18:34:52 +00:00
Mike Williams
37837dc392
PCB: introduce PCB_FIELD_T
2023-06-20 18:34:52 +00:00
Mike Williams
968785382e
PCB_FIELD: add new field item similar to SCH_FIELD
2023-06-20 18:34:52 +00:00
Jeff Young
8c29091001
Add a "hyperzoom" mode for debugging "up close".
2023-06-20 14:19:21 +01:00
Jeff Young
30336b2fe3
Unify go-back-one-step processing for drawing tools (and router).
...
Also warps mouse on all go-back-one-step operations for better feedback.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9985
2023-06-19 17:14:32 +01:00
Jon Evans
55c00f1845
ADDED: Initial support for importing Solidworks PCB files
2023-06-19 11:57:33 -04:00
Jeff Young
ecb2fcd559
Don't trip over null strings.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14989
2023-06-18 20:28:11 +01:00
Jeff Young
9199d7a781
Update simulation results as the sim runs.
...
Also adds a time axis which grows by 2X at a time rather than to the
size of the current data.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11255
2023-06-18 16:52:11 +01:00
Jon Evans
b424dc11e1
Hotkey feedback for inactive layer display mode
2023-06-17 23:47:26 -04:00
Jon Evans
fc69939190
ADDED: GUI feedback when grid setting is changed by hotkey
...
Can be extended to other cyclical hotkey settings
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14756
2023-06-17 23:18:50 -04:00
Jeff Young
7f453d7943
Fix bug in wildcard search handling.
2023-06-17 23:53:37 +01:00
Alex Shvartzkop
940f92a44f
GAL: improve redraw handling, allowing higher refresh rates.
...
minRefreshPeriod can't be set in SwitchBackend because OpenGL isn't
initialized yet.
2023-06-17 12:42:22 +03:00
Jeff Young
ef6866757e
Treat undo as backspace and/or escape when drawing. Ignore redo.
...
Undo == backspace when drawing a polygon or chained lines. Otherwise
it's an escape.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14961
2023-06-16 22:08:21 +01:00
Jeff Young
b3235ce667
Handle some Mac-standard keyboard shortcuts in Scintilla.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14973
2023-06-16 17:19:18 +01:00
Alex Shvartzkop
d3be62f644
Adapt panels to PAGED_DIALOG sizing algorithm.
...
Also some cosmetic fixes (GTK).
2023-06-16 19:12:37 +03:00
Alex Shvartzkop
6ace80700e
PAGED_DIALOG: make sure the dialog is big enough to contain page.
2023-06-16 19:12:37 +03:00
Alex Shvartzkop
f5da58e17d
PAGED_DIALOG: allow setting initial size in ctor.
2023-06-16 18:53:00 +03:00
jean-pierre charras
e7fac08c2f
Worksheet editor: fix crash when adding new graphical text object.
...
Was due to use of a null pointer.
Fixes #14966
https://gitlab.com/kicad/code/kicad/-/issues/14966
2023-06-16 17:31:38 +02:00
Jeff Young
75e78f9088
Move bitmap2cmp and pcb_calculator to tool framework.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1939
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7561
2023-06-16 15:37:58 +01:00
Jeff Young
d8debfa0ee
Require regular expressions to be explicit.
...
Normally this means surrounded by forward slashes, but we also still
allow any regular expression in a netclass match to keep from breaking
existing documents.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14944
2023-06-16 15:37:58 +01:00
Wayne Stambaugh
285f8a0e59
Command line PCB gerber export fix and improvement.
...
The --board-plot-params argument was never parsed so it was always ignored.
[ADDED] A '--no-protel-ext' option to allow plotting gerbers with the KiCad
file extension (gbr) instead of the Protel gerber file extensions.
(cherry picked from commit 4e79d1ecdd
)
2023-06-16 07:17:39 -04:00
Jeff Young
150e2b8a19
Separate BITMAP2CMP_PANEL from BITMAP2CMP_FRAME.
...
This is primarily to allow wxFormBuilder to create the panel without
the dangerous hack of passing a wxWindow ID into KIWAY_PLAYER's ctor.
2023-06-15 17:39:10 +01:00
Jon Evans
c90fe84cc1
Fix missing change in d996ec14
2023-06-14 23:23:36 -04:00
Jon Evans
d996ec143f
Fix STD_BITMAP_BUTTON for GTK HiDPI
2023-06-14 23:14:07 -04:00
Jeff Young
46564055f4
More protection around an exceedingly dangerous hack.
...
The API is needed for wxFormBuilder, and I couldn't figure out any
way around it, but we can at least reduce the risk of someone calling
it accidentally (again).
2023-06-14 12:52:49 +01:00
Alex Shvartzkop
dfb05c4f4b
Fix lock condition in GL_CONTEXT_MANAGER, remove unnecessary assert.
...
Assert handler is already being called from wxCHECK.
2023-06-14 07:45:34 +03:00
Mark Roszko
03990ee7e0
Move the custom assert handler to release builds only
2023-06-13 13:04:37 +00:00
Marek Roszko
992ed34365
Disable sizer asserts in release
2023-06-13 07:08:33 -04:00
Seth Hillbrand
f76c94e622
Don't log asserts in release mode
2023-06-12 15:26:18 -07:00
Jeff Young
782c73300b
Move drawing sheet datastructures to EDA_IU_SCALE.
...
Or mostly, at least. Plotters still define their own mils-to-iu scale.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14934
2023-06-12 22:34:25 +01:00
Jeff Young
b7f0aae006
Nullptr safety for UI Conditions.
...
We don't really control when these are called, so best not to assume
we've finished initialization of the frame/screen/document/whatever.
Possible fix for KICAD-KY.
2023-06-12 12:38:50 +01:00
Jeff Young
d6aefc458c
Clear the playerFrame lookup cache when closing frames.
...
WindowIds aren't actually guaranteed to be unique, and we don't
perform a dynamic_cast on the result of FindWindowById() because
of linker issues....
This is an attempt to fix KICAD-39.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14928
2023-06-11 20:34:24 +01:00
Alex Shvartzkop
eaf65f7d53
Avoid deadlock when OpenGL context can't be created.
...
Previously, with aContext == nullptr, the mutex would lock, but not unlock.
Then it got deadlocked inside OPENGL_GAL dtor.
2023-06-11 18:59:00 +03:00
Roberto Fernandez Bautista
3f758711fd
Use external REPORTER for EESCHEMA_JOBS_HANDLER / PCB_JOBS_HANDLER
2023-06-10 23:35:32 +02:00
Jeff Young
f66b9f75a3
Allow EDA_COMBINED_MATCHER use in KiCad find architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12532
2023-06-10 14:50:06 +01:00
Jeff Young
f2c2017068
Formatting. No (intentional) functional changes.
2023-06-10 13:36:17 +01:00
Alex
2450435131
Support --mirror option in "kicad-cli pcb export pdf"
2023-06-10 04:54:11 +03:00
Jon Evans
4e6092a280
Turns out only MSW has odd behavior for bitmap sizing
2023-06-09 08:58:52 -04:00
Jeff Young
d5b5a3eaf4
Add action info to Undo/Redo menus.
...
Note that this only works where a BOARD_COMMIT or SCHEMATIC_COMMIT is used.
(BOARD_COMMIT is used almost universally in PCBNew, but SCHEMATIC_COMMIT
has very little adoption in EEschema so far.)
2023-06-07 14:37:34 +01:00
Nils VAN ZUIJLEN
518741c52a
cli: add an option to the pcb exports for plotting negative svg and pdf
...
ADDED: The -n or --negative option for exporting negative svg or pdf plots
from kicad-cli. Example usage: kicad-cli pcb export svg -n -l B.Cu board.kicad_pcb
2023-06-07 13:28:52 +00:00
jean-pierre charras
47c0c7b3b7
pcb_calculator: add iec60664 electrical spacing panel.
...
From patches from by Fabien Corona and Aris_kimi
2023-06-07 12:01:30 +02:00
Jeff Young
9fe00bb808
Cleanup. No (intentional) functional changes.
2023-06-06 12:30:35 +01:00
Jeff Young
c5e7d800a4
Back out earlier diamond-to-rectangle fix for one that's more targeted.
...
(And doesn't fail qa_pcbnew.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14828
2023-06-05 21:26:37 +01:00
Jeff Young
4dda7d39ab
Tranform diamonds back to rects after rotating to a cardinal orientation.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14828
2023-06-05 18:55:18 +01:00
Mike Williams
d48858e298
LibTree: add numpad enter as enter
...
Written by Andrej Valek
2023-06-05 09:20:22 -04:00
Jeff Young
1528f4700c
Treat canvas item as current when tree view contains no selection.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12702
2023-06-04 20:52:12 +01:00
Jeff Young
9da66ccb58
Hack Mac icon buttons back to size.
...
It remains unclear to me how this *should* be going forward, but
this at least gets us back to the status quo.
2023-06-03 21:41:56 +01:00
Jeff Young
5875f89531
Centralize text size clamping.
...
Also introduces alg::clamp to improve readability of
std::max( min, std::max( value, max ) )
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14876
2023-06-03 20:29:51 +01:00
Jon Evans
1aff03eadb
Fix bitmap scaling for SPLIT_BUTTON
2023-06-03 12:41:40 -04:00
Jon Evans
8f69336ad1
Support DPI scaling in custom bitmap buttons
2023-06-03 11:32:52 -04:00
Wayne Stambaugh
bdee545841
Coverity warning fixes.
2023-06-03 07:28:17 -04:00
Alex
df4fefeb20
Fix view shifting when infobar is shown.
2023-06-02 17:46:46 +03:00
Marek Roszko
e536fa966c
Remove extraneous Pgm()
2023-05-31 23:02:38 -04:00
Marek Roszko
8eb265bf4c
Add a central assert handler that generates sentry events
2023-05-31 21:56:59 -04:00
Seth Hillbrand
c7758999af
Handle LOCKFILE logistics for ro
...
We need to check if a lockfile is valid to determine if we should
override the lock. Valid() is true if the lockfile couldn't be created
b/c of permissions or if the lockfile could be created and acquired.
2023-05-31 17:04:32 -07:00
Seth Hillbrand
14f6e32c74
ADDED: Change watcher for libraries
...
When editing or viewing library symbols, the files are watched for
underlying changes. If any occur, the user is either prompted to reload
(if reloading would overwrite their current edits) or the file is
silently updated to the current version on disk.
This also sets a custom assertion handler to avoid unneeded crashes when
recieving invalid SAMBA packets and turns off assertions entirely when
running in release (non-debug) mode
2023-05-31 13:46:00 -07:00
Seth Hillbrand
d94fd5f979
Prevent ro directories from showing lockfile error
2023-05-31 13:45:57 -07:00
Jeff Young
421d6b2ef8
Retire LIB_ID_VALIDATOR as it prevents usage of text variables.
...
(We perform more complete checks in ERC anyway.)
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14764
2023-05-31 17:26:54 +01:00
jean-pierre charras
90c4b8bc57
Eeschema: try to fix a not working tool (Paste tool on main horiz. toolbar)
...
Fixes #14827
https://gitlab.com/kicad/code/kicad/-/issues/14827
2023-05-31 17:45:19 +02:00
jean-pierre charras
a4b73d74a3
Remove a change committed by mistake in commit 86abfd2ce
.
...
It should be committed in a separate commit.
2023-05-31 17:45:19 +02:00
Jeff Young
f9fd37c4ca
Correctly handle hidden columns when pasting into grids.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14844
2023-05-31 12:26:18 +01:00
Jeff Young
e82e4af483
Don't double-up FUTURE_FORMAT_ERROR problem strings.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14780
2023-05-31 11:13:35 +01:00
jean-pierre charras
86abfd2cef
Update a golden file in Eagle QA tests
2023-05-31 11:52:50 +02:00
Jeff Young
c36b0fcda7
Make sure 3D file browser is treated as modal by quit.
...
(Otherwise we crash when freeing it during the quit.)
2023-05-30 14:58:46 +01:00
jean-pierre charras
6b845b9054
Fix compil warnings and a wxWidgets alert.
2023-05-30 09:00:46 +02:00
Marek Roszko
6e468c5ce9
Fix more warnings
...
Needless const and out of order initializer
2023-05-29 23:01:58 -04:00
Jeff Young
f5791f5dc6
Left some fixes out of previous commit.
2023-05-29 16:22:24 +01:00
Jeff Young
2612b49698
Fix erroneous wxEXPAND flags.
2023-05-29 14:23:31 +01:00
Roberto Fernandez Bautista
688a61df63
Add options editor to symbol library table + cleanup unused options
2023-05-28 23:56:42 +02:00
Roberto Fernandez Bautista
a119bd604d
Refactor: Move DIALOG_PLUGIN_OPTIONS to common and use enum for event ID
2023-05-28 23:56:41 +02:00
Jeff Young
570978fa7f
Replace larger text bboxes now that we're not using them for knockouts.
2023-05-28 18:17:24 +01:00
Jeff Young
c71cf21e2f
Use rendered text to generate bounding box for knockout text.
...
Don't open-code knockout text shape generation in several different
places.
Make sure triangulated knockout text gets clearance added when
specified.
Collapse duplicated footprint text item plot routine (they're no
longer any different from plotting pcb text items).
2023-05-28 17:20:11 +01:00
Jeff Young
dacf0b2b96
Account for changes to mimic 6.0 text positioning in bounding boxes.
...
This is only a partial fix as knockout text is still busted....
2023-05-27 23:41:43 +01:00
Jeff Young
6b0bff2f4f
Formatting.
2023-05-27 22:46:02 +01:00
Jeff Young
95a09f686b
Revert attempt to use drawing code to generate text bounding boxes.
2023-05-27 22:11:34 +01:00
Jeff Young
3ab9175553
Spread the error-bar move evenly around justified text.
2023-05-27 18:53:04 +01:00
Jeff Young
f35a88ce0b
Cache LIB_PIN text extents for performance.
...
Also fixes a bug where we didn't triangulate at all when the char
count didn't warrant the likely overhead of spinning up a
thread_pool.
And fix another bug where EDA_TEXT::GetRenderCache() wasn't using
the given font.
Also reverts using the cache for drawing-sheet text. The text
items are created from scratch from the data items each time
they're drawn, so there's never an existing cache to make use of.
Instead, we now check that the item is in the view, using a very
approximate bounding box generator (because even generating a
real bounding box shows up large in profiles).
And, lastly, fixes a bug where EndPos was never considered in
DS_DATA_ITEM::IsInsidePage().
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14822
2023-05-27 16:32:11 +01:00
Jeff Young
4ed267394a
Outline font performance improvements.
...
1) Don't fracture font glyphs when generating them; we're going
to fracture during triangulation anyway.
2) Don't check for self-intersection when deciding to fracture.
It costs nearly as much as the fracture does.
3) Cache drawing sheet text.
4) Use the current font when checking for cache validity.
5) Parallelize glyph triangulation.
6) Don't invalidate bounding box caches when offset by {0,0}
7) Use the glyph cache when generating text effective shape.
8) Short-circuit NormalizeJustification() if its center/center.
9) Don't triangulate for GuessSelectionCandidates()
10) Avoid sqrt whenever possible.
11) Pre-allocate bezier and SHAPE_LINE_CHAIN buffers.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14303
2023-05-27 01:35:40 +01:00
Jeff Young
ff37ebe61a
Improve appearance of stroked knockout text.
2023-05-26 19:53:38 +01:00
Jeff Young
cb53a18ee3
Bug fixes for handling boolean flags in DRC rules.
2023-05-26 18:44:33 +01:00
Jeff Young
768fbf5af2
Give up on trying to calculate text bounding boxes.
...
It results in too many hacks strewn through the code. Just draw the
text and measure it.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14803
2023-05-26 18:44:33 +01:00
Jeff Young
6e127829f8
Cleanup formating and includes.
2023-05-26 18:44:33 +01:00
Jeff Young
1518ddde74
Push much of text var autocomplete down into SCINTILLA_TRICKS.
...
Shared code == fewer bugs. Well, in theory anyway....
2023-05-25 10:24:50 +01:00
Seth Hillbrand
48ecd742eb
Maintain file permissions when renaming
...
Temporary and autosave files do not neccessarily have the correct
permissions set to replace existing project files. This updates the
permissions to match the existing values where possible
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13574
2023-05-24 17:09:38 -07:00
Seth Hillbrand
122be418bb
Upgrade file locking
...
wxSingleInstanceChecker is meant for running programs, not file locking.
This implements an RAII class for file locking that stores the lock
files next to the file being locked, allowing it to be easily found and
removed. Also includes the ability to override the lock, with
information about the original owner
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14734
2023-05-24 13:51:54 -07:00
Jeff Young
1057483983
Reset button applies to resolved page, not lazy page holder.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14786
2023-05-21 18:15:21 +01:00
Jeff Young
cbf83c4161
Pin preferences dialog size.
...
While unfortunate (we generally frown on having fixed sizes in
favour of having everything auto-layout), in this case it's a
cost of lazy-loading the panels.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14785
2023-05-21 11:17:36 +01:00
Jeff Young
d4c9d9d60a
Fix issue with colours in the new lazy-loaded preference panels.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14784
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14782
2023-05-21 10:56:21 +01:00
Jon Evans
902913c7dd
Fix infobar height in Windows HiDPI situations
2023-05-20 21:57:08 -04:00
Wayne Stambaugh
24b04795fd
Add net navigator panel to schematic editor.
...
[ADDED]: A panel to the schematic editor that allows quick access to all
of the items connected to the currently highlighted net.
This is an initial swag at implementing a full net navigator feature. For
now it only shows the currently highlighted net nodes. The incremental
net list advanced setting must be enabled in order to use this feature due
to performance reasons. There are still some issues with saving the panel
position which will be addressed in the future.
Initial code for serializing wxAuiPaneInfo settings to and from JSON have
be implemented.
2023-05-20 13:48:03 -04:00
Jeff Young
4c59365867
Blind attempt to fix pns-debug-tool linking issue.
2023-05-19 19:26:03 +01:00
Jeff Young
8b1fd62d35
Make pad & via teardrops 1st-class citizens (props of the pad/via)
...
Change teardrop generation to rely more heavily on BOARD_CONNECTIVITY
for improved performance.
Add updating of teardrops on BOARD_COMMIT::Push().
Also converts m_CopperItemRTreeCache to std::shared_ptr.
We don't copy it around anyway, and having to create a new set
of std::unique_ptr's for each operation is likely to be more
expensive than std::shared_ptr's overhead.
2023-05-19 18:02:03 +01:00
Jeff Young
329025f8a7
Update "simple" MRU paths in project Save As.
...
Update only those that are the project name + extension.
Fixes https://gitlab.com/kicad/code/kicad/issues/14681
2023-05-19 18:02:02 +01:00
Marek Roszko
573b66d243
Fix a bunch of C5266 warnings (pointless const on bool/int returns)
...
warning C5266: 'const' qualifier on return type has no effect
Microsoft doesn't even document C5266
2023-05-18 21:35:06 -04:00
Seth Hillbrand
0de24bfd59
Cleanup text alignment between version 6 and 7
...
Version 7 text alignment changed subtly for stroke fonts from version 6.
Additionally, the output has been different between screen and plotting,
leading to offset text in plotted output relative to the text shown on
screen.
This introduces a fudge factor in FONT::getLinePositions to correct the
offset in the plotting output relative to v6.
This also changes the SCH_PAINTER and PCB_PAINTER to correct the
relative offsets between GAL and PLOTTER classes. The source of these
offsets is atm unclear.
Fixes https://gitlab.com/kicad/code/kicad/issues/14755
2023-05-17 13:33:49 -07:00
Ian McInerney
20ec8ed303
Fix GitLab URLs to point to the correct project page
...
GitLab 16.0 removes support for URLs that don't contain /-/ after the
repository name, so the report bug feature and various links we had in
the source (including the git-fixes script) would lead to a 404 error.
See GitLab docs for deprecation/removal notice:
https://docs.gitlab.com/ee/update/deprecations.html?removal_milestone=16.0#legacy-urls-replaced-or-removed
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14759
2023-05-17 11:23:00 +01:00
Seth Hillbrand
72267cf9b0
Adjust stroke font output to match v6 output
...
Many minor tweaks were added that changed the output of the stroke font
from v5/v6. These offsets changed the gerber output expected. This
reverts the changes to something much closer to the v6 output. It is
not pixel-perfect but gets very close on most texts.
Fixes https://gitlab.com/kicad/code/kicad/issues/14609
2023-05-12 12:40:41 -07:00
Alex
f7f15e1ddf
Prevent axes settings from affecting angles in properties panel.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14168
2023-05-12 15:44:37 +03:00
Alex
efbd360440
Fix double negative signs in mask/paste margin overrides.
2023-05-12 15:44:37 +03:00
Jeff Young
ddc6ecf7be
Lazy loading of Schematic Setup panels.
2023-05-11 11:43:10 +01:00
Marek Roszko
dd8dc4e513
Add a sequential read flagged fopen helper
...
Trying to squeeze out some kind of gain by informing the OS we will read a file sequentially.
In particular our FILE_LINE_READER just uses fgetc until the end
2023-05-10 20:24:27 -04:00
Jeff Young
9ae8255202
Insta-prefs.
2023-05-10 18:14:14 +01:00
Jeff Young
6bf43588bb
Don't store sizes in panels. Let them auto-lay-out.
2023-05-10 18:14:14 +01:00
Marek Roszko
5d93487607
Disable IME input on the gal canvas
...
Fixes #9719
2023-05-09 20:30:15 -04:00
Jeff Young
e1db4e0694
Add backspace modifier handling to SCINTILLA_TRICKS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13910
2023-05-08 18:42:04 +01:00
Jon Evans
09e8f72196
Don't try to open files multiple times
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14703
2023-05-07 21:46:39 -04:00
Marek Roszko
5dcc221950
Use _fgetc_nolock with msvc
2023-05-07 12:33:33 -04:00
Marek Roszko
b92f62337f
Change the spacemouse driver flag to true for windows by default
2023-05-07 12:12:20 -04:00
Marek Roszko
c7eaef2d13
Add missing footprint load progress, usually in schematic editor
2023-05-07 10:46:39 -04:00
Jon Evans
2ab47ee1e9
Allow for settings to be added during load
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14691
2023-05-07 08:48:07 -04:00
Jeff Young
8bd21edd8a
Fix capitalization of text vars for Eagle importer.
...
Also fixes the test gold files to expect the correct variable
references.
2023-05-06 23:49:10 +01:00
Jeff Young
8fe02ee83c
Handle Eagle user-defined attributes.
...
(We map these to text variables.)
Fixes https://gitlab.com/kicad/code/kicad/issues/13798
2023-05-06 21:10:34 +01:00
Jeff Young
995388fb71
Rewrite linebreaking algorithm.
...
Previous version was overly simplistic to deal correctly
with multiple spaces or textruns not separated by spaces.
Fixes https://gitlab.com/kicad/code/kicad/issues/14683
2023-05-05 22:32:40 +01:00
Jeff Young
b41d446f58
Fix a bunch more issues with sheetpaths and allowExtraText.
...
A sheetpath is required to correctly resolve text variables.
Depending on currentSheet is rife with bugs.
There are many places where we do *not* want to be prepending
field names to the field values, such as netlisting,
building PDF hypertext menus, etc.
Also, Find/Replace needs to work on unresolved text, as
that's what we're going to display (and if replace nuked
your variable references you wouldn't be happy).
2023-05-05 17:23:52 +01:00
Jeff Young
7eb099187d
Pass aEvent by value.
...
It will have changed by the time CallAfter() is executed.
Fixes https://gitlab.com/kicad/code/kicad/issues/12475
2023-05-03 12:29:06 +01:00
qu1ck
f840fe3d38
Fix PCM update indicator color
2023-05-02 11:33:41 +00:00
jean-pierre charras
7691cd9509
LIB_TREE: fix an issue when using the popup menu:
...
- At least on wxWidgets 3.2 GetPopupMenuSelectionFromUser() returns the submenu
id, not the submenu idx from 0
- wxID_NONE can be returned when clicking outside the popup menu, or cancel.
2023-05-02 12:40:20 +02:00
Jeff Young
df7d62fdd3
Added a sort-order dropdown to lib-tree filters.
...
Also simplifies the scoring algorithm so that it only
differentiates between exact-match, match-at-start and
any-match. The rest of the position-based matching
stuff is gone, as is the knowledge of the name vs the
keywords vs the description. All that is left to the
provider of the weighted search terms array.
2023-05-01 21:26:43 +01:00
Mike Williams
04a53ea40d
Picker Tools: make sure we know what tool we are
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14621
2023-05-01 12:43:09 -04:00
Jeff Young
2f9889ff62
Add settings for plotting PDF property popups.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14450
2023-04-30 18:10:04 +01:00
Jeff Young
a3b741a126
Extend Mac colour picker cursor fix to GTK.
2023-04-30 13:48:13 +01:00
Jeff Young
bc754df30f
Go back to winner-takes-all lib-tree scoring algorithm.
...
(Because we sort alphabetically there's no way to see
what the second-highest scored item was.)
2023-04-30 13:01:09 +01:00
Jon Evans
dc847db19d
Add initial support for database library settings UI
...
For now, just for diagnostic purposes (settings changes are not preserved)
2023-04-29 18:15:00 -04:00
Jeff Young
08c773a0bf
Use wxFileName to resolve . and .. in documentation paths.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14564
2023-04-29 17:52:11 +01:00
Jeff Young
a817b4c1ff
Don't reset alpha when specified in hex value.
...
Also fixes a bug with colour picker cursor drawing on Mac.
Fixes https://gitlab.com/kicad/code/kicad/issues/14646
2023-04-29 17:52:11 +01:00
Seth Hillbrand
f4b43617e7
Add COMMIT structure to Schematic and Symbol editors
...
Provides a single-point access for modifying the schematic and symbol
elements that allows chaining updates and reverting partial changes.
Standardizes the undo hierarchy between pcb and schematic editors
As this is another layer on the existing undo/redo structure, the
initial commit does not replace all undo/redo calls currently existing.
These will be handled in a series of follow-on commits
2023-04-28 17:05:47 -07:00
Jeff Young
5b56cb6bdb
Don't let add-row processing intercept OK processing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14579
2023-04-26 12:47:55 +01:00
Jeff Young
69500bfcaa
LTSpice schematic import based on the work of Chetan Shinde.
2023-04-24 13:52:52 +01:00
Jeff Young
c381b6d024
More robust file reading for simulator files.
2023-04-24 13:52:52 +01:00
jean-pierre charras
31b30cef96
OPENGL_GAL: draw BITMAP_BASE: fix incorrect rendering of mirrored bitmaps
...
The vertical mirror was not working.
2023-04-23 16:00:05 +02:00
jean-pierre charras
f47f44350d
BITMAP_BASE::Mirror() and ::Rotate(): fix an issue for bitmaps with ppi not 300
...
wxImage::Mirror() and wxImage::Rotate() transforms clear some parameters, especially
the PPI stored in the image. It creates bad size (bad ppi) when saving a BITMAP_BASE
in files.
These parameters are now restored after transform.
2023-04-23 11:30:02 +02:00
jean-pierre charras
c617abe8e9
SCH_BITMAP and PCB_BITMAP: rename m_image to m_bitmapBase. Add more info
...
in GetMsgPanelInfo() (PPI, scale).
m_image name was confusing: it is not a wxImage, but a BITMAP_BASE item,
and m_image name was already in use in BITMAP_BASE, used inside SCH_IMAGE.
Bitmap properties dialog: show PPI value and add Title to dialog.
2023-04-22 17:28:06 +02:00
Marek Roszko
53ad203028
Guard the new sentry calls because it won't be initialized if opted out
2023-04-20 23:05:06 -04:00
Marek Roszko
5b5176f104
Experiment with sentry breadcrumbs to footnote kiway events to provide more crash context
2023-04-20 23:01:50 -04:00
Marek Roszko
2f23df8f5f
Move 3 more blocks to the common ex handler
2023-04-19 21:17:31 -04:00
Marek Roszko
26f250faa8
Handle OnKifaceStart exceptions without crashing
2023-04-19 20:38:25 -04:00
Marek Roszko
c5d5450f55
Create a central exception handler we can also use to generate sentry events
2023-04-19 20:38:25 -04:00
Seth Hillbrand
a154571438
Add ability to update subgraphs based on changeset
...
Previously, almost all connectivity updates were full updates, meaning
that the entire connectivity graph would be rebuilt each time a change
was made to the schematic. This update modifies the update to only
correct the subgraphs that are directly affected by the change.
It uses the existing connection graph to find all affected subgraphs as
well as connections to the changes based on the visible schematic.
These elements are removed from the existing connectivity graph and
marked dirty. They then have a new connectivity graph built only around
their changes. The resulting graph is merged into the original.
Currently, this ability is behind an advanced config flag
`IncrementalConnectivity` while testing.
Fixes https://gitlab.com/kicad/code/kicad/issues/10846
Fixes https://gitlab.com/kicad/code/kicad/issues/1794
2023-04-19 16:14:35 -07:00
jean-pierre charras
1406341d2d
Fix a few doxygen errors (no actual code change)
2023-04-19 16:20:24 +02:00
Jeff Young
3521add640
Suppress newlines in RC_ITEM messages.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14569
2023-04-19 14:09:21 +01:00
Marek Roszko
6022979bfe
Undo accidental commit change to kiway.cpp
2023-04-18 23:04:51 -04:00
Marek Roszko
ea077bc34d
Banish ignore.h to core
2023-04-18 22:44:04 -04:00
Seth Hillbrand
82ba67db82
Initialize settings for SINGLE_TOP
2023-04-18 19:27:32 -07:00
Jeff Young
2c34a08bf1
Ignore empty field-name-templates.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14552
2023-04-18 17:31:25 +01:00
Jeff Young
f72cc6dd51
Amend overly aggressive assert.
2023-04-18 17:31:22 +01:00
Jeff Young
7e5fedef6a
Markup fixes.
...
1) allow escape sequences inside markup sequences
2) keep overbar when inside nested markup
3) always place overbar at full height, not sub/superscript height
Fixes https://gitlab.com/kicad/code/kicad/issues/14553
Fixes https://gitlab.com/kicad/code/kicad/issues/13449
2023-04-17 17:56:54 +01:00
Nimish Telang
51e55dd750
Convert sprintf to snprintf in most files
2023-04-17 15:39:34 +00:00
Jeff Young
86ca90aa2d
Fixes to allow copy/paste of pin data.
...
1) allow paste even if initial cell isn't writeable
2) allow paste to add rows if there's an addHandler defined
Fixes https://gitlab.com/kicad/code/kicad/issues/14508
2023-04-16 23:04:47 +01:00
Jeff Young
c6d593a47b
Formatting.
2023-04-16 23:04:47 +01:00
Jeff Young
cc4a8dcc89
Small improvements to lifecycle safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14521
Fixes https://gitlab.com/kicad/code/kicad/issues/14315
2023-04-16 18:47:04 +01:00
Jeff Young
6f59740953
Tighten up the lifecycle management of VIEW_ITEMs in
...
general, and the SYMBOL_VIEWER_FRAME's m_previewItem in
particular.
(Attempted fix for Sentry KICAD-G1.)
2023-04-16 14:21:23 +01:00
Jeff Young
b74d964bff
Handle legacy libraries with escaped symbol names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14057
2023-04-15 17:47:32 +01:00
Marek Roszko
8fd4909f86
Init curl in InitPgm for thread safety
...
curl itself highly recommends not initializing curl from within a thread.
Due to the PCM, this can happen in a thread these days.
Pointed out by Érico Rolim in https://gitlab.com/kicad/code/kicad/-/merge_requests/855
2023-04-15 09:18:54 -04:00
Jeff Young
d01c023d5a
Retire the lib-tree scoring algorithm.
...
It appears to cause more confusion than help.
Fixes https://gitlab.com/kicad/code/kicad/issues/13905
2023-04-14 23:35:27 +01:00
Lucas Dumont
923f386f08
Dont' create new cell if editing one
...
Return key is used to change cell line. If cell was in edition, the edition is saved before changing line.
Before this change using return key in the last row, if edited, both saved the change and create new row.
After this change, it'll just save the just, and will need a second key press to create a new row.
2023-04-14 16:44:09 +00:00
Marek Roszko
0eefde6046
Fix build error pre wx 3.1.6
2023-04-13 18:20:16 -04:00
Alex
21103924f4
Don't crash when canceling initial setup in Manage Footprint Libraries
2023-04-13 22:16:56 +03:00
Mike Williams
33b2b5b09d
STEP Export: Update options to reflect DNP and Unspecified filtering
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14125
2023-04-13 10:33:03 -04:00
Lucas Dumont
3c24017aa4
Check KiFACE return value
...
Avoid segfault when cancelling initial global library setup
2023-04-13 13:31:02 +00:00
Jeff Young
8e29a054f3
Performance improvement for GetShownColumns.
...
(This needs to be fast as it's called from OnUpdateUI events.)
2023-04-13 13:45:22 +01:00
Ian McInerney
6c05801d9e
Make the property grid compatible with wx 3.3
2023-04-12 18:57:12 +01:00
Ian McInerney
73a1e63e8e
Modify how we print the wx version compat macros
2023-04-12 18:57:12 +01:00
Ian McInerney
8f3bbf36f8
Replace __WXGTK20__ with __WXGTK__
...
We no longer care about a GTK2 vs 3 difference, we only support GTK 3.
2023-04-12 18:57:12 +01:00
Ian McInerney
f0684510f0
Replace wxScopedPtr with std::unique_ptr
...
Upstream has deprecated wxScopedPtr and recommends users switch to using
std::unique_ptr instead.
2023-04-12 18:57:12 +01:00
Ian McInerney
a77e94d16f
Add hack to speed up font choice box widget creation
...
There are problems internal to GTK that mean creating choice boxes with
a lot of items is a very slow process. This hack works around one of
those issues to make it faster to create and display the menu in the
choice box.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14277
2023-04-12 15:23:34 +01:00
jean-pierre charras
8d206d6a67
LIB_TABLE_GRID_TRICKS, popup context menu: fix minor issues:
...
- add separator only if needed
- ensure selection parameters are up to date.
2023-04-12 08:12:22 +02:00
Marek Roszko
bfad8bb0d5
Prevent VIEW::UpdateItems and onShowTimer from firing repaints if GAL did not complete init
...
This appears to be a possible event race on startup
Fixes sentry KICAD-10A
2023-04-11 22:09:05 -04:00
Jeff Young
01564a254f
Make sure "Item" and "Description" end up in the translation database.
2023-04-11 23:56:12 +01:00
Jeff Young
eef3492fc0
Make symbol/footprint trees sensitive to language change.
2023-04-11 23:51:58 +01:00
qu1ck
0c049eccc7
Fix a bunch of compiler warnings
2023-04-11 17:01:30 +00:00
jean-pierre charras
b2554ad611
manage libraries dialog: show new state of widgets as soon as the context-menu
...
activate/deactivate changes their state
Fixes #14517
https://gitlab.com/kicad/code/kicad/issues/14517
2023-04-11 18:46:07 +02:00
jean-pierre charras
e208685f85
DIALOG_SHIM: fix missing aEvent.Skip() in DIALOG_SHIM::onChildSetFocus().
...
This method was added in commit a914f6e9
.
Missing Skip() created issues on Windows (text edit cursor not shown in dialogs)
2023-04-11 10:54:50 +02:00
qu1ck
a6d10c8e97
Enable warnings on msvc
2023-04-11 00:17:50 +00:00
Mike Williams
32eb1ef77e
Sch->PCB: propagate DNP from symbols to footprints attributes
...
Also add a 3D viewer toggle.
2023-04-10 13:11:21 -04:00
Jeff Young
a914f6e992
First <ESC> after an edit in a textEdit cancels the edit.
...
(Second will exit the dialog.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14514
2023-04-10 15:13:43 +01:00
Jeff Young
374d3d52ef
Rollback wxChoice -> wxComboBox changes for now.
...
wxComboBox still has serious issues on macOS.
Fixes https://gitlab.com/kicad/code/kicad/issues/14399
Fixes https://gitlab.com/kicad/code/kicad/issues/14413
2023-04-09 23:00:33 +01:00
Jeff Young
9252793fdb
Add select-all to TEXT_ENTRY_TRICKS.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14237
Fixes https://gitlab.com/kicad/code/kicad/issues/13304
2023-04-09 21:25:09 +01:00
jean-pierre charras
c6bcfda84c
DIALOG_IMAGE_PROPERTIES: fix some issues:
...
- add missing dialog_image_properties_base.fpb file
- fix not displayed image.
2023-04-08 16:41:55 +02:00
jean-pierre charras
8ca0ba8118
add missing .fpb file
2023-04-08 16:41:55 +02:00
Ian McInerney
a0b5de91f3
Move forgotten file to core library
...
Turns out, there was a cpp file for hte core library, so turn the
library into a static library.
2023-04-08 00:37:49 +01:00
Ian McInerney
07d613d0d2
Subclass wxDataViewCtrl to include our helpers
...
It is cleaner to just extend the class with these functions rather than
having the separate functions.
2023-04-08 00:07:33 +01:00
Seth Hillbrand
5fcc1135a8
Revert "Modernizes search for Cairo, Fontconfig, Freetype, HarfBuzz and Pixman"
...
This reverts commit 9efd24a69d
.
Breaks MSW builds, so this is a non-starter for now
2023-04-07 10:12:43 -07:00
Seth Hillbrand
2cd854af14
Move Spacemouse to advanced config
...
The spacemouse driver, particularly on Mac, is extremely unstable and
causes crashes even when not being used. This places the interface
behind an advanced config flag to ensure that users can affirmatively
opt-in to the potential for crashes
2023-04-07 10:08:43 -07:00
Nimish Telang
9efd24a69d
Modernizes search for Cairo, Fontconfig, Freetype, HarfBuzz and Pixman
2023-04-07 16:15:53 +00:00
Alex
e91b53fc39
opengl_gal: Remove extra padding of bitmap textures.
...
Since the format has been changed to RGBA8, default (UN)PACK_ALIGNMENT = 4
works correctly, so the texture width padding to 4 is not needed anymore.
Fixes https://gitlab.com/kicad/code/kicad/issues/14432
2023-04-07 13:52:43 +03:00
Ian McInerney
18ea3be3f2
Revert "Reintroduce constexpr to COLOR4D"
...
This reverts commit 33da9b2327
and the
following commit dc08c48f33
.
C++17 changed the behavior of static class member variables that are
constexpr defined. Previously this definition/declaration split was
valid for constexpr members, but after C++17 the static constexpr member
variables are automatically inlined, so the declaration is no longer
exported in some compilers (GCC 9/10/11 seem to have problems).
An alternate way of constexpr member variables is putting the
initialization in the class definition, but we can't init a COLOR4D
object when defining the COLOR4D class.
For now, revert this change until we can figure out the proper way of
architecting these colors.
2023-04-06 20:18:31 +01:00
Ian McInerney
ea62b145ff
Introduce core interface library
...
This library is meant to move non-EDA items (language extensions,
library extensions, etc.) into the lowest-level of our dependency chain.
This library should never depend on anyother non-thirdparty code in the
kicad codebase.
2023-04-06 15:01:18 +01:00
Ian McInerney
33da9b2327
Reintroduce constexpr to COLOR4D
...
This fixes the initialization-order fiasco in the color initialization
sequence, which was originally fixed by making COLOR4D constexpr, but
was then reintroduced when the assert was changed to wxASSERT (wxASSERT
is not compatible with constexpr).
2023-04-05 14:07:01 +01:00
Wayne Stambaugh
c3e6825d62
Add hashing to and unit tests for some low level objects.
2023-04-04 15:28:34 -04:00
Jeff Young
a9b2234f4e
Use a softer Reset for grid settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14458
2023-04-04 17:05:21 +01:00
Jeff Young
13e79af8a0
Eagle template footprints don't actually belong to board.
...
Set their parent to nullptr before deleting (as the board may have
already been deleted).
Likely fix for Sentry KICAD-79.
2023-04-04 14:18:49 +01:00
Jeff Young
b3e2cf218f
Fix Mac crash-on-quit when timed infobar is up.
2023-04-03 23:44:40 +01:00
Seth Hillbrand
d135295ac8
Update translator contributions
...
Adds a number of missing contributors to our translations
2023-04-03 13:07:15 -07:00
Jeff Young
9b4627e782
Don't pass a FRAME-based UNITS_PROVIDER to a modeless dialog.
...
(The dialog may outlive said frame.)
Should fix Sentry KICAD-3A.
2023-04-03 17:18:33 +01:00
Mike Williams
98e846459a
BOM Presets: don't use designated initializers
2023-04-03 11:24:38 -04:00
Mike Williams
9c3d93eb34
BOM Generator: wire up forced exclusion, optional DNP exclusion
2023-04-03 09:07:52 -04:00
Mike Williams
c5cc313da9
Symbol Fields Table: BOM presets saved in JSON settings
2023-04-03 09:07:52 -04:00
Mike Williams
753ae21fd4
BOM Generator: wire up to kicad-cli
2023-04-03 09:07:52 -04:00
Mike Williams
4ac0d71ad4
Grid Tricks: don't override paste into actively editing cell
...
Also strip linebreaks and tabs if we are in a single cell.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/12276
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8361
2023-04-03 09:07:51 -04:00
Jeff Young
28028c941e
Retire Local/Draw coords distinction from PAD (the last object to have it).
2023-04-02 18:02:41 +01:00
Jeff Young
7ca057ea02
Marginally increase sliver width checker's bogus segment tolerance.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14449
2023-04-02 16:43:29 +01:00
Ian McInerney
8351c8923a
Make version info work without lsb-release installed
2023-04-02 00:30:36 +01:00
Jeff Young
bbd6c80507
Collapse FP_* down into their PCB_* equivalents.
2023-03-31 22:57:46 +01:00
Wayne Stambaugh
28776f5745
Text attributes object improvements.
...
* Add compare method to COLOR4D object.
* Add unit test to validate COLOR4D comparison method.
* Add missing color test in text attribute comparison method.
* Add unit test for text attribute object.
* Remove unnecessary headers from text attribute header.
* Move text attribute code into separate source file.
2023-03-29 12:53:45 -04:00
Jon Evans
65193487a6
Properties: Rename methods to better reflect their purposes
2023-03-26 19:43:16 -04:00
jean-pierre charras
4e27e91b2f
KICAD_CURL_EASY: fix compil warnings (avoid using deprecated functions)
2023-03-25 10:18:05 +01:00
Marek Roszko
8a8589b9db
Fix cli crash due to dialogs buried in the pcb parser...
...
Fixes sentry KICAD-Q2
2023-03-24 19:52:48 -04:00
Seth Hillbrand
0b54eb6edb
Backout change unrelated to 19d0aceda3
2023-03-24 12:28:03 -07:00
Seth Hillbrand
19d0aceda3
Remove superfluous m_status variable
...
This used to be used to store information for the item similar to
m_state but it has been deprecated and no uses remained
2023-03-24 09:38:39 -07:00
Nimish Telang
f7bf3011fb
Use bundled Find{CURL,ZLIB}.cmake
2023-03-24 12:54:52 +00:00
jean-pierre charras
7aace908e1
Gerber plotter: fix incorrect arcs in regions when using a plot offset.
...
The arc center in Gerber units was incorrectly calculated.
Fixes #14402
https://gitlab.com/kicad/code/kicad/issues/14402
2023-03-24 11:25:25 +01:00
Marek Roszko
c65e33ac13
Prevent crash in color settings due to dropdown weirdness
...
Fixes sentry reported crash KICAD-R6
2023-03-23 19:46:47 -04:00
Salvador E. Tropea
7e3f1b1a00
Adds the missing plot formats to `kicad-cli sch export`
2023-03-22 02:14:50 +00:00
David Holdeman
79fbde0894
Add option to use drill/place file origin for kicad-cli gerber export
2023-03-21 12:18:14 +00:00
Ian McInerney
016c958021
Always build spice simulator support
...
The simulator has advanced considerably, and it is seeing lots of active
development, so make it a required part of KiCad. Additionally, the
build without the simulator has actually been broken for a while, so no
one clearly is building without ngspice right now.
2023-03-20 16:54:32 +00:00
jean-pierre charras
10d4c63c31
EDA_SHAPE_DESC(): catch a std::runtime_error when emitted by
...
template<typename T> T Get( PROPERTY_BASE* aProperty ) to avoid a crash,
and displays in Debug mode the runtime error message.
Fixes #14347
https://gitlab.com/kicad/code/kicad/issues/14347
2023-03-20 16:07:08 +01:00
Chartreuse
0d5976c52b
Diff Layer Transparancy Fallback for Low Framebuffer Count
2023-03-20 13:05:24 +00:00
Jeff Young
a14c017def
Save location of legend in worksheet.
...
Also provides a different cursor when over a legend (to make it clearer
that you can drag it).
2023-03-20 09:51:41 +00:00
Jeff Young
ec6d709929
Make sure legend reflects gain/phase for AC small signal analyses.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14301
2023-03-19 23:02:58 +00:00
Jeff Young
6f44b85c13
Formatting. (No functional changes.)
2023-03-19 22:09:43 +00:00
Alex
10c4b948cb
Support canceling initial global library table setup.
2023-03-19 14:30:53 +03:00
Alex
672c468342
Fix clashing error dialogs when can't load dynamic library.
2023-03-19 13:01:54 +03:00
Alex
b89545e484
GTK: Fix settings import paths showing up twice.
2023-03-19 12:51:37 +03:00
Roberto Fernandez Bautista
c5362c9b0a
CADSTAR: Parse PINNOOFFSET and PINNOANGLE
2023-03-16 21:07:08 +01:00
Roberto Fernandez Bautista
a5dc528c88
CADSTAR: Fix edge case in parts grammar (symbol name can be quoted)
2023-03-16 21:07:08 +01:00
Roberto Fernandez Bautista
59d88e1871
CADSTAR Parts: Add parsing of hierarchy tree
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
b70fe88145
CADSTAR Parts: Fix parsing of hidden pins (possible for several pins per net!)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
6ab2112135
ADDED: CADSTAR Parts Libraries (.lib)
2023-03-16 21:07:07 +01:00
Roberto Fernandez Bautista
8f83f27336
CADSTAR SCH: Refactor loading of symbols out of loading part info
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
c34207b726
CADSTAR: Remove wxPoint + improve formatting
2023-03-16 21:07:06 +01:00
Roberto Fernandez Bautista
e8ead30baf
WIP: CADSTAR Parts now shows up in library tables and is handled correctly (todo: read cadstar header)
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
f45ab30fa6
Add parsing for symbols and pins (Parser now complete)
2023-03-16 21:07:05 +01:00
Roberto Fernandez Bautista
e2a4d58e8f
Extract CADSTAR PIN_TYPE and PIN::POSITION into a separate header
2023-03-16 21:07:04 +01:00
Roberto Fernandez Bautista
379e3b2fbb
Add CADSTAR Parts Library (.lib) parser and qa tests
2023-03-16 21:07:04 +01:00
Alex
fc6279a2ea
Improve EC_CONVERGING behaviour when lines are almost collinear.
...
(somewhat)
2023-03-16 05:41:58 +03:00
jean-pierre charras
412368b7f9
PDF plotter: encode the letters ( and ) in strings with context CTX_JS_STR
...
They are separators and cannot be used in user strings.
Fixes #14302
https://gitlab.com/kicad/code/kicad/issues/14302
2023-03-15 09:31:49 +01:00
Jeff Young
1058d36315
Unrotate/unflip board footprint to match library copy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14276
2023-03-13 22:36:25 +00:00
Jeff Young
7b3e01ce52
Select correct face from a .ttc file.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13314
2023-03-13 18:29:55 +00:00
Jeff Young
0fb1ccff21
Commenting and formatting. No functional changes.
2023-03-13 18:29:55 +00:00
Wayne Stambaugh
66f6168163
Fix mode-less dialog issues.
...
Don't assume the dialog is mode-less and call Destroy() from within a
dialog method. This will most assuredly crash if the dialog is shown
modally or quasi-modally.
Don't leak memory for mode-less dialogs created on the stack. Make sure
when the parent frame window is closed that all mode-less dialog memory
is cleaned up. Dialogs are not child windows like controls and toolbars
so their memory does not automatically get cleaned up when the parent
window is destroyed.
Do not directly access frame parent window's pointer in dialog destructors.
Apparently the tear down order when destroying mode-less dialogs is not
guaranteed so the parent window may get deleted before the dialog causing
a crash when accessing the parent window pointer from the dialog dtor.
Do not close mode-less dialogs in the parent frame's destructor. This
doesn't guarantee that the dialog(s) will be destroyed before the parent
but it may reduce some careless mode-less dialog event handling in the
future.
2023-03-13 12:04:01 -04:00
Jeff Young
dc78797274
Support SHEET_PATH when printing.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14233
2023-03-12 22:24:06 +00:00
Jeff Young
c4ef08bead
Exercise more caution with user filenames.
...
In particular, don't assume "1" is an extension in "Schematic_1.1".
Fixes https://gitlab.com/kicad/code/kicad/issues/14263
2023-03-12 15:52:45 +00:00
Jeff Young
99247adf15
Fix uninitialized variable.
2023-03-12 12:56:12 +00:00
Jeff Young
74f064d3aa
Don't keep smart pointers to wxWindows, particularly modeless ones.
...
wxWindows have their own lifecycle management.
2023-03-11 19:36:01 +00:00
Ian McInerney
e20b33cb66
Fix boost dependencies
...
* Add Boost::locale explicetly to the CMake since nanoodbc requires it
* Don't let nanoodbc add all Boost libraries to the link line, since it
is used in common, and it was pulling the unit test framework into
common then.
2023-03-11 13:29:45 +00:00
Jeff Young
c9351dfd67
Drawing improvements for symbol & footprint diffs.
...
Moves forced-transparency setting down into VIEW_ITEM so that it can
be used to place forced-transparent objects in a different target.
This keeps EnableDepthTest() from equalizing the alpha values between
the two symbols (or two footprints).
2023-03-11 12:45:16 +00:00
Mike Williams
b32ba16da4
UI: Add Numpad Enter as "Return" equivalent in missing places
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14244
2023-03-10 16:25:17 -05:00
Jeff Young
357427d803
Graphical diff for board vs library footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-10 17:16:40 +00:00
Ian McInerney
56b7d570f9
Remove uses of climits header/defines
...
2 of the 3 includes never used it, and the other could be switched to
the C++ numeric_limits class.
2023-03-10 17:08:56 +00:00
Seth Hillbrand
d405fff1d8
Correct alpha blending in PDF plot
...
We fake the alpha channel by pre-multiplying but we forgot to account
for the downscaling of the input channel value in addition to correcting
the alpha * white. This led to clipping when the values overflowed
Fixes https://gitlab.com/kicad/code/kicad/issues/14238
2023-03-10 09:00:12 -08:00
Ian McInerney
a6ebd60c3b
CMake: Modernize Boost import to use imported targets
2023-03-10 16:38:35 +00:00
Seth Hillbrand
d2cc252fc7
Move via/track/grid selection widget to wxComboBox
...
The wxComboBox drops nicely from the top of the screen, showing the full
element list, opposed to the choice widget that centers the selection
and places the list off the top of the screen if there are many
elements. This was broke for MacOS until wx3.2
Fixes https://gitlab.com/kicad/code/kicad/issues/1866
2023-03-09 11:45:44 -08:00
Jeff Young
bc0d59801a
Graphical diff for schematic vs library symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-09 18:04:52 +00:00
Jeff Young
2d6ab62da4
ADDED: schematic/library diff for symbols.
2023-03-09 18:04:52 +00:00
Salvador E. Tropea
13de3c0656
Use constants for the names of the built-in colors
...
- Avoid repetition and errors from typos
- Allow simple changes
- Simpler data type handling, the constants are wxString
(Cherry-picked from f135881bd6
in 7.0)
2023-03-07 10:34:42 +00:00
Jeff Young
98d7b14dbc
A better solution to keep SPICE netlist from being entirely selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14177
2023-03-06 18:46:01 +00:00
Jeff Young
65c9988d45
Improve cache performance.
2023-03-06 17:18:01 +00:00
Jeff Young
9b9efb9002
Cache for netclass pattern assignments.
2023-03-06 13:56:04 +00:00
qu1ck
88062c5fc3
Add vector3 to swig
...
Fixes regression in 7.0 making fp 3d model offsets not accessible in
python
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14179
2023-03-05 15:59:22 -08:00
Jon Evans
7b3fd2113c
Improve sheet rendering performance
...
- Cache font markup parsing
- Cache SCH_SYMBOL::GetOrientation
- Don't construct new strings each time in GetDefaultFieldName
2023-03-05 17:41:46 -05:00
Jeff Young
461def2719
Move automatic dimension processing inside PCB_DIMENSION_BASE.
...
Also move dimension precision to an enum so it can get a proper dropdown
in the properties inspector.
2023-03-05 15:19:06 +00:00
jean-pierre charras
f569cffa8e
Step exporter fixes and enhancements:
...
- fix duplicate code and a few bugs (some are due to changes in code over the years)
- ADDED: option to export tracks and vias on external layers Exporting tracks is *very* time consuming,
and need a bit of optimization.
2023-03-05 12:55:15 +01:00
Jeff Young
23accffc6d
Add Property Inspector support for dimension objects.
...
Includes changing the class hierarchy so that dimension objects inherit
from PCB_TEXT rather than containing a PCB_TEXT member variable.
2023-03-04 23:16:46 +00:00
Jon Evans
610e787ada
Move to requiring explicit action to save project settings
2023-03-04 14:25:07 -05:00
Jon Evans
eba0783b38
Fix rotation/flipping properties for text boxes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14159
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14164
2023-03-04 13:11:15 -05:00
Wayne Stambaugh
4e99812145
Coverity fixes and code cleaning.
2023-03-04 13:02:05 -05:00
Jeff Young
f41f04b301
Hook up AddField handler to GRID_TRICKS for SCH dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/git/14153
2023-03-02 18:17:41 +00:00
Wayne Stambaugh
789bf6455a
Coverity fixes and code cleaning.
2023-03-02 09:04:47 -05:00
Salvador E. Tropea
a6b1a09edf
Fix rounding errors in gerber files
...
The userToDeviceCoordinates helper returns a VECTOR2D
Converting it to VECTOR2I back and forth is a bug and generates rounding errors
Cherry picked from stable branch
2023-02-28 20:27:16 +01:00
Johannes Pfister
a87550a2c6
When importing legacy PCB dimension: Use automatic dimension when Unit couldn't be determined
2023-02-28 11:59:47 +00:00
Roberto Fernandez Bautista
b03366c9e8
Fix CADSTAR importer memory leaks
...
We were leaking the xml tree when throwing exceptions
2023-02-27 23:57:39 +01:00
jean-pierre charras
8b47c94f6e
PANEL_COLOR_SETTINGS: swap swatches and texts to avoid annoying truncation.
...
In some languages, the texts can be long, and create truncation of the left
column. So if the left column shows swatches they are truncated, or not visible
Truncating long texts is less annoying.
Fixes #14052
https://gitlab.com/kicad/code/kicad/issues/14052
2023-02-27 08:35:35 +01:00
Jeff Young
fe9370ceea
Don't allocate all of memory when the coord system turns inside out.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14088
2023-02-26 21:53:05 +00:00
Roberto Fernandez Bautista
698d0b7e92
CADSTAR Sch: Fix loading of graphical arc shapes
...
Correctly load arc shapes as real arcs instead of approximating now that
v7 supports graphical arcs in the schematic.
Also fix calculation of arc geometry for ccw arcs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14101
2023-02-26 19:46:34 +01:00
jean-pierre charras
51d46c0e73
plotters rework: add plot fct to use TEXT_ATTRIBUTES class to pass text settings
...
Old PLOTTER::Text is not (yet) removed, but it use negative text size
to mirrored text, which is not really compatible with some plotters (especially PDF).
Using TEXT_ATTRIBUTES is much easy and much better,
so PLOTTER::PlotText() is added.
Note: "old" PLOTTER::Text() is not removed yet.
2023-02-26 14:44:53 +01:00
jean-pierre charras
bbfc5c272e
Fix my commit d07738a06c
.
...
( a DC->SetPen() was deleted by mistake)
2023-02-25 19:06:46 +01:00
jean-pierre charras
ece34e1a0c
Plot Gerber format: ensure all attributes are added to polygon items.
...
Especially, TA.AperFunction,EtchedComponent for net tie footprints using polygons.
2023-02-25 19:06:46 +01:00
Jeff Young
9a0aeb4344
Adjust AC-small-signal plot names when saving placeholders.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14016
2023-02-25 13:26:33 +00:00
Jeff Young
ee956673b1
Respect readOnly cells in GRID_TRICKS.
...
Also fixes setting colors in the signals grid as it allows us to make
it editable again.
Fixes https://gitlab.com/kicad/code/kicad/issues/14079
2023-02-25 11:02:12 +00:00
Seth Hillbrand
bce402a01c
Revert font spacing/tabs to the v6 model
...
While convoluted, this model matches as best we have found so far, the
alignment with scintilla. The spacing is character size for N-1 of the
characters in the 4-space tab stops. The final character is sized for
the actual space character in the stroke font (0.761905)
Fixes https://gitlab.com/kicad/code/kicad/issues/13791
2023-02-24 17:15:57 -08:00
Jeff Young
65a10bd425
Remove unused member variable.
2023-02-24 22:43:23 +00:00
Jeff Young
150d2fd281
Tweak the Mac default selection highlight color for better visibility.
2023-02-24 12:44:55 +00:00
Jeff Young
4bb508eacf
Adjust stroke font baseline offset to better match 6.0.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13886
2023-02-24 12:44:55 +00:00
Jon Evans
1651b44ab1
Fix some PCB_SHAPE properties
...
Hide irrelevant position/start/end properties
for shape classes that don't use them.
2023-02-23 20:23:44 -05:00
Seth Hillbrand
81256c0fa4
Prevent mutex deadlock
...
The overbar function in outline fonts recursively calls the text
function which already owns the lock. To avoid this, we have an
unlocked variant that is wrapped by the exposed text function
Fixes https://gitlab.com/kicad/code/kicad/issues/14015
2023-02-23 14:59:59 -08:00
jean-pierre charras
bc8a78c6df
Eeschema plot: honor B&W plot option for bitmap images.
...
Fixes #14013
https://gitlab.com/kicad/code/kicad/issues/14013
2023-02-23 09:50:05 +01:00
Jon Evans
f076f6fb46
Preserve unknown keys in JSON_SETTINGS
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13847
2023-02-22 19:00:47 -05:00
jean-pierre charras
dce8826eb2
Fix incorrect tilt of italic texts when plotting them.
...
Fixes #14023
https://gitlab.com/kicad/code/kicad/issues/14023
2023-02-22 16:55:20 +01:00
Jon Evans
43d3a18b86
Improve HiDPI handling of appearance/layer controls
2023-02-22 09:20:36 -05:00
Jon Evans
89ef6b36f4
Fix layer widget in HiDPI situations
2023-02-22 09:20:30 -05:00
Salvador E. Tropea
915446a472
Create the built-in colors in the constructor
...
This is needed so Python scripts can get built-in colors using the
SETTINGS_MANAGER.GetColorSettings() member.
Otherwise calling it with a built-in name crashes.
(cherry picked from commit aee6d9d01c
)
2023-02-22 12:52:44 +00:00
jean-pierre charras
814dcdab31
Fix compatibility with wxWidgetsversion < 3.1.6
2023-02-22 10:05:37 +01:00
Ian McInerney
be19e967dc
Remove WX_COMPATIBILITY flag
...
Some classes had been originally designed to be usable separate from wx,
but over time our uses of the classes have become entertwined with wx
features (e.g. colors), and various changes have also leaked wx into the
classes unguarded. So just remove the option to hide wx in those classes
to simplify the code.
2023-02-22 01:44:06 +00:00
Ian McInerney
0ba116a3ee
Remove unused functions from COLOR4D
2023-02-22 01:44:06 +00:00
Ian McInerney
bcb93e9aa7
Modernize setting of compiler definitions in CMake
...
add_compile_definitions was added in 3.12, and our minimum is now
greater than that.
2023-02-22 01:44:06 +00:00
Marek Roszko
39e69a3d29
Fix up handling of font names available in multiple names
...
ttf fonts can declare multiple language names. Many by default opt to just declare one and not tag it any particular language.
However, there are CJK languages that typically leverage this function the most. They'll tag both a "en" and a cjk lang family name in CJK characters.
To be as user friendly as possible, we need to display said fonts in the CJK languages if KiCad to set to such a locale.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14011
2023-02-21 20:26:41 -05:00
jean-pierre charras
d07738a06c
gr_basic.cpp: ensure a pen with width = 0 is transparent.
...
Setting its color to COLOR4D::UNSPECIFIED (i.e. opacity = 0) is not enough
for all platforms (i.e. Windows)
2023-02-21 20:06:54 +01:00
Jeff Young
6fcb95b24e
ADDED user-defined signals.
2023-02-21 13:32:01 +00:00
Jeff Young
ae0cf19923
Nullptr safety.
2023-02-21 13:32:01 +00:00
Jeff Young
87eb4401e3
Add Scintilla support to WX_GRID.
2023-02-21 13:32:01 +00:00
jean-pierre charras
b05b33a9ff
Fix a compil issue with gcc12.2 and Coverity warnings.
2023-02-21 11:54:38 +01:00
Mark Roszko
365c7be4ed
Fix symbol contributor link
2023-02-20 19:44:37 +00:00
jean-pierre charras
31be74b8b3
Fix a few Coverity warnings
2023-02-20 09:25:01 +01:00
Marek Roszko
343e3aee55
Remove unused m_sockets
2023-02-19 23:49:43 -05:00
Marek Roszko
30a49462fe
Fix crash parsing cadstar
...
Fixes sentry KICAD-B2
2023-02-19 08:06:35 -05:00
Marek Roszko
c5a2c9c773
Try to prevent a crash in mpFXY::Plot
...
Fixes sentry kicad-c0
2023-02-19 00:38:42 -05:00
Marek Roszko
d55e2049e5
Silence some warnings with static_casts
2023-02-18 23:36:50 -05:00
Marek Roszko
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05:00
Marek Roszko
dffd2da8c8
Fix the shared_lock added and micro-opt the reindex
2023-02-18 11:28:19 -05:00
Marek Roszko
e053fbefd7
Use a shared_mutex to read/write lock the nickIndex
...
Fixes sentry kicad-ax
2023-02-18 10:17:58 -05:00
Jon Evans
f7d59f2e89
Enable properties panel in footprint editor
2023-02-17 20:35:56 -05:00
qu1ck
2975f53647
PCM: auto reload global libs after dialog is run
...
This adds Reset() method to KIFACE to reload global libs stored in
global static vars.
Also refactors some lib reload code in various frames to have
common MAIL_RELOAD_LIB handler.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12500
2023-02-17 17:24:32 +00:00
Mark Roszko
7b4abb1f7b
FT_Face is also not thread, protect getTextAsGlyphs
2023-02-17 14:39:52 +00:00
Marek Roszko
65d5b34da3
freetype is not thread safe, zone filler can trigger multi-thread access
...
sentry KICAD-B1
https://freetype.org/freetype2/docs/reference/ft2-base_interface.html
[Since 2.5.6] In multi-threaded applications it is easiest to use one FT_Library object per thread.
In case this is too cumbersome, a single FT_Library object across threads is possible also, as long as a mutex lock is used around FT_New_Face and FT_Done_Face.
2023-02-17 07:26:52 -05:00
Seth Hillbrand
576bef4ba0
Fix Ukrainian language name
...
Should refer to the language not to a Ukrainian person
2023-02-16 15:10:47 -08:00
Seth Hillbrand
5c1b15f8e3
Make LIB_TREE_NODE sort irreflexive
...
std::sort requires explicit ordering of all elements. It does not allow
for equality in its output
2023-02-16 13:00:18 -08:00
Marek Roszko
c189053ee5
CURLINFO_SIZE_DOWNLOAD_T is a enum entry, use the version check instead
2023-02-14 23:44:46 -05:00
Marek Roszko
94b5ddbb50
CURLOPT_XFERINFOFUNCTION is an enum entry not a define, the check is invalid
2023-02-14 23:24:02 -05:00
Jon Evans
e5b376721d
Properties: remove assertion that no longer makes sense
2023-02-14 21:08:36 -05:00
Jon Evans
473979d686
Fix handling of PPI when loading embedded images
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13884
2023-02-14 19:42:06 -05:00
Jeff Young
03484aedbc
Workaround wxWidgets enforced min pen width by using transparent pen.
...
Also fixes some bugs in our shape printing code when a border is not
specified but a fill is.
Fixes https://gitlab.com/kicad/code/kicad/issues/13891
2023-02-14 14:44:04 +00:00
Mike Williams
4b07e3e413
Common Actions: Find Previous
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8968
2023-02-14 08:21:37 -05:00
Jeff Young
785f1acdb0
Archive .ibs files.
...
Also archives .pkg files that share a name with an archived .ibs file.
Fixes https://gitlab.com/kicad/code/kicad/issues/12102
2023-02-14 11:59:17 +00:00
Marek Roszko
e8e407dfba
It's not impossible for the font face to fail loading
...
LoadFont()'s only usage already checked for nullptr to fallback, let's actually return nullptr on a failed load
Fixes sentry KICAD-8Z
Make the cause of sentry KICAD-95
2023-02-13 20:09:05 -05:00
Marek Roszko
9647a22e50
Prevent another GAL crash on init due to psuedo-race
...
Fixes Sentry KICAD-98
2023-02-13 19:10:49 -05:00
Jeff Young
eb7fec52d5
Add archiving of SPICE files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12102
2023-02-13 22:46:07 +00:00
Mike Williams
d915cb780e
Search Pane: add Activation (enter/double click) event support
2023-02-13 10:57:05 -05:00
Marek Roszko
58350b4521
Ensure gal is initialized before letting DoRepaint blowup spectacularly.
...
Maybe a fix for KICAD-6B
2023-02-13 07:18:07 -05:00
Jeff Young
837ba323fb
Add doc link to custom rules syntax help.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13727
2023-02-12 21:34:35 +00:00
Marek Roszko
4665823089
Turn on and fix MSVC compliance mode issues
...
We want /permissive- to enable debug performance improvements in MSVC 17.5+.
This flag is also default under C++20 so we'll have to deal with these compile issues anyway at some point in the future.
In particular, MSVC becomes pedantic about ternary types.
See https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170#ambiguous-conditional-operator-arguments
MSFT cites https://cplusplus.github.io/CWG/issues/1805.html
2023-02-12 16:30:37 -05:00
Jeff Young
1e756dbdd8
Save cursor positions in sim workbook.
2023-02-12 20:40:23 +00:00
Jeff Young
e5176ff4d6
ADDED power dissipation plotting and cursors.
...
Also fixes a bug so that voltages, currents and power dissipations are
only probed if the flag is set -- this keeps ngspice from throwing an
error if you probe something twice (for instance, if you have .probe
commands in text and turn off the auto-probing).
2023-02-11 21:11:07 +00:00
Jeff Young
bc108023b3
ADDED operating point overlay for SCH_EDIT_FRAME.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11253
2023-02-11 21:11:07 +00:00
Jeff Young
2a5bb71fbd
ADDED operating point text variables for labels and symbols.
...
ADDED formatting for cursors and operationg points
Also fixes a bunch of bugs to make the new cursors work with .ac sims.
Fixes https://gitlab.com/kicad/code/kicad/issues/11253
Fixes https://gitlab.com/kicad/code/kicad/issues/6965
2023-02-11 21:11:07 +00:00
Jeff Young
39d35a8bec
Better cursor feedback for plot window.
2023-02-11 21:11:07 +00:00
Jeff Young
f0bd25b397
ADDED use-settable simulation trace colors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2536
2023-02-11 21:11:07 +00:00
Jeff Young
09822c7f18
ADDED direct access to signals & cursors.
...
ADDED differential cursors.
Fixes https://gitlab.com/kicad/code/kicad/issues/4447
Fixes https://gitlab.com/kicad/code/kicad/issues/6221
2023-02-11 21:11:07 +00:00
Jeff Young
8b4c4b8500
Board-specific hint for board version of Net Settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13630
2023-02-11 21:11:07 +00:00
Jeff Young
0dcc34ddc8
Simplify Remove Unused Pads dialog.
2023-02-11 21:11:07 +00:00
Jeff Young
b000d68def
Move simulator to tool framework.
2023-02-11 21:11:07 +00:00
Jeff Young
946e0a4b98
ADDED support for e-series based tuning.
2023-02-11 21:11:07 +00:00
Jon Evans
61dd4b7043
Properties: fix rebuilding when availability changes
2023-02-11 15:50:51 -05:00
Marek Roszko
189ce373bb
Remove default hotkeys for grid set/reset.
...
This is a waste of hotkeys for what should be seldom used activities.
If a user needs hotkeys for this, they can bind them manually
2023-02-11 13:20:53 -05:00
Jon Evans
eb240fda9a
Properties: introduce validators; re-enable zone hatch settings
2023-02-11 11:44:58 -05:00
Jon Evans
254168c788
Properties: introduce method chaining for initialization
2023-02-11 11:44:58 -05:00
Jon Evans
609ef96e42
Attempt to fix GitLab template duplication
2023-02-11 11:41:12 -05:00
Jon Evans
6948a0bebd
Expose new netclass storage to SWIG
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13337
2023-02-11 09:50:24 -05:00
Alex
822d7af4b7
Hide scrollbars in editors by default.
2023-02-11 16:39:09 +03:00
Seth Hillbrand
fda3feaf3f
Revert "Add doc link to custom rules syntax help."
...
This reverts commit 7874735810
.
2023-02-10 15:33:03 -08:00
Alex
4ac6d6a0bd
Fix "wxEXPAND overrides alignment flags in box sizers" assert.
...
wxALIGN_CENTER_VERTICAL flag is ignored if wxEXPAND is present in
box sizers.
2023-02-11 02:15:44 +03:00
FPiorski
7978fdbfce
Plot colored drawing sheet text with the correct color
2023-02-09 14:12:48 +00:00
jean-pierre charras
5da5ccc4bf
pagelayout_editor: fix some minor issues:
...
- text color not always stored in file
- Indicator for changes in main title not updated after save.
2023-02-09 14:16:26 +01:00
jean-pierre charras
ae2da76615
Pcb printing: fix incorrect pos. of the board when printed without worksheet.
...
Fixes #13258
https://gitlab.com/kicad/code/kicad/issues/13258
2023-02-08 11:05:31 +01:00
jean-pierre charras
a493a2c822
kicad-cli, pcbnew pàlot: honor the color options when ploting pdf files
...
--black-and-white and -t were shown in help, but not handled
Fixes #13805
https://gitlab.com/kicad/code/kicad/issues/13805
2023-02-07 20:20:45 +01:00
jean-pierre charras
0d903d43a0
pagelayout editor: Add tests for invalid parameters.
...
Invalid parameters are repeat count < 1, size < 0 and default size < 0.01 mm
2023-02-07 12:53:34 +01:00
Seth Hillbrand
823607796b
Additional safety around wks bitmaps
...
Invalid files can create large problems for unloaded PNG data
Fixes https://gitlab.com/kicad/code/kicad/issues/13801
2023-02-07 12:08:39 +01:00
jean-pierre charras
23d0e6b4c0
Fix compil on msys2 (Structured Exception Handling not really supported)
2023-02-05 10:39:25 +01:00
Alex
525d0da126
Move __try into lambda.
2023-02-05 07:55:01 +03:00
Alex
b913e9be1e
Move more of defragment inside the __try block.
2023-02-05 07:45:03 +03:00
Alex
74a242c662
Catch access violation in defragment due to OpenGL drivers on Windows.
2023-02-05 07:03:04 +03:00
jean-pierre charras
729be64850
Preferences dialog: try to reduce its width, in non English languages.
...
Step 2: Remove some useless spacers, and do not force some widgets
to have a too large size.
2023-02-04 17:45:39 +01:00
jean-pierre charras
6b5eeeb861
Preferences dialog: try to reduce its width, in non English languages.
...
Remove some useless spacers, and do not force some widgets to have a to
large size (by removing empty areas).
Work in progress: one panel is still too big.
2023-02-04 14:36:14 +01:00
jean-pierre charras
90e759e738
Dialogs: minor cosmetic fixes (reduce a few spaces between widgets)
2023-02-03 16:58:30 +01:00
Graham Keeth
9a34178f66
add CURRENT_DATE to text var autocomplete
2023-02-03 00:10:55 +00:00
Wayne Stambaugh
e20c86ad5e
Minor dialog layout improvements.
2023-02-02 16:54:52 -05:00
Jeff Young
7874735810
Add doc link to custom rules syntax help.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13727
2023-02-01 23:40:53 +00:00
jean-pierre charras
8b6fda2890
PANEL_COMMON_SETTINGS_BASE: Reduce the minimal width of the panel.
...
Other languages than English can have much bigger sentences, thus
creating a very large panel.
2023-02-01 11:29:55 +01:00
Jon Evans
ee2cdc01e7
Make common settings options not stretched out
2023-01-31 21:57:30 -05:00
Marek Roszko
7d80815b7b
Just use hash for sentry release for all builds for now
2023-01-31 21:17:11 -05:00
Marek Roszko
719be61627
Silence some kicad-cli loading errors on clean installs
2023-01-31 20:57:31 -05:00
Seth Hillbrand
ef964f2303
Move Ivan Chuba to Ukrainian
2023-01-30 11:52:59 -08:00
Seth Hillbrand
6a993ffb13
Update contributors lists for v7
2023-01-30 09:31:55 -08:00
Marek Roszko
5163cb6976
Don't use SystemDirsAppend on windows for finding the docs
...
TODO, yeet SystemDirsAppend entirely on Windows into the sun
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11589
2023-01-29 20:50:16 -05:00
kliment
ef8062bfad
pcbnew: Change some of the default settings in board setup and netclasses
2023-01-29 23:20:40 +00:00
Marek Roszko
80b1826095
Fix sentry release tagging broken by 98d55ce8
2023-01-29 11:51:03 -05:00
Marek Roszko
088cadfefc
Attempt to select PCM themes for cli by their display name
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13648
2023-01-28 17:07:06 -05:00
Jon Evans
d04cda35c5
Handle hidden attribute in fp-lib-table
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13689
2023-01-28 09:23:25 -05:00
Marek Roszko
4d811ba975
Enable layer arg for fp export svg
2023-01-27 23:45:42 -05:00
Seth Hillbrand
9ad2e9f25d
Standardize view checking
...
Uses wxCHECK* functions for mesage display and correct behavior when
encountering an invalid layer
2023-01-27 12:35:36 -08:00
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