Commit Graph

7118 Commits

Author SHA1 Message Date
Jeff Young 66d9e7073f More discrete borders for Kicad mgr, PCM and appearances panels.
Fixes https://gitlab.com/kicad/code/kicad/issues/9616
2021-11-14 15:01:44 +00:00
Jeff Young 36fd62ccdc Another round of beautification changes for PCM.
Fixes https://gitlab.com/kicad/code/kicad/issues/9616
2021-11-14 13:11:19 +00:00
Wayne Stambaugh d87bfc7103 Make the OK button the default in the settings migration dialog. 2021-11-13 08:14:32 -05:00
jean-pierre charras bfd09a4d16 Avoid calling deprecated wxPlatformInfo::GetArchName() in more than one place. 2021-11-13 09:52:08 +01:00
Jon Evans 43c85771eb Fix paste into Scintilla fields on macOS
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9473
2021-11-12 23:25:44 -05:00
Mikolaj Wielgus 921105330a Remove printing files from Project Manager 2021-11-12 20:18:32 +00:00
david-beinder a9b4465703 Altium import: Use UTF16 string table for PCB texts
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7948
2021-11-12 14:49:22 +00:00
Marek Roszko b20317ca84 Some minor cleanup of the proxy detect 2021-11-11 22:47:21 -05:00
Jeff Young 0b48876ce5 Decouple left and right pane minimums for splitter window. 2021-11-12 02:12:44 +00:00
Jon Evans 23e0751b2e fix clang build 2021-11-11 10:58:47 -05:00
Marek Roszko e2926f69a5 Add support to fetch windows proxy config for use with curl
Fix https://gitlab.com/kicad/code/kicad/-/issues/9594
2021-11-11 09:30:10 -05:00
Wayne Stambaugh 94119b365d Pcbnew: fix assertion in footprint hashing algorithm. 2021-11-10 16:51:35 -05:00
Jeff Young 7211c5a350 Kicad look & feel and reduce conceptual nesting depth of PCM. 2021-11-10 12:42:54 +00:00
Jon Evans 42eb063697 PCM: Treat color themes as read-only; don't copy to settings dir
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9548
2021-11-09 22:11:59 -05:00
Jeff Young b2fa2f81b2 Paste code expects a fully formed worksheet.
(And we may need the version later, so it's better to have it than
to not.)

Fixes https://gitlab.com/kicad/code/kicad/issues/9590
2021-11-09 23:18:38 +00:00
Jeff Young d4e3e67b8d Update kicad_prl file when doing a SaveAs.
Fixes https://gitlab.com/kicad/code/kicad/issues/9455
2021-11-09 17:25:18 +00:00
jean-pierre charras 39474921d9 DIALOG_CONFIGURE_PATHS: delete path in list when a path is deleted in dialog.
Fixes #9531
https://gitlab.com/kicad/code/kicad/issues/9531
2021-11-09 10:35:49 +01:00
Seth Hillbrand 6e5a918377 Writeable -> Writable 2021-11-08 15:56:51 -08:00
Seth Hillbrand 8f1dec61d2 Add swedish as option for translators
There appears to be activity in Weblate updating this language.
2021-11-08 11:41:14 -08:00
Mikolaj Wielgus 6d9456ea4d Fix opening files with spaces on Linux
`wxLaunchDefaultApplication()` fails on files with spaces on Unix
systems due to a programmer error. This is fixed in newer wxWidgets
versions, so let's backport it as a workaround.
2021-11-07 14:31:14 +00:00
Jeff Young 997b22d3ee Safety on setting netclass line styles. 2021-11-07 14:12:44 +00:00
jean-pierre charras 4293caf00c fix crash in wxDataViewItem GetNextItem() when there are no item.
Fixes #9540
https://gitlab.com/kicad/code/kicad/issues/9540
2021-11-07 08:53:56 +01:00
Mikolaj Wielgus 932bed278e Fix EDA_RECT inflation zeroing width when it was negative
Fixes https://gitlab.com/kicad/code/kicad/issues/9063
2021-11-06 18:23:02 +00:00
Jeff Young b73793f9ef Rewrite text find/change routines to support word matching.
The old algorithm treated the "Words" checkbox as meaning match the
entire text, not match words, which is unlikely to be what anyone is
expecting.

Also fixes replace to replace all instances in a single text item
rather than just the first.

Reported on the forum.
2021-11-05 13:37:37 +00:00
Seth Hillbrand 888050bd67 Fix an error when missing argc/argv data
Boost::unit_test is supposed to pass along data vals but seems to be
missing in our case.  This provides a fallback
2021-11-03 16:52:46 -07:00
Jeff Young 2b5ea7812f Fix another case of the double-quote in wxString::Format problem.
Yes, sadly it's a string change and we're past string freeze.  However,
without the fix you get no string at all.
2021-11-03 18:53:26 +00:00
Mark Hämmerling 8b9e2c8ba4 Add myself to list of translators and other contributors 2021-11-02 22:29:15 +00:00
Jeff Young 40b4052ad4 Improve text hittesting in schematics.
Text has a fairly big bounding box to account for descenders, overbars,
etc., but it makes it feel too sloppy for hittesting.  This change
allows selection disambiguation to look at the actual strokes of the
text when deciding what's "closest".

