Commit Graph

9621 Commits

Author SHA1 Message Date
Seth Hillbrand 42ebf0eca5 Limit FSWatcher
Library watches only need a single directory or immediate children.  The
project watcher should have a sensible limit to the total number of
files it tries to track.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15717
2024-05-09 15:42:25 -07:00
Jeff Young a99377c1ec The user can cancel the opening of many editors.
Don't play dice with the devil.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17989
2024-05-08 18:21:42 +01:00
Alex Shvartzkop dc8822b421 Don't hide symbol/footprint preview widgets on scroll. 2024-05-08 19:40:01 +03:00
Seth Hillbrand 72eee002aa Add effective display for fields 2024-05-07 17:59:13 -07:00
Marek Roszko f87bd91d61 Move libeval to kicommon 2024-05-07 20:44:19 -04:00
JamesJCode 9e1a5eb1bd Eeschema: Only assign nets with resolved netclasses to the label map
Also fixes a bug where the pattern assignment cache was not cleared
if all pattern assignments were deleted in the setup netclasses
panel.
2024-05-07 20:16:17 +01:00
Jon Evans 6c41354da5 DbLib: Prevent uncaught exception creating statement
Defer telling the statement about the connection until the
try block, because otherwise it can connect immediately and
potentially throw an exception if the connection fails.


(cherry picked from commit ddd7c35586)

Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-06 21:00:13 +00:00
Seth Hillbrand c8375c151c Launch default URI handler if exists
Otherwise, handle as a normal file

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17902
2024-05-06 12:22:40 -07:00
Seth Hillbrand 5156229da7 Fixup previous edit 2024-05-06 10:36:07 -07:00
Seth Hillbrand 8a306eecb6 Cleanup libgit init calls 2024-05-06 10:18:38 -07:00
Seth Hillbrand ba5ad70b68 Add default rotation format 2024-05-06 10:00:19 -07:00
Alex Shvartzkop 5475359d00 More build time optimizations. 2024-05-06 04:39:28 +03:00
Seth Hillbrand a835ba0715 Add "Mechanical" pad property
Prevents mechanical support pads from being used to check pad types.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16747
2024-05-05 21:57:10 +00:00
Jeff Young 1290228fbf Don't modify radius when editing center.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17192
2024-05-05 19:58:01 +01:00
Alex Shvartzkop 5e14ae9698 Add OpenGL info to About. 2024-05-05 21:30:25 +03:00
JamesJCode 658eb1d338 Assert if NESTED_SETTINGS migration is missing for an intermediate version
- Fixes early load during NESTED_SETTINGS construction within
  SCHEMATIC_SETTINGS, now failing due to missing migrations at that
  object construction point
- Adds missing (NOOP) migration for NET_SETTINGS schema versions 1 -> 2
2024-05-05 19:12:01 +01:00
Seth Hillbrand 0476b6c72d Ensure irreflexive property in LIB_TREE_NODE 2024-05-05 07:33:00 -07:00
JamesJCode 39d9aba576 Don't stop migrating JSON_SETTINGS if intermediate migrator missing 2024-05-05 14:22:53 +01:00
John Beard fa7e842c8c Rework item distribution
This splits the tool into two separate tools: by center and
by even gaps. Previously, this was automatically decided, based on
if the items could have any gaps between them. This was unintuitive
as it would appear to arrange by centre point sometimes but not others.
When items aren't all the same width, the results can then be very
different, based only on the starting positions.

The new behaviour is to have a dedicated tool for each, which echos
how graphical programs like Inkscape manage this.

The by-gaps method is then extended to work for overlapping items
(when items overlap, the overlaps are made equal). The logic is
centralised in kimath/geometry, and some QA is added. This should
make it easier to extend to eeschema, for example.

This also (attempts to) address some rounding issues which could
cause minor, but compounding, errors to build up along the list
of items.

Also, fix bugs in the collection filtering - previously items
like markers were filtered out only after the selection size
was used to compute the gaps between items.
2024-05-05 03:35:09 +08:00
Jon Evans 6b145b2830 Add optional reporting of non-KiCad design issues
Also add HTML reporter to PCB side to match schematic


(cherry picked from commit b8fa10ab2b)

Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-04 15:27:52 +00:00
Jeff Young c998234dec Restore accidentally deleted text size constraint algo.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17284
2024-05-03 22:12:34 +01:00
Jeff Young 65554943e0 lint reduction 2024-05-03 22:12:34 +01:00
Jon Evans 3351da9906 DbLib: Fill entire table if cache is empty when loading one part
The "already placed parts" feature causes a situation where many
single-part queries are placed before the cache is even filled.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17940


(cherry picked from commit 3c99a3797e)

Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-03 21:04:13 +00:00
Jon Evans 639f59839e Make sure database library has updated pointer to library table
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17903


(cherry picked from commit 1a76fce255)

Co-authored-by: Jon Evans <jon@craftyjon.com>
2024-05-03 15:39:33 +00:00
Alex Shvartzkop 2a889f03fc EasyEDA Std/Pro: import (some) component metadata for symbols.
Also fixes Reference numbering.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17806
2024-05-03 00:37:59 +03:00
Seth Hillbrand ae610bbe85 ADDED: Reset option for Library tables
This re-shows the option to reset the global library table to its
default, empty or specified state

