jean-pierre charras
dcc1009162
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.
From master, commit 51d46c0e73
2023-03-01 10:45:23 +01:00
jean-pierre charras
d61e01ff4f
Plot Gerber format: ensure all attributes are added to polygon items.
...
Especially, TA.AperFunction,EtchedComponent for net tie footprints using polygons.
From master, commit ece34e1a0c
2023-03-01 09:39:15 +01:00
qu1ck
90eb5e9c31
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
(cherry picked from commit 2975f53647
)
2023-02-28 16:48:28 -05:00
Salvador E. Tropea
4213bb3a62
Fix rounding errors in gerber files
...
The userToDeviceCoordinates helper returns a VECTOR2D
Converting it to VECTOR2I back and forth generates rounding errors
Also is a waste of time
2023-02-28 19:23:26 +00:00
Johannes Pfister
33f835a437
When importing legacy PCB dimension: Use automatic dimension when Unit couldn't be determined
...
(cherry picked from commit a87550a2c6
)
2023-02-28 14:21:12 +00:00
Roberto Fernandez Bautista
c96f0f2396
Fix CADSTAR importer memory leaks
...
We were leaking the xml tree when throwing exceptions
(cherry picked from commit b03366c9e8
)
2023-02-27 22:58:41 +00:00
jean-pierre charras
c588639503
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:37:13 +01:00
Jeff Young
b2241dca72
Adjust stroke font baseline offset to better match 6.0.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13886
(cherry picked from commit 4bb508eacf
)
2023-02-26 21:59:43 +00:00
Jeff Young
5979b8e385
Don't allocate all of memory when the coord system turns inside out.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14088
(cherry picked from commit fe9370ceea
)
2023-02-26 21:58:08 +00:00
Roberto Fernandez Bautista
955bd5a6d1
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
(cherry picked from commit 698d0b7e92
)
2023-02-26 18:47:39 +00:00
Seth Hillbrand
f927c15adf
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
(cherry picked from commit 81256c0fa4
)
2023-02-25 13:44:18 +00:00
Jon Evans
009211c740
Fix some PCB_SHAPE properties
...
Hide irrelevant position/start/end properties
for shape classes that don't use them.
(cherry picked from commit 1651b44ab1
)
2023-02-24 01:24:41 +00:00
jean-pierre charras
c3d7158669
Eeschema plot: honor B&W plot option for bitmap images.
...
Fixes #14013
https://gitlab.com/kicad/code/kicad/issues/14013
2023-02-23 09:53:35 +01:00
jean-pierre charras
d5eb242295
Fix incorrect tilt of italic texts when plotting them.
...
Fixes #14023
https://gitlab.com/kicad/code/kicad/issues/14023
2023-02-22 20:25:25 +01:00
Salvador E. Tropea
b21e65fc5f
Fix compatibility with wxWidgets 3.0.x
...
- Use CanonicalName when GetCanonicalWithRegion() isn't available
2023-02-22 19:23:55 +00:00
Salvador E. Tropea
aee6d9d01c
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.
2023-02-22 09:12:22 -03:00
Marek Roszko
fd4a0dbedf
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
(cherry picked from commit 39e69a3d29
)
2023-02-22 01:27:09 +00:00
Mark Roszko
aab7581909
Fix symbol contributor link
...
(cherry picked from commit 365c7be4ed
)
2023-02-20 19:44:59 +00:00
Marek Roszko
6b38927123
Fix crash parsing cadstar
...
Fixes sentry KICAD-B2
2023-02-19 08:11:33 -05:00
Marek Roszko
f46e4049b6
Try to prevent a crash in mpFXY::Plot
...
Fixes sentry kicad-c0
2023-02-19 08:11:27 -05:00
Marek Roszko
5d793193e0
Fix crash by using a shared_mutex to read/write lock the nickIndex
...
Fixes sentry kicad-ax
2023-02-18 13:02:25 -05:00
Mark Roszko
62337f75b8
FT_Face is also not thread, protect getTextAsGlyphs
...
(cherry picked from commit 7b4abb1f7b
)
2023-02-17 15:17:11 +00:00
Marek Roszko
4d4fdfff70
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.
(cherry picked from commit 65d5b34da3
)
2023-02-17 15:17:02 +00:00
Seth Hillbrand
3f535aca8c
Fix Ukrainian language name
...
Should refer to the language not to a Ukrainian person
(cherry picked from commit 576bef4ba0
)
2023-02-16 15:11:14 -08:00
Marek Roszko
3b5c38d861
CURLINFO_SIZE_DOWNLOAD_T is a enum entry, use the version check instead
...
(cherry picked from commit c189053ee5
)
2023-02-15 04:45:22 +00:00
Marek Roszko
90fb075e34
CURLOPT_XFERINFOFUNCTION is an enum entry not a define, the check is invalid
...
(cherry picked from commit 94b5ddbb50
)
2023-02-15 04:26:51 +00:00
Jon Evans
df0f626283
Properties: remove assertion that no longer makes sense
...
(cherry picked from commit e5b376721d
)
2023-02-14 21:10:42 -05:00
Jon Evans
1909ce9220
Properties: fix rebuilding when availability changes
...
(cherry picked from commit 61dd4b7043
)
2023-02-14 21:10:42 -05:00
Jon Evans
60a45241e6
Properties: introduce validators; re-enable zone hatch settings
...
(cherry picked from commit eb240fda9a
)
2023-02-14 21:10:42 -05:00
Jon Evans
d403e92315
Properties: introduce method chaining for initialization
...
(cherry picked from commit 254168c788
)
2023-02-14 21:10:42 -05:00
Jon Evans
d20f49b58b
Fix handling of PPI when loading embedded images
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13884
(cherry picked from commit 473979d686
)
2023-02-15 00:42:30 +00:00
Jeff Young
f4b2b1b03f
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
(cherry picked from commit 03484aedbc
)
2023-02-14 14:45:24 +00:00
Marek Roszko
a48eace90a
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
(cherry picked from commit e8e407dfba
)
2023-02-14 01:09:56 +00:00
Marek Roszko
7a2a51ad44
Prevent another GAL crash on init due to psuedo-race
...
Fixes Sentry KICAD-98
(cherry picked from commit 9647a22e50
)
2023-02-14 00:11:15 +00:00
Marek Roszko
534000b49d
Ensure gal is initialized before letting DoRepaint blowup spectacularly.
...
Maybe a fix for KICAD-6B
(cherry picked from commit 58350b4521
)
2023-02-13 12:21:44 +00:00
Jon Evans
e1eedd3bba
Attempt to fix GitLab template duplication
...
(cherry picked from commit 609ef96e42
)
2023-02-11 12:04:39 -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