Fixes https://gitlab.com/kicad/code/kicad/issues/9506
2021-11-01 21:13:12 +00:00
Jeff Young 5275393a94 Use highlight algo that works for both PCBNew and Eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/9500
2021-11-01 16:08:49 +00:00
Jeff Young c8a8efa67b Save as for current version project files.
Fixes https://gitlab.com/kicad/code/kicad/issues/9455
2021-10-30 23:01:53 +01:00
Jeff Young 696619fdb6 Larger set (and larger default) of grid sizes for drawing sheet editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/9494
2021-10-30 20:32:23 +01:00
Jeff Young 5f8e0ef1e0 Patch up arc hit-testing and printing for 6.0
This could use another look when we're not so near release.  We
really shouldn't need to special case eeWinding vs. not eeWinding.

Fixes https://gitlab.com/kicad/code/kicad/issues/9491
2021-10-30 15:10:07 +01:00
Jon Evans e6c3027531 Action string typo fixes 2021-10-30 08:47:36 -04:00
Wayne Stambaugh ffddefc532 Minor dialog layout improvements. 2021-10-29 15:29:49 -04:00
Jeff Young b42fce430d Separate default grid between eeschema/symeditor and other apps.
Fixes https://gitlab.com/kicad/code/kicad/issues/9472
2021-10-28 22:16:33 +01:00
Jeff Young c5dd620696 Improve spacing and alignment in html report panel. 2021-10-28 15:11:15 +01:00
Jeff Young 4fe025909d Fix centered rotated text in Pcbnew Eagle importer.
Fixes https://gitlab.com/kicad/code/kicad/issues/9466
2021-10-27 14:38:42 +01:00
Jeff Young 1fbb7f17c7 Don't copy (or cut) hidden columns.
Fixes https://gitlab.com/kicad/code/kicad/issues/1911
2021-10-26 15:55:17 +01:00
Jeff Young f724fe7eff Move bbox padding to RTrees so it doesn't interfere with hittesting.
Fixes https://gitlab.com/kicad/code/kicad/issues/9361
2021-10-26 13:46:30 +01:00
Wayne Stambaugh 1f7fd436a2 Move board object polygon code into the object source files.
Having the board object polygon code all defined in a separate file made
finding the polygon code for an object difficult to find.
2021-10-25 17:42:11 -04:00
Roberto Fernandez Bautista a79a221257 Array creator tool: Add option to assign unique reference designators
ADDED: Option to assign unique reference designators to footprints
created with the array tool [pcbnew]

CHANGED: Array creator dialog no longer displays pad numbering properties
when in the board editor. [pcbnew]

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2354
2021-10-25 22:38:49 +01:00
Seth Hillbrand 4b5c010e63 Standardize asterix at the beginning of title
This is how the unsaved state is presented in Editor Frames (for
better/worse) so we should be consistent
2021-10-25 09:36:23 -07:00
Jeff Young c52cb229d0 Add unsaved-changes indication to Symbol Properties.
Fixes https://gitlab.com/kicad/code/kicad/issues/9443
2021-10-25 12:35:04 +01:00
Jeff Young c9d858eaf5 Add status bar message for constraint mode.
Fixes https://gitlab.com/kicad/code/kicad/issues/9282
2021-10-24 14:04:12 +01:00
Seth Hillbrand 3036cc2ce5 Correct Korean language name
Thanks to korearf for pointing this out
2021-10-23 07:13:50 -07:00
Jeff Young fecb53b64f Clean up removal of separate front & back footprint text visibility.
Fixes https://gitlab.com/kicad/code/kicad/issues/9441
2021-10-22 21:14:15 +01:00
Wayne Stambaugh 0795fcb810 Minor dialog layout fixes. 2021-10-21 08:59:55 -04:00
qu1ck 09a2701136 Fix arc angle calculation and python API for it
1. It's impossible to use methods that modify parameters in swig so
I extend it in wrapper
2. Simplify GetArcAngle() and fix the bug where it lies about 360
degree arc to be 0 degrees.
2021-10-20 10:38:42 +00:00
Wayne Stambaugh 1e1da55840 Coverity fixes. 2021-10-19 07:42:27 -04:00
Jeff Young 0826c26a18 Fix a few minor dialog issues. 2021-10-18 18:09:40 +01:00
Ian McInerney 094fdc1b13 Limit CURL to only support HTTP(S) protocols
We don't actually need any other protocols, so lets disable them
to ensure we can't be affected by any vulnerabilities in that part of
the CURL library.
2021-10-18 00:34:53 +01:00
Ian McInerney 5817a8b5f4 Remove unused m_host variable
This variable isn't needed anymore after 5f53019290
pushed dark mode handling into the HTML window itself.
2021-10-18 00:29:40 +01:00
Seth Hillbrand 61025de865 Update default paths for symbols/footprints
Changes the default search path (if not initialized) to "symbols" from
"library" and to "footprints" from "modules"
2021-10-17 16:07:46 -07:00
Roberto Fernandez Bautista 99442350a4 CADSTAR PCB: Fix loading of arc tracks following recent PCB_ARC changes
We no longer have any knowledge of the original start/end of the arc,
since SetArcAngleAndEnd swaps the start and end to ensure the arc is
always clockwise at the end.