Fixes https://gitlab.com/kicad/code/kicad/-/issues/2309
2024-05-02 21:31:59 +00:00
Seth Hillbrand 416033e8e5 Ignore hidden text fields when cross-probing
Zoom-to-selection should only show the elements that we can see, so
avoiding hidden fields in footprints keeps the zoom window appropriately
sized

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15245
2024-05-02 10:57:25 -07:00
Marek Roszko 62936b7e01 Remove the disabling of UseNativeColHeader now that we fixed our wx fork 2024-05-01 20:56:27 -04:00
John Beard 129c61a742 SELECTION::GetItemsSortedByTypeAndXY - minor tweaks
Simplify a little by keeping the positions of A and B in
variables.

Also remove const when returning by value - all that does is
inhibit a (possible, NRVO) move if you assign the result to
a non-const vector.
2024-05-01 23:33:25 +08:00
Rosy 17891f7a1d HTTP Libraries: Add support for descriptions of sublibraries 2024-04-30 11:57:00 +00:00
Marek Roszko 3d56494652 Add weirdly missing header for msvc 2024-04-28 22:22:24 -04:00
Marek Roszko 9ffa5db667 Delete m_locale in the pgm_base destructor instead of manual destroy method
We need the object in m_locale for a bit more things during program cleanup,
especially on macOS

The destructor of PGM_BASE is sufficient allowance of lifetime.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17369
2024-04-28 22:15:37 -04:00
JamesJ 6c5ac9e269 Check in fbp file for netclass setup panel
Was not added to commit 5f4c7a5
2024-04-28 18:18:42 +01:00
Jeff Young a24eada8b1 Cleanup. 2024-04-28 13:52:41 +01:00
Alex Shvartzkop 6fdeca7c56 Fix build on Linux. 2024-04-28 02:06:12 +03:00
Alex Shvartzkop 16e3692e71 Build time optimizations. 2024-04-27 23:49:13 +03:00
Marek Roszko a565db58c5 Hackfix crash in configure paths using non-ascii chars in column headers
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17743
2024-04-27 10:16:37 -04:00
Jeff Young c59ed0bbb7 Flip symbol editor's Y axis to match other editors. 2024-04-27 13:47:56 +01:00
Jeff Young 3b3de58e5e Make sure color settings are saved when modified.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17864
2024-04-27 13:30:45 +01:00
Alex Shvartzkop 1ae9e9b676 ADDED: XAO export for SALOME / Gmsh workflows.
Pad surfaces are assigned as face groups.
2024-04-26 01:53:43 +03:00
James J be8744176c Add SCH_RULE_AREA shapes to eeschema
Includes:
 - Fix GAL to draw closed polygons in eeschema
 - Add functionality to eeschema to draw arbitary polygons
 - Update polygon item previews to have customisable edge colour
 - Add new SCH_RULE_AREA class, derived from a poly SCH_SHAPE
 - Add SCH_RULE_AREA to paint and plot methods
 - Add new rule area color preference to themes
2024-04-25 14:24:46 +00:00
Jeff Young cd64630661 Remember shown columns in netclass setup.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17852
2024-04-25 08:34:36 +01:00
RosyDev 058b337b00 HTTP library users will now see the generic fields in the components' properties in the correct order as submitted by the API.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/17584
2024-04-25 00:23:51 +00:00
Alex Shvartzkop 5f81e01f43 ADDED: --net-filter option to STEP/BREP export CLI. 2024-04-24 18:28:53 +03:00
Wayne Stambaugh 8a1347d2c8 Property grid navigation improvements.
* Do not handle tab key event when committing property changes so the
  property grid tab navigation works correctly.
* Do not call commit property changes on tab key when no changes are
  pending.
* Skip event handling in the base object value change and changing event
  handlers in case they do not get overloaded in derived objects.
* Do not force focus to canvas on property change so arrow and tab key
  grid navigation work properly.  Forcing the user to click the property
  grid control to edit a single property doesn't make sense.
* Pass properties panel show event up the event stack.
* Do not set focus to canvas in tool dispatcher if it already has the
  focus.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/16957
2024-04-24 07:25:19 -04:00
Alex Shvartzkop 045f65608a Add VECTOR2L to Swig. 2024-04-23 23:37:45 +03:00
Seth Hillbrand fc93c63a19 Revert "Remove trailing zeros from all values"
This reverts commit abd0388794.
2024-04-23 11:08:14 -07:00
Alex Shvartzkop 865e3a9f3c Improvements when working closer to 32-bit integer limits.
- Changes BOX2 size to extended coordinates.
- Adds BOX2ISafe to construct a BOX2I that will fit in int32.
- Adds more checks.
- Safer computations.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/17670
2024-04-23 16:34:07 +00:00
Jeff Young e8be782687 Mostly clean-up, but also bug fixes with bounding boxes. 2024-04-22 11:16:14 +01:00
Alex Shvartzkop 2babd574be Refactor autosave prefix into FILEEXT. 2024-04-22 04:06:04 +03:00