Marek Roszko
11de95778b
Unwrap the FROM_UTF8 macro in favor of direct function
...
The extern just gets annoying to try to export the func later. We also yeet TO_UTF8 to string_utils.h for parity.
2023-09-09 00:10:57 -04:00
Marek Roszko
bd3aca2887
Cleanup the kiface dll export declaration slightly
...
Why in the bloody world would you pass in the return type as part of the macro for export/import preprocessing
2023-09-08 20:44:08 -04:00
jean-pierre charras
72984c5c40
Gerbview: add refinements to option to set offset and rotation of layers.
...
Fix incorrect calculation of bounding boxes when the rotation is not n*90 deg.
2023-09-08 10:43:59 +02:00
Marek Roszko
3cd60007c5
Dont leak richio into everything
2023-09-07 22:29:40 -04:00
jean-pierre charras
9b85942b80
Gerbview: add refinements to commit efdead20: add option to set offset and
...
rotation to all layers or visible layers.
2023-09-07 12:31:22 +02:00
Marek Roszko
67b031adab
Painter base class should just live in gal instead of being in denial
2023-09-06 20:23:19 -04:00
Marek Roszko
4d77fd48ef
Shove thread_pool to core
2023-09-06 17:50:12 -04:00
jean-pierre charras
efdead2008
Gerbview: added (in Layers Manager) a new setting to adjust draw offset
...
and rotation of the active layer. This is a draw option only.
2023-09-06 20:08:45 +02:00
Jeff Young
fe0fb92441
Reduce visual clutter in GAL display options.
2023-09-04 13:06:46 +01:00
Marek Roszko
87513b4a04
Change the sentry dsn to be build time defined
...
We ultimately don't want people running personal builds to turn on sentry and start sending us crash logs we can't decipher
2023-08-30 22:17:38 -04:00
Mike Williams
b1a388ca69
Grids: Support X and Y for all grids, add optional names
2023-08-30 11:22:19 -04:00
Jeff Young
4fefd95e0c
Move grid definitions to Prefs and grid origin to a separate dlg.
...
Grid origin is document-wide, while grid definitions are app-wide.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2262
2023-08-26 13:32:24 +01:00
Alex Shvartzkop
10e2e4a12d
Another try at fixing arcs.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15471
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15469
2023-08-22 16:10:58 +03:00
Ian McInerney
a3a701a95e
Move preferences to an action instead of a wx event
2023-08-08 00:51:22 +01:00
Ian McInerney
a98e25d4df
Switch gerview actions to new tool action arg constructors
2023-07-12 23:00:13 +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
Ian McInerney
480223f67c
More RunAction specialization
2023-06-20 21:52:50 +01: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
jean-pierre charras
1406341d2d
Fix a few doxygen errors (no actual code change)
2023-04-19 16:20:24 +02:00
Marek Roszko
ea077bc34d
Banish ignore.h to core
2023-04-18 22:44:04 -04:00
Jeff Young
140f76b870
Export rectangular aperture GBR_SEGMENTS as polygons.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14136
2023-04-15 22:32:26 +01:00
qu1ck
0c049eccc7
Fix a bunch of compiler warnings
2023-04-11 17:01:30 +00: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
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
dc08c48f33
Try to fix linking after constexpr change
...
Somehow, GCC 10 and 11 were unable to locate the prebuild colors when
they were constexpr in gal, so give them on the link line again.
2023-04-06 15:20:16 +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
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
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
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
aris-kimi
22bca5c2a0
Disable link maps by default and fix compile issue with lld linker
...
The link maps were actually disabled by default before
912f1d5cec
, and required KICAD_MAKE_LINK_MAPS
to be provided to enable them. So switch back to disabling them by
default.
Also, The lld linker is unable to accept a single dash cref option, while
ld and gold can. Instead, use the double dash version that is supported
by all three.
xref: https://github.com/llvm/llvm-project/issues/60932
Co-authored-by: aris-kimi <aris_kimi@hotmail.com>
Co-authored-by: Ian McInerney <ian.s.mcinerney@ieee.org>
2023-02-22 23:18:36 +00:00
Jon Evans
32d45f7e3f
Fix typo
2023-02-22 09:43:26 -05:00
Jon Evans
43d3a18b86
Improve HiDPI handling of appearance/layer controls
2023-02-22 09:20:36 -05:00
Ian McInerney
912f1d5cec
Modernize setting link map linker flags
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
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05: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
jean-pierre charras
54b4f0e673
Gerbview: Aperture Macro: handle overwriting of variables
...
Gerbview did not handle redefinition of variable like $3 = $3 / 2
This redefinition is sometimes found in Gerber files.
This is a long standing issue now fixed.
Fixes #7222
https://gitlab.com/kicad/code/kicad/issues/7222
2023-02-11 18:22:29 +01:00
jean-pierre charras
efe49ecfd2
Gerbview: replace ARC_HIGH_DEF (defined for Pcbnew) to a suitable value
...
ARC_HIGH_DEF is set to 5 microns in Pcbnew units, but Gerbview do not use
Pcbnew units, so ARC_HIGH_DEF was a too large value, creating rough arcs.
2023-02-11 10:20:30 +01:00
jean-pierre charras
79d246b8fe
Gerbview: more code cleanup. remove duplicate code.
2023-02-10 16:10:29 +01:00
jean-pierre charras
00374f0a75
Gerbview: code refactor: change name of a member:
...
GERBER_DRAW_ITEM::m_Polygon -> m_ShapeAsPolygon
No actual code change.
2023-02-10 11:50:20 +01:00
jean-pierre charras
fa1591d021
Gerbview: code refactor: change name of a D_CODE member:
...
D_CODE::m_Shape -> m_ApertType (it is not a shape, it is a aperture type)
Fix also an outdated/incorrect comment
No actual code change.
2023-02-10 11:20:16 +01:00
jean-pierre charras
0d0c9aee3a
Gerbview: code refactor: change name and type of a member:
...
GERBER_DRAW_ITEM::m_Shape -> m_ShapeType of type GBR_BASIC_SHAPES
Minor coding style fix.
2023-02-10 10:09:35 +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
Wayne Stambaugh
68decdd4f2
Fix static event table derived object definitions.
2023-01-28 14:10:06 -05:00
jean-pierre charras
be420a0cf5
Gerbview, Aperture macros handling: use accessors for some internal data
...
and add comments. No actual code change.
2023-01-28 18:00:12 +01:00
Marek Roszko
99fae6a327
Update the target_link_library usage for gerbview_kiface
2023-01-23 23:37:16 -05:00
aris-kimi
86c12d35b4
Small order change for three View menu items
2023-01-22 01:04:17 +00:00
jean-pierre charras
9df65d7f54
Gerbview: code refactor: move APERTURE_MACRO defs from am_primitive to aperture_macro.
...
Some other code cleaning, but no actual code change.
2023-01-20 10:47:18 +01:00
jean-pierre charras
098b03e17a
gerbview: Cleanup code. Remove useless or not working code.
2023-01-18 17:26:41 +01:00
jean-pierre charras
00d77f624a
Gerbview: fix coding style (better names for variable members is some classes).
...
(no actual change in code)
2023-01-14 17:08:44 +01:00