Adds a method EDA_SHAPE::EndsSwapped() to notify whether the start/end
point of the shape were swapped.
2021-10-17 17:57:51 +01:00
Roberto Fernandez Bautista 4d5a344ed5 CADSTAR: Reduce slowdown from progress reporting
Only report progress when it changes by more than 1%
2021-10-17 17:57:51 +01:00
Jeff Young 1f19c41c29 Support printing of kicad_dru files. 2021-10-15 12:45:43 +01:00
Jeff Young 8a8775bed8 Remove another use of non-argv wxExecute
(Fixes supplied by mwielgus.)
2021-10-15 12:45:43 +01:00
Jeff Young f9861b4a6c Finish arc rework and push out to file formats. 2021-10-15 12:45:43 +01:00
Jeff Young b52529521e Replace individual LIB_* shapes with LIB_SHAPE (based on EDA_SHAPE).
Also moves to more capable FILL_T model that can be shared.
2021-10-15 12:45:43 +01:00
Jeff Young 9b9e379aa0 Overhaul arc internal model to not over-specify information. 2021-10-15 12:45:43 +01:00
Jeff Young a41944020d Push most of PCB_SHAPE impl down in to EDA_SHAPE. 2021-10-15 12:45:43 +01:00
Jeff Young 672b27f91a Formatting. 2021-10-15 12:45:43 +01:00
Seth Hillbrand 4852a8afa1 Set Scintilla cursor color for themes
Updates cursor to be visible even in dark themes

Fixes https://gitlab.com/kicad/code/kicad/issues/9398
2021-10-14 10:10:55 -07:00
Jeff Young fb8ee1a9d3 Remove assert. 2021-10-14 14:13:50 +01:00
Jeff Young 1b6c4638ca Escape quotes to prevent break-out.
Fixes https://gitlab.com/kicad/code/kicad/issues/9236
2021-10-13 17:17:57 +01:00
Mikolaj Wielgus 5f53019290 Substitute all wxHtmlWindow with HTML_WINDOW
Remove other places where <body> tag is used to override the default
black-on-white theme.
2021-10-12 07:07:15 +00:00
Seth Hillbrand 759abb7928 Make sure that relpath gets a value
Even if we are not asking for normalized paths, we need to return a
value in the relpath.  This modifies 574bef2237

Fixes https://gitlab.com/kicad/code/kicad/issues/9363
2021-10-11 09:19:41 -07:00
Ian McInerney 961c127ebe Convert mouse coordinates to native pixesl in the 3D viewer
All operations in the camera are done using the native pixel sizes,
so we need to ensure the mouse coordinates are converted to native
pixels to make the mouse operations line up with the view.

Fixes https://gitlab.com/kicad/code/kicad/issues/2561
Fixes https://gitlab.com/kicad/code/kicad/issues/8410
2021-10-10 17:52:12 +01:00
Seth Hillbrand 52bbfb9109 Remove dependency of dot size on linear mils
Changes a dot to be a square pixel (linewidth x linewidth).  This allows
the removal of IU dependencies and ensures that a dot is always visible
on screen.  Also makes sure that cairo is setting the current linewidth
during its stroke routines

Fixes https://gitlab.com/kicad/code/kicad/issues/9362
2021-10-10 09:40:26 -07:00
Roberto Fernandez Bautista 0fa8e1f311 DRC Control: Clear pointer to MARKER after it has been centered
Also, added asserts to verify SelectMarker and CenterMarker actually
do select one.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9344
2021-10-10 16:22:04 +01:00
Seth Hillbrand 3c29e68992 Use wxFFileInputStream to avoid dangling pointer
Cases where fp was left open could lead to dangling files until KiCad is
closed.  Stack-based file stream automatically closes after parsing and
on exception

Fixes https://gitlab.com/kicad/code/kicad/issues/9336
2021-10-08 13:42:04 -07:00
Ian McInerney c14bdf7fe0 pcb_calculator: Update panel images/text when system theme changes 2021-10-08 17:31:21 +01:00
Marek Roszko 4377f8019d Add (optional) trace mask setting as advanced config option
Maximize laziness!
This does not affect the environment variable usage
2021-10-07 21:05:58 -04:00
Wayne Stambaugh 034bc1e815 Fix ever shrinking window height for frame windows that are not maximized.
For some reason this does not affect the KiCad frame manager window so it
is an exception to prevent it from becoming an ever growing window height
issue.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/8889
2021-10-07 16:58:54 -04:00
Mikolaj Wielgus faad5ee1ce Use system text and background colors in PCB calculator
wxHtmlWindow forces white background and black text. Force it back to
system settings.
2021-10-07 19:09:42 +00:00
Mike Williams 27765cd584 TOOL_DISPATCHER: drag activation should always use screen coordinates
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9325
2021-10-06 19:05:18 +00:00
Jeff Young 1bb5fc3fd6 Work around EnsureVisible bug in wxWidgets during DRC cross-probe.
Also adds double-click-marker to open DRC dialog and select marker
in list.

Fixes https://gitlab.com/kicad/code/kicad/issues/7246
2021-10-06 11:17:03 +01:00
Jeff Young 95f841a037 A more nuanced method of making Board & Schematic Setup read-only.
This one still allows you to scroll to see all contents.

Fixes https://gitlab.com/kicad/code/kicad/issues/9302
2021-10-06 11:16:46 +01:00
Seth Hillbrand 9a8d1246cc We don't keep a CHANGELOG.TXT
Direct interested readers to AUTHORS.TXT instead.
2021-10-05 19:46:53 -07:00
Seth Hillbrand 9066165792 Fix compile error on Mac 2021-10-05 19:44:35 -07:00
Seth Hillbrand 548e5f49bd Clean up unused variable usage
Unused variables in function calls can be commented out.  Unused
return variables get a new routine `ignore_unused()` that silences the
warnings with zero overhead.
2021-10-05 10:00:30 -07:00
Seth Hillbrand 043c326278 Add Boonchai K as Thai translator 2021-10-05 10:00:30 -07:00
Jeff Young ffd6fde700 Improve consistency and hotkey access in Appearances.
Added hotkey for cycling through net & netclass color modes.
Added hotkey for cycling through ratsnest layer visibilities.
Added code to display hotkey (if set) on the above and on high-contrast
cycle.

Fixes https://gitlab.com/kicad/code/kicad/issues/9312
2021-10-04 13:44:43 +01:00
Jeff Young 930c4e5582 Cleanup.
Formatting.
Naming conventions.
Use of auto.
Use of STL cover types.
2021-10-03 19:42:29 +01:00
Jeff Young 11c91c7179 Improve obscuring dialog algorithm to handle multiple dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/8970
2021-10-03 13:27:46 +01:00
Jeff Young 574bef2237 Normalize drawing sheet path to env vars & prj, not just prj.
Also cleans up the dialog a bit.

Also changes the workings of NormalizePath to return the input if
it couldn't be shortened which saves open coding that behaviour in
all its callers.

Fixes https://gitlab.com/kicad/code/kicad/issues/9036
2021-10-02 23:39:45 +01:00
Jeff Young e2baacec21 Add cross-probing between PCB (markers) and DRC marker list.
Fixes https://gitlab.com/kicad/code/kicad/issues/7246
2021-10-02 23:39:45 +01:00
Jeff Young 10dd70881c New paramaterized interface doesn't like quoted parameters.
(At least on MSW, anyway.)
2021-10-02 14:08:36 +01:00
Jeff Young 4e9b747e86 Fix wx3.0 (presumably) compile issue. 2021-10-02 12:39:33 +01:00
Jeff Young 671e9f2dba A better algorithm for centering library items in the tree.
It still doesn't center as wxWidgets' API is poorly suited for that.
But it does now at least keep it off the very top or bottom.
2021-10-02 10:41:26 +01:00
Jeff Young f606679164 Proper numeric sorting for intersheet refs.
Also expunges the horrifically named std::remove and std::remove_if
(neither of which remove anything).
2021-10-01 18:29:21 +01:00
jean-pierre charras e96108d3c8 Fix int ExecuteFile(...) incorrect behavior with quoted filename.
It uses a wxExecute() version that add quotes to filename, so the final
filename was incorrect.
Fixes #9292
https://gitlab.com/kicad/code/kicad/issues/9292
2021-10-01 17:26:01 +02:00
Seth Hillbrand c4fcff46ab Add Thai language option 2021-09-30 08:38:41 -07:00
Marek Roszko 0e3b001c51 Lock the windows when we ask about unsaved changes
Fix #9274
2021-09-29 23:01:06 -04:00
Seth Hillbrand 9e72c3b38d Don't add quotes for LaunchExternal in 3.0 either
The quotes do not work in GTK 3.0.5.  Since GTK is the only platform we
have left running 3.0, we can remove this.
2021-09-29 16:19:49 -07:00
Jeff Young 2489408c34 Use position as well as time-based drag semantics on Mac.
Fixes https://gitlab.com/kicad/code/kicad/issues/9276
2021-09-29 18:30:46 +01:00
Jon Evans 0458afe20a Fix escaping of double quotes in LIB_IDs 2021-09-28 20:38:36 -04:00
Jon Evans 62ef27e372 Remove hard-coded anchor color in eeschema 2021-09-28 20:26:47 -04:00
Mikolaj Wielgus adafb15126 Remove LaunchURL()
Unused and insecure.

Related to https://gitlab.com/kicad/code/kicad/-/issues/9236
2021-09-28 22:39:18 +02:00
Seth Hillbrand fda7d68243 Hide extra edit label elements
By default, we don't need to see the drop-down choice menu in the edit
text dialog.  It is shown by the routines that use it
2021-09-28 09:17:45 -07:00
Jeff Young f73042fe24 Some minor performance enhancements. 2021-09-28 14:28:35 +01:00
Jeff Young 9f841da98e Don't try and highlight netnames or holes of selected items.
Fixes https://gitlab.com/kicad/code/kicad/issues/9256
2021-09-27 23:22:59 +01:00
Jeff Young 3413358992 Make sure there is a filename before creating a parameter for it.
Fixes https://gitlab.com/kicad/code/kicad/issues/9263
2021-09-27 22:57:15 +01:00
Mike Williams 9ca836d1ea Tools: Respect system drag
Also remove the time-based aspect. We aren't all super speed clickers.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8765
2021-09-27 16:44:32 +00:00
Mikolaj Wielgus 1d26a29fc0 Remove tilde expansion
Fixes https://gitlab.com/kicad/code/kicad/issues/9213
2021-09-27 16:10:36 +00:00
Jeff Young c05e4376f9 Update backups folder name when doing project save as.
Fixes https://gitlab.com/kicad/code/kicad/issues/9254
2021-09-27 13:24:45 +01:00
Jeff Young 3e298f1175 Fix 0-sized HTML window on OSX. 2021-09-27 12:47:14 +01:00
Jeff Young cef5792e78 Formatting. 2021-09-27 10:34:32 +01:00
Jeff Young 5f3c67bd2b Fill in some missing GetMsgPanelItems and make some others consistent.
Also expunges a std::vector<MSG_PANEL_ITEM> cover type.
2021-09-27 00:23:40 +01:00
Jeff Young 5dc82037fb Fix typo. 2021-09-26 17:26:56 +01:00
Jeff Young 1723106b4d Compile fixes for wx3.0. 2021-09-26 17:02:27 +01:00
Jeff Young 88ad249f76 Cleanup. 2021-09-26 16:34:32 +01:00
Jeff Young 67fb8cbe9e Compile fix. 2021-09-26 16:20:46 +01:00
Jeff Young 2e0b3b8a82 Attempt to fix 0-sized error dialogs. 2021-09-26 15:28:17 +01:00
Jeff Young fa032400ee Fix compile error. 2021-09-26 15:28:17 +01:00
Jeff Young bbea8afdc5 Trim some (probably) excess includes. 2021-09-26 15:28:17 +01:00
Jeff Young 5bf042fcc1 Use individual parameter version of wxExecute.
Fixes https://gitlab.com/kicad/code/kicad/issues/9236
2021-09-26 15:03:06 +01:00
Jeff Young c6bcb85562 Excise system() calls.
Fixes https://gitlab.com/kicad/code/kicad/issues/9236
2021-09-25 20:09:06 +01:00
Seth Hillbrand e955ee7bd2 Disable ALT disambiguation for MSW
Better to not show anything than to show a broken dialog.
Disambiguation is accessible using the long-click function

Fixes https://gitlab.com/kicad/code/kicad/issues/9232
2021-09-25 09:04:59 -07:00
Jeff Young 46949abe4a Don't scroll to highlight an object already visible. 2021-09-25 15:31:52 +01:00
jean-pierre charras 5aea7b8123 Cairo: fix incorrect handling of arcs with angle >= 360 deg in some cases.
Fixes #9231
https://gitlab.com/kicad/code/kicad/issues/9231
2021-09-25 09:06:09 +02:00
Seth Hillbrand c69a16ca6d Wrap around highlights to ensure distinguishing
Bright colors are maxed out for highlighting.  Modestly darkening them
helps to distinguish them from their neighbors but keep the blue value
to help "glow" the selection

Fixes https://gitlab.com/kicad/code/kicad/issues/5560
2021-09-24 17:18:54 -07:00
Seth Hillbrand 64be61b4d6 Allow user to set footprint type up front
The default is usually wrong and presenting the basic footprint
information when creating an empty footprint allows the user to
establish their preference before mistakes occur.

Fixes https://gitlab.com/kicad/code/kicad/issues/9215
2021-09-24 13:48:01 -07:00
Jeff Young c7f098ab25 Remove unused variable. 2021-09-24 16:03:13 +01:00
Jeff Young 8eb2e986cf Fix a crash bug on quitting on OSX. 2021-09-24 14:07:57 +01:00
Jeff Young b065ff33dc Looks like clang (or OSX?) needs an extra include.... 2021-09-23 20:14:03 +01:00
jean-pierre charras 0cf81b6d4e LOCALE_IO rework to fix issues on linux when using env vars with non ASCII7 chars.
We need to use a "C" locate to read/write files, and therefore switch the locale.
Removing use of setlocale( LC_NUMERIC, "C" ) and use only
wxLocale( "C", "C", "C", false ) was too fast: on linux it breaks the env vars.
on MSW
    using setlocale( LC_NUMERIC, "C" ) generates an alert message in debug mode,
    and this message ("Decimal separator mismatch") must be disabled.
    But calling wxLocale( "C", "C", "C", false ) works fine
On unix:
    calling wxLocale( "C", "C", "C", false ) breaks env vars containing non ASCII7 chars.
    these env vars return a empty string from wxGetEnv() in many cases, and if such a
    var must be read after calling wxLocale( "C", "C", "C", false ), it looks like empty

So use wxLocale on Windows and setlocale on unix
2021-09-23 14:31:25 +02:00
Jeff Young 157c21d325 Only run Unix file handling stuff on Unix.
Fixes https://gitlab.com/kicad/code/kicad/issues/9217
2021-09-23 13:08:31 +01:00
Jeff Young c38de1dcaf Pull back some 7.0 fixes to Custom Rules code completion. 2021-09-23 13:08:31 +01:00
Jeff Young d11c10252d More changes to file resolvers.
Copy Kicad2Step fixes back to Kicad's file resolver.

Remove Kicad2Step's autogeneration of some variables in favour of
just reading the config file passed by Kicad verbatim.

Fixes https://gitlab.com/kicad/code/kicad/issues/7670
2021-09-22 11:28:45 +01:00
Seth Hillbrand 8a5388cf65 Make the python window follow the parent app
The Python window is pinned to the main KiCad application but to the
user, it appears that the window opens in response to their clicking
eeschema or pcbnew.  For this reason, we should re-center the python
window when the user will expect to see it when showing.

Fixes https://gitlab.com/kicad/code/kicad/issues/8623
2021-09-21 15:01:27 -07:00
Jeff Young 24f3c49631 Fix logic error in FileResolvers.
If Normalize() was not needed after finding a searchpath then we were
never updating tname and just blindly returning it.

Fixes https://gitlab.com/kicad/code/kicad/issues/7670
2021-09-21 12:35:16 +01:00
Marek Roszko 91e456113f Use StartsWith instead of Contains for the Intel check 2021-09-20 18:56:06 -04:00
Marek Roszko 1b8259701e Expand "Intel" GL_VENDOR check for workaround
Fix #7444 maybe
2021-09-20 18:20:57 -04:00
Seth Hillbrand 0f10748226 Disallow Ctrl-Tab and Ctrl-Shift-Tab as hotkeys
Fixes https://gitlab.com/kicad/code/kicad/issues/9010
2021-09-20 11:13:50 -07:00
Jeff Young f66654247a Read netclasses when importing Eagle projects.
Also creates a DRU file with the various netclass-to-netclass
clearance rules from the Eagle clearance matrix.

Fixes https://gitlab.com/kicad/code/kicad/issues/1774
2021-09-20 12:38:56 +01:00
Seth Hillbrand c088de5f75 Fix compile issues on non-mac 2021-09-19 08:41:10 -07:00
jean-pierre charras bdb1231169 Fix compil issues on GTK and MSW. 2021-09-19 17:28:14 +02:00
Jeff Young 6e7ce09572 Use more descriptive terminology for preferred text editor.
Also improves execution to allow the preferred editor to include
parameters, such as "/usr/bin/open -e".

Fixes https://gitlab.com/kicad/code/kicad/issues/9131
2021-09-19 15:17:26 +01:00
jean-pierre charras 2f9c6dd5cc PANEL_FP_PROPERTIES_3D_MODEL: fix an issue in FILENAME_RESOLVER::ValidateFileName():
Allows ':' if it is a disk separator in filenames on MSW (missing in commit b93188).
2021-09-19 08:57:48 +02:00
jean-pierre charras b931883876 PANEL_FP_PROPERTIES_3D_MODEL: fix an issue when trying to edit a filename (MSW specific).
On Windows, FILENAME_RESOLVER::ValidateFileName() always returned a illegal filename test,
because the separators ('/' and '\') are in list of illegal chars in filenames on MSW.
2021-09-18 18:17:54 +02:00
Jeff Young 5c07441e24 Remove Setup Dialog assignment of netclasses to buses.
Also removes the message bar display of assigned netclass for
buses and bus-to-bus entries.

Also fixes a bug where assigning a netclass via the canvas only
looked at the first level of bus members (and not any nested
members).

Also fixes a bug where the bus name validator tried to validate
a vector bus first -- which doesn't work as a vector bus may be
nested in a group bus.

Also fixes a bug where we were failing to check for illegal
chars in bus definitions which otherwise passed the bus parsers.

See additional comments in the bug report.

Fixes https://gitlab.com/kicad/code/kicad/issues/9160
2021-09-17 22:01:17 +01:00
Jeff Young 364ecc02ee Hide scaling hacks on platforms that don't need them.
Fixes https://gitlab.com/kicad/code/kicad/issues/9171
2021-09-17 12:37:53 +01:00
Jeff Young 2479e1d7b1 Improve common settings property grouping.
Also moves apply-icon-scaling-to-fonts to its own checkbox.  (We used
to try to infer when to do it, but that turns out to be a rathole.)
2021-09-16 18:31:44 +01:00
Tokita, Hiroshi 1f8b72c194 Added Japanese translators missing from the list
Some of the Japanese translators who are contribuinge to kicad-i18n
(https://gitlab.com/kicad/code/kicad-i18n) are
not contain the list, so add them.

I found the following translators was missed in the list.

```
Hidemichi Gotou <hgotou@pop16.odn.ne.jp>
KaoruZenyouji <kaoruzen@gmail.com>
kinichiro <kinichiro.inoguchi@gmail.com>
nosuzuki <nosuzuki@postcard.st>
starfort-jp <starfort@nifty.com>
```
2021-09-16 15:25:39 +00:00
Jeff Young fdd9df6dff Linear brightening doesn't work well for colours near white. 2021-09-16 14:17:52 +01:00
Jeff Young 6197717251 Avoid poor choices for point colors.
Also adjusts the point size to account for the fact that it now has a border.
2021-09-16 14:17:52 +01:00
Jeff Young b84d1456d5 KIFACE_I -> KIFACE_BASE. 2021-09-14 23:45:14 +01:00
Jeff Young 3aae3c6f65 Dark mode for a bunch of HTML dialogs.
WX_HTML_REPORT_BOX
WX_HTML_REPORT_PANEL
HTML_MESSAGEBOX
DIALOG_DISPLAY_HTML_TEXT

Fixes https://gitlab.com/kicad/code/kicad/issues/9157

Fixes https://gitlab.com/kicad/code/kicad/issues/9156
2021-09-14 21:23:57 +01:00
jean-pierre charras 666f7ea38c WX_GRID::EnsureColLabelsVisible(): avoid updating column label size when not needed.
Updating column label size generates a UI event and if EnsureColLabelsVisible()
is called inside a UI event, this is a bit annoying.
2021-09-14 20:08:48 +02:00
Seth Hillbrand 754464cb3b Fix coverity error
Check failed to open file before dereferencing
2021-09-14 10:15:43 -07:00
Jeff Young 38e1e780a8 Use EnvVar resolver not full resolver when expanding 3D search paths.
Fixes https://gitlab.com/kicad/code/kicad/issues/7670
2021-09-14 14:48:09 +01:00
Jeff Young 7a993c0211 Add support mode for dark mode to SCINTILLA_TRICKS.
Also removes the return value from the BITMAP_STORE's themeChanged
method as it will provide the wrong answer for the second frame it's
called on.

Also hooked up ACTION_TOOLBAR, the app launcher, and the project tree
to the wx event for system color changes so they change on the fly.

Fixes https://gitlab.com/kicad/code/kicad/issues/6026
2021-09-14 00:18:50 +01:00
Seth Hillbrand ab46aba5c9 Correct Language ID for Latin American Spanish 2021-09-13 11:00:23 -07:00
Jeff Young a5247471f7 Expunge a bunch more fixed font specs from wxFormBuilder files.
Also removes the -1 sizing of the status bar on GTK and MSW.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-12 13:53:12 +01:00
Jeff Young 9c78e4cf54 Mac needs different font size handling than MSW & GTK.
Mac already uses diverse font sizes (for instance, smaller fonts for
radio button groups), and the anti-aliasing is a lot better.  The
other platforms need a more limited range of sizes.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-11 23:40:31 +01:00
Jeff Young 769ca2d255 Add a quantized scaling mode for bitmaps.
125% scaled bitmaps look bad in the Launcher so we pin to 100%,
200%, 300%, etc.
2021-09-11 23:40:31 +01:00
Jon Evans 0a5bb093d0 Fix gcc build 2021-09-11 15:02:59 -04:00
Jeff Young ed8b63505d Fix font scaling issues in StatusBar and Selection Filter.
Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-11 18:25:11 +01:00
Roberto Fernandez Bautista 625e56676a Add progress reporting to CADSTAR Schematic & PCB importers
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8685
2021-09-11 17:50:19 +01:00
Jeff Young fbee62fc15 Tie font size scaling to when automatic icon scaling fails.
It appears that SetSymbolicSize() and ConvertDialogToPixes() fail
under the same circumstances.
2021-09-11 15:29:51 +01:00
Jeff Young cc13d6b2e8 Try out GTK font scaling based on icon scaling architecture.
wxWidgets symbolic sizes fail on HiDPI GTK screens; the dialog pixel
stuff fails on non-scaled GTK screens.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-11 10:57:25 +01:00
Jeff Young ad59254be8 Another round of font sizing tweaks.
It appears that both strategies in the last commit worked, leaving us
with squared scaling.  The dialog pixel architecture seems safer than
our icon scaling stuff, so this version attempts to use only it.

Also works around a bug where wxELLIPSIZE_MIDDLE doesn't work on Mac.

Fixes https://gitlab.com/kicad/code/kicad/issues/8608

Fixes https://gitlab.com/kicad/code/kicad/issues/8375
2021-09-10 21:46:13 +01:00
Seth Hillbrand abfc60acfc Split European Spanish and Latin American Spanish
This is a test split per requests.  While "Latin American Spanish" is
not really homogeneous, there are distinct differences to European
spanish, so we are splitting in an effort to allow both translations.
If one is less viable, this may re-merge in the future.
2021-09-10 12:45:59 -07:00
Jeff Young 7a822b55aa Another round of changes to attempt to fix the GTK font size issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-10 15:59:50 +01:00
Seth Hillbrand 29c2f3b7d4 Prevent jumping into disambiguation if moved
Moving points should not be overrided by disambiguation menu, so we
track where the disambiguation event started and only trigger the menu
if the mouse hasn't moved a full unit in x/y

Fixes https://gitlab.com/kicad/code/kicad/issues/9132
2021-09-09 16:24:18 -07:00
Seth Hillbrand 23024eb9e3 Fix typo 2021-09-09 11:30:00 -07:00
Seth Hillbrand dc574bcb24 Split Portuguese
Split the dialects of Portuguese into Bazilian Portgugese and Portugal
Portuguese
2021-09-09 11:18:32 -07:00
Seth Hillbrand fe9bdd41d9 Finalize modifier update
Update the preference pane info text

Also standardizes the use of "Option" instead of "Alt" for Mac users.

Fixes https://gitlab.com/kicad/code/kicad/issues/9129
2021-09-09 10:47:43 -07:00
Jeff Young 7a035e2675 More font scaling changes.
These may or may not fix scaling issues on GTK with HiDPI monitors.
2021-09-09 11:17:21 +01:00
Jeff Young 61ef431c56 Apply fixes from Kicad2Step filename resolver back to Kicad. 2021-09-09 11:17:21 +01:00
Jeff Young f013dbc7c4 More uniform handling of status fonts.
Fixes https://gitlab.com/kicad/code/kicad/issues/8608
2021-09-08 21:34:22 +01:00
Jeff Young e7debc495b WIP 2021-09-08 20:17:59 +01:00
Wayne Stambaugh 3b16c38756 Coverity issue fixes.
Fix Coverity issues 157138, 338547, and 338716.
2021-09-08 14:51:27 -04:00
Roberto Fernandez Bautista a2c28b18a8 "Fernandez Bautista" comes after "Evans"
In Spain we have two surnames. More details on wikipedia:
https://en.wikipedia.org/wiki/Spanish_naming_customs
2021-09-08 18:47:54 +01:00
Seth Hillbrand f901fe9ecf Re-add Korean language option
Korean has recently been fully updated by a group of dedicated
translators.  This adds the official menu entry.

Also remove Catalan as it hasn't been maintained during v6
2021-09-08 09:58:28 -07:00
Wayne Stambaugh ad1ee958b0 Code cleaning. 2021-09-07 15:18:42 -04:00
Seth Hillbrand c8b2e69332 Check if selection is primary tool
Previously, we were checking if the selection tool was the top of the
stack but this ignored many other "secondary" tools that might be
running such as the point editor.  These still allow the selection tool
to handle events such as clicks.  This change allows the selection tool
to handle clicks when it is the primary tool on the stack rather than
the top

Fixes https://gitlab.com/kicad/code/kicad/issues/9110
2021-09-07 10:42:01 -07:00
Wayne Stambaugh 41c7089417 Minor dialog layout improvements. 2021-09-07 08:06:02 -04:00
Michael Kavanagh 0e3c79d3b2 Remove inappropriate icons
Icons should be used sparingly to draw attention to the most used actions
2021-09-06 21:23:52 +00:00
Seth Hillbrand 343dbf0f5b Change default 45° hotkey to shift-space
This requires enabling the space key to be bound with shift, which was
disabled based on an overbroad limit of only allowing shift to be mapped
with letter keys
2021-09-06 12:18:29 -07:00
jean-pierre charras 56374ffa26 Try to fix a compil issue that does not happen on my computers. 2021-09-06 18:36:27 +02:00
jean-pierre charras 36048fa436 OPENGL_GAL::DrawArcSegment(): use a better number of segm to approximate the arc.
Previously, the count of segments used a magic number optimized for Pcbnew.
This is not good, and does not work well on Gerbview.
The count uses now a max error acceptable is approximation (5 microns in Gerbview and Pcbnew).
Fixes #9101
https://gitlab.com/kicad/code/kicad/issues/9101
2021-09-06 16:36:47 +02:00
Seth Hillbrand 7312bb4584 Fix compile error 2021-09-06 07:02:10 -07:00
Jeff Young c861fadc31 Make 3D path resolvers agnostic about alias syntax.
Some code seems to think it's :alias:path while other code thinks it's
alias:path.  This commit updates both the Kicad2Step resolver and the
KiCad internal resolver to be agnostic.

In 7.0 we should probably get rid of aliases entirely.  But that's a
story for another day....

Fixes https://gitlab.com/kicad/code/kicad/issues/9002
2021-09-06 14:26:24 +01:00
Jeff Young 0321e55f0b Add a hack to keep OSX from hijacking our help menu.
For some reason once a player is opened from the Kicad Manager window
all the items under the help menu get grayed out.  This prevents that
from happening.
2021-09-06 12:43:48 +01:00
Jeff Young f9417c6584 Update some comments. 2021-09-06 10:48:26 +01:00
Seth Hillbrand 8aba629fe5 All additive/subtractive with disambiguation key
This should work when clicking as disambiguation can occur in addition
to the modifiers
2021-09-05 19:34:42 -07:00
Seth Hillbrand 0a9a6dec7d Re-add alt as a backup option for heuristic skips 2021-09-05 19:32:07 -07:00
Marek Roszko 525099ea06 Use the correct define for windows 2021-09-05 22:22:27 -04:00
Marek Roszko 0ee79834bb Make alt key slightly better on windows 2021-09-05 22:17:08 -04:00
Seth Hillbrand a8d00bf088 Fix hotkey documentation for modifier update 2021-09-05 13:55:08 -07:00
Seth Hillbrand 240c3b75c4 Move selection disambiguation to long-click
This standardizes selection tools in SELECTION_TOOL class to be able to
handle a long-click as asking for a non-heuristic disambiguation menu.

Fixes https://gitlab.com/kicad/code/kicad/issues/8490
2021-09-05 13:42:51 -07:00
Jeff Young 59c15842f8 Exclude formatting chars from text width approximation.
Fixes https://gitlab.com/kicad/code/kicad/issues/9080
2021-09-04 22:09:32 +01:00
Jon Evans 6de277c226 Fix typo in violation severity importing
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9092
2021-09-04 12:20:36 -04:00
Roberto Fernandez Bautista 0aa37d1173 Fix issues with new overbar syntax
- Update sch text help (~~ no longer gets converted to single ~)
- Update Eagle importer to correctly handle new overbar syntax
- Update CADSTAR importer to correctly handle new overbar syntax
2021-09-01 20:25:39 +01:00
Seth Hillbrand 8a305eec32 Remove broken RefDesStringCompare
This function attempted a poor-man's natural compare but it assumed
specific structure of the string.  This broke for strings with
numberings that looked like decimals.

Instead, we use our natural string comparison function and remove the
references to this older function and its similar elements.

Fixes https://gitlab.com/kicad/code/kicad/issues/9067
2021-09-01 11:48:01 -07:00
Marek Roszko b32b04d27e Preserve archive timestamps on extract
Fix #9065
2021-09-01 01:04:43 -04:00
Jeff Young 2cdd3c9ebf Work-around incorrect spacing (and order) of buttons on Mac. 2021-08-31 22:39:25 +01:00
Jeff Young 641a6902b7 More robust hex-color interpretation. 2021-08-31 21:41:52 +01:00