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
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
Mikolaj Wielgus
996835826e
Do not change FOV when zooming in/out, only move the camera
...
It's odd to both move the camera and change FOV when one wishes to
enlarge or smallen the models. Let's only move the camera.
2021-09-15 17:58:47 +00:00
Mikolaj Wielgus
e8a7e4cbed
Change 3D model preview projection toggle tooltip
...
Isometric projection is a special case of orthographic projection, the
projection where all projection lines are orthogonal to the projection
plane.
2021-09-15 17:53:45 +00:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Wayne Stambaugh
41c7089417
Minor dialog layout improvements.
2021-09-07 08:06:02 -04:00
jean-pierre charras
0eb0fa64bb
3D viewer: In menus show Zoom In/out instead of Zoom In/out at Cursor.
...
Zoom In/out at Cursor does not exist in 3D viewer, and is Zoom In/out when
using F1 or F2 keys.
Fixes #9107
https://gitlab.com/kicad/code/kicad/issues/9107
2021-09-07 10:54:51 +02:00
jean-pierre charras
5e8b23af64
3D viewer: add missing initialization of the line width of the grid.
...
Fixes #9082
https://gitlab.com/kicad/code/kicad/issues/9082
2021-09-02 18:33:59 +02:00
Seth Hillbrand
f95732a4bb
Generalize 4670309e
...
Allows loading of multiple types of .gz extensioned files by extracting
the second extension
Fixes https://gitlab.com/kicad/code/kicad/issues/9047
2021-08-30 14:43:11 -07:00
jean-pierre charras
4670309ec1
kicad2step: fix broken handing of UTF8 filenames.
...
the conversion between UTF8 std::strings and wxString were missing in some places.
3D model: fix management of file having double ext .stp.gz
Fixes #9038
https://gitlab.com/kicad/code/kicad/issues/9038
2021-08-27 16:58:23 +02:00
jean-pierre charras
d98e93de7e
3D viewer: fix color issues when using the colors stackup:
...
- Add missing Yellow (.gbrjob predefined color) in list
- silkscreen colors: add .gbrjob predefined colors in list
- Use a default body color (FR4) for dielectric material not in known list
2021-08-25 18:33:49 +02:00
Jeff Young
e6ca9837a2
Clear numbers from non-numberable pads and don't run DRC on them.
...
This was also the last straw on the misnamed PAD::GetName() and
PAD::SetName(), which are now PAD::GetNumber() and PAD::SetNumber().
Fixes https://gitlab.com/kicad/code/kicad/issues/9017
2021-08-24 01:03:06 +01:00
Johan Grip
b984777b52
Add more items to 3D viewer toolbar
2021-08-21 17:06:42 +00:00
Seth Hillbrand
4cd9278041
Remove most wxFilepicker wildcards from translations
...
This prevents translation errors from preventing user actions such as
opening the correct file
2021-08-20 12:56:47 -07:00
Jeff Young
9f8f81cae2
Fix null-ptr dereference when layer doesn't exist.
...
Also removes a whole slew of extraneous type-casts, and makes better
use of for( x : listOfX ) for readability.
Fixes https://gitlab.com/kicad/code/kicad/issues/8996
2021-08-19 11:52:24 +01:00
Jeff Young
89d943a90c
Transfer custom colours from board stackup to 3D viewer.
2021-08-16 20:05:35 +01:00
jean-pierre charras
e1bbb717f6
3D viewer: ensure 3D shapes are loaded when switching 3D shapes visibility option to ON.
...
Fixes #8959
https://gitlab.com/kicad/code/kicad/issues/8959
2021-08-16 16:28:59 +02:00
Jeff Young
bff247b08a
Hook up 3D viewer colors to board stackup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5173
2021-08-14 14:00:17 +01:00
Jeff Young
ef9f041279
Don't show 3D color opacities where they're not supported.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8938
2021-08-14 14:00:17 +01:00
Jeff Young
77680eba30
Naming conventions.
2021-08-05 14:31:36 +01:00
Jeff Young
78fd268b18
Retire PARAM_OBSOLETE in favour of a schema migration.
2021-08-02 17:38:15 +01:00
Jeff Young
7d501e8a43
Add PARAM_OBSOLETE to clean out old JSON structures.
...
While not technically necessary, the old structures can be confusing
to users looking at the files.
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-08-02 12:53:57 +01:00
Jeff Young
4943d2f0a3
More consistent formatting.
2021-08-02 12:53:57 +01:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Jeff Young
f221220fe2
Rename layer ids file.
...
It hasn't had anything to do with colors or visibility for some time
now.
2021-07-29 16:03:25 +01:00
Jeff Young
46338403e7
Unwrap some std::library typedefs.
2021-07-28 22:16:38 +01:00
jean-pierre charras
dda70622ba
3D viewer: fix missing refresh in raytracing mode when changing items visibility.
...
Fixes #8866
https://gitlab.com/kicad/code/kicad/issues/8866
2021-07-28 16:00:10 +02:00
Jeff Young
29b23df7a1
Save both front and back soldermask colour preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8856
2021-07-27 22:26:13 +01:00
Wayne Stambaugh
37b200cb3e
Pass wxString objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Wayne Stambaugh
78e5e98ea0
Pass VECTOR2I objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Wayne Stambaugh
89b1fdabe9
Pass COLOR4D object by reference instead of on the stack.
2021-07-26 13:28:56 -04:00
Seth Hillbrand
3e815882c1
Threading additional 3d transform
...
Transforming solid areas to polygons can be time-intensive for some
boards. This threads the transformation to all simultaneous builds in
different layers
2021-07-22 12:12:27 -07:00
jean-pierre charras
e00f609bdd
3D viewer: add a bit more activity messages during 3D scene building.
2021-07-22 16:13:38 +02:00
Jeff Young
0fb864d596
Pull some name changes back from 7.0 to ease merging.
2021-07-21 20:58:59 +01:00
jean-pierre charras
396213fa30
3D viewer: shows 3D shapes hide/show option in main menubar (Preferences)
...
Although these options are already in Preferences/Preferences/3D Viewer,
a direct access is useful because it avoid rebuilding the 3D scene, not needed
to hide/show 3D shapes.
2021-07-21 17:55:27 +02:00
jean-pierre charras
0525d50c58
3D viewer: avoid recreating the 3D scene when not needed.
2021-07-21 12:37:44 +02:00
jean-pierre charras
1c1f7ac07e
3D viewer: fix a Coverity warning and add more messages when loading a board.
2021-07-19 08:27:01 +02:00
jean-pierre charras
a43ca978df
3D viewer: do not build the board 3D data during 3D frame creation, but after.
...
Building the 3D data is time consuming, so creating the data after the 3D
frame is shown is better, and the build activity is visible, especially on Linux.
2021-07-18 17:55:40 +02:00
Marek Roszko
c794a6ce7a
Add pdb install option for msvc
2021-07-14 23:42:45 -04:00
Wayne Stambaugh
01515680b3
Code cleaning.
2021-07-14 15:47:32 -04:00
Marek Roszko
9162013132
Add advanced cfg to force reloading memory cached 3d models
2021-07-11 00:35:38 -04:00
Marek Roszko
7cb0f8f808
Add ADVANCED_CFG to always reload cached 3d models in memory
2021-07-11 00:31:06 -04:00
Marek Roszko
79b90813ec
Add ADVANCED_CFG to skip caching 3d models to file
2021-07-11 00:00:06 -04:00
jean-pierre charras
289a35ad81
3D viewer, PANEL_3D_RAYTRACING_OPTIONS: use our DIALOG_COLOR_PICKER to select colors.
...
Fixes #8689
https://gitlab.com/kicad/code/kicad/issues/8689
2021-07-05 21:01:12 +02:00
Jeff Young
ea6769b702
The REPORTER interface is inherently line-based.
...
Also fixes a bunch of error messages that were similar but not
identical (which just increases translation burden).
Fixes https://gitlab.com/kicad/code/kicad/issues/8723
2021-07-05 13:41:06 +01:00
Jeff Young
c11ee69499
Save 3D prefs after editing, and load some of them into FP Props.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8712
2021-07-04 13:20:55 +01:00
Marek Roszko
eff75b630f
Get rid of anonymous struct typedefs
...
We are using C++14 where there is no reason for this and is banned in C++20 under P1766R1. MSVC generates a warning under C++14 as a reminder.
2021-07-01 18:28:41 -04:00
Wayne Stambaugh
b579d004ad
3D Viewer: minor display options panel layout improvements.
2021-06-29 15:49:00 -04:00
Maurice
d9a11c30ef
3d viewer fix for 3d single material object Diffuse Only opacity
2021-06-28 20:32:03 +00:00
Jeff Young
3347531f70
Better zoom defaults for 3D viewer.
...
Also includes a fix for 3D model viewer in the file dialog for Retina
(and possibly other HIDPI) displays.
Fixes https://gitlab.com/kicad/code/kicad/issues/6144
2021-06-28 19:08:23 +01:00
Jeff Young
73b91a1a92
More sensible zoom defaults for 3D viewers.
...
Also fixes a bug where the model viewer in the file picker was using
only 1/4 of the screen on HIDPI displays.
2021-06-28 19:08:23 +01:00
Jeff Young
4aa8318dc2
More error message regularization.
2021-06-27 14:24:02 +01:00
Jeff Young
5c21f93803
Consistency in progress and error messages.
2021-06-26 13:23:43 +01:00
Jeff Young
89718dd3ba
Naming conventions.
2021-06-19 19:36:53 +01:00
Jeff Young
16047b7419
3D preferences bug fixes.
...
1) Make sure prefs get saved when closing parent frame.
2) Add camera projection mode to settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/8110
Fixes https://gitlab.com/kicad/code/kicad/issues/8626
2021-06-17 12:22:18 +01:00
Seth Hillbrand
3269ca3201
Fix compile error on BSD
...
The cast here should actually be from '0' and not 'NULL' as we are
getting an integer value of 0 for the bbox_idx_count
Fixes https://gitlab.com/kicad/code/kicad/issues/8580
2021-06-16 09:19:39 -07:00
Jeff Young
5d9c1dd75a
Better names for 3D material properties rendering modes.
...
(Also restores the legacy behaviour of ignoring transparency in
diffuse mode.)
Fixes https://gitlab.com/kicad/code/kicad/issues/8437
2021-06-12 23:01:41 +01:00
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
2021-06-11 22:07:02 +01:00
Jeff Young
16b0147af8
Prefix DIMENSION types.
2021-06-11 17:59:44 +01:00
jean-pierre charras
6ab995d6a4
3d-viewer preferences: fix incorrect parent of a panel.
2021-06-11 16:09:00 +02:00
Jeff Young
44086ff2b2
Pull 3D preferences into KiCad preferences architecture.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5187
2021-06-11 11:19:40 +01:00
jean-pierre charras
1c3df973d6
Coverity warnings fixes.
2021-06-10 13:45:02 +02:00
luz paz
5f1e9bc8a7
Fix typos in source code
2021-06-10 01:24:15 +00:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Marek Roszko
d946d6e68f
Cleanup some pgm_base.h includes
2021-06-08 21:56:00 -04:00
Marek Roszko
8377ebb0e1
Fix msvc warnings
2021-06-06 15:30:31 -04:00
Marek Roszko
10e60acf34
Clean up including of board_design_settings.h
2021-06-06 15:03:42 -04:00
Ian McInerney
dc27079b71
cleanup tool event and tool action includes
2021-06-06 18:26:26 +01:00
Marek Roszko
4712d7a918
Remove a leaky wx/msgdlg.h include
2021-06-06 08:45:38 -04:00
Jon Evans
c9a660a80c
Rework JSON integration to speed up build
2021-06-05 17:08:38 -04:00
david-beinder
86add3bb85
Fix MSVC C4312 warnings when casting 32bit ints to pointer types on 64bit builds
2021-06-05 02:57:51 +00:00
Marek Roszko
25678ee00d
Fix msvc 16.10 build error
2021-06-03 23:13:39 -04:00
Marek Roszko
4df3cb912d
Remove another leaky wx/log.h header
2021-06-03 08:11:15 -04:00
Marek Roszko
24cb0e77eb
Fix MSVC builds after recent changes
2021-06-02 23:57:45 -04:00
Ian McInerney
d56251fdac
Remove universal include of wx.h in 3d viewer OpenGL file
2021-06-03 02:29:09 +01:00
jean-pierre charras
a06f965ffa
3Dviewer: fix incorrect drawing of a 3d model hovered by the mouse pointer.
...
Was due to a recent change in 3D code.
2021-05-22 20:23:43 +02:00
jean-pierre charras
d1061b9683
3D viewer: Fix broken handling of text thickness, thus creating erroneous item positions
...
Especially, texts having a not centered justification were shown with artifacts.
2021-05-15 13:18:06 +02:00
Jeff Young
7bcd524fbd
Fix typo.
2021-05-11 23:14:43 +01:00
Jeff Young
ac58a3f9f0
Add preference for 3d-model-highlight-on-rollover.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8349
2021-05-11 20:53:53 +01:00
Wayne Stambaugh
d2a7f81b10
Debugging improvements and clean up.
...
* Remove unused wxLogDebug calls.
* Add add application level character tracing to detect unhandled key
events.
* Catch unhandled exceptions in KiCad main event loop like single top
applications.
2021-05-03 18:08:15 -04:00
jean-pierre charras
0427bda768
Remove useless wx/wx.h include, that create sometimes compil warnings on msys.
...
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming
2021-05-01 19:32:15 +02:00
Marek Roszko
03cf2b517f
Enum class PAD_ATTR_T
...
Renamed such that python stays the same
2021-05-01 10:51:54 -04:00
Marek Roszko
b243c2280d
enum class PAD_SHAPE_T
2021-05-01 08:22:35 -04:00
Marek Roszko
21fde9b629
enum class PCB_SHAPE_TYPE_T
2021-04-30 22:36:12 -04:00
Marek Roszko
a69256e15b
Remove extraneous #include
2021-04-30 21:55:48 -04:00
Ian McInerney
ecd9bf696e
Be consistent about using nullptr instead of 0
...
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
Mario Luzeiro
e92dc96767
3D-Viewer: fix issue with solder mask
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8272
2021-04-22 06:26:04 +00:00
Mario Luzeiro
cdc8fd3804
3D-Viewer: improve edge texture clamping of end segments
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8245
2021-04-21 06:34:19 +00:00
david-beinder
e0f69ad28b
3D viewer: Fix gap between plating and annulus copper
...
Hide transition by ending layer copper withing the annulus of the cylinder. Also always use hole wall thickness and set more realistic solder mask thickness
2021-04-19 13:19:32 +00:00
Wayne Stambaugh
2ae264751f
Rename class_board_stackup.{h|cpp} to board_stackup.{h|cpp}.
2021-04-16 17:07:06 -04:00
Mikolaj Wielgus
744e70df36
3D Viewer: Fix mouse panning in orthographic projection mode
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5561
2021-04-10 17:58:50 +00:00
Jon Evans
c1573744be
Lock project files when opening; open locked projects read-only
...
Also clean up an include-what-you-use problem
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8037
2021-04-02 19:29:56 -04:00
Ian McInerney
0a0935e0f3
Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
...
After commit 9535153f9e
there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
jean-pierre charras
23667fc4c4
3D viewer: make solder paste layer thickness bigger than the mask layer.
...
Some specific footprints need shapes on paste layer covering the mask layer,
so ensure these shapes are visible.
Fixes #8041
https://gitlab.com/kicad/code/kicad/issues/8041
2021-03-26 18:02:30 +01:00
Jon Evans
c04e19f9ac
Include optimization: move some things from common.h to point-of-use
2021-03-20 12:09:18 -04:00
jean-pierre charras
c08f74168c
3D viewer: BOARD_ADAPTER::createPadWithClearance() add missing handling of SH_ARC shape.
2021-03-20 14:15:47 +01:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
jean-pierre charras
fe02155b5a
3D viewer, DIALOG_3D_VIEW_OPTIONS_BASE: fix minor wxWidgets alerts and Add
...
minor cosmetic changes.
Fixes #7846
https://gitlab.com/kicad/code/kicad/issues/7846
2021-03-09 11:23:33 +01:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -05:00
Seth Hillbrand
283d176cdc
Use std::locale::classic() globally
...
This is a better alternative when imbuing streams
2021-02-26 17:21:55 -08:00
kamp
0a9a9d625e
Fix BBOX_3D documentation
2021-02-24 17:45:53 +00:00
Marek Roszko
907e282347
Silence some msvc warnings
...
- exception variables that were unused
- RAYSEG2D improperly foward declared with class instead of struct
- unused vars
2021-02-20 11:58:55 -05:00
Jeff Young
66b33834b5
Always enable save; move dirty bit to asterisk in title bar.
...
Also unifies PCB Editor and Schematic Editor names with other
locations in the GUI (which were still Pcbnew and Eeschema).
Fixes https://gitlab.com/kicad/code/kicad/issues/7587
Fixes https://gitlab.com/kicad/code/kicad/issues/7594
2021-02-18 16:05:42 +00:00
Jeff Young
b6a7981e62
Write changes back to grid after using file explorer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7361
2021-02-17 14:08:53 +00:00
Marek Roszko
b609c7dcd6
Kick the osx specific path helpers into PATHS
2021-02-16 23:29:26 -05:00
Marek Roszko
2370ca1b0e
Minor code clean, standard "new" does not need to be null checked
...
Because it will bad_alloc exception you instead :D
Silence PVS Studio V668 Warnings
2021-02-16 18:24:59 -05:00
Marek Roszko
f2552d7bc1
Tweak the reported last render message slightly
2021-02-15 17:47:43 -05:00
Marek Roszko
f88be65825
Remove mention of FPS
...
We are not a real time rendering engine
2021-02-15 17:00:00 -05:00
Marek Roszko
36d8ca7954
Fix statusbar conflict in 3d viewer
...
Fix #7544
2021-02-15 17:00:00 -05:00
Marek Roszko
872184fe8b
Revert "Bump minimum required CMake version to 3.10"
...
This reverts commit a475f45753
.
2021-02-09 18:46:13 -05:00
Simon Richter
a475f45753
Bump minimum required CMake version to 3.10
...
This allows us to remove even more workarounds
2021-02-08 12:23:08 +00:00
Seth Hillbrand
624a231cc0
Remove unused line width option
...
You had to set the line width in the SVG export dialog in order to
change the displayed line width in the 3d viewer. The line width did
not affect the SVG export. Removing in favor of the Board design
settings for line widths
2021-02-06 06:44:53 -08:00
Roberto Fernandez Bautista
9aedeae5c3
Don't log error messages when using the clipboard
...
wxClipboard::GetData()and wxClipboard::SetData() both log a "wxLogSysError" error-level message (see for example: https://github.com/wxWidgets/wxWidgets/blob/v3.1.4/src/msw/clipbrd.cpp#L703 ). This logged message gets displayed as a messagebox to the user.
The logging can be disabled temporarily by creating a wxLogNull object. See https://docs.wxwidgets.org/3.0/classwx_log_null.html
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6956
2021-02-03 01:55:05 +00:00
Marek Roszko
bf2e7215a5
const SGPOINT::GetPoint args
2021-02-01 08:13:00 -05:00
Jeff Young
e72262a007
Don't render un-enabled layers.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7313
2021-01-30 16:31:27 +00:00
Marek Roszko
914568f1a0
Fix macos using the wrong 3d plugins path
2021-01-27 19:12:19 -05:00
Marek Roszko
daf9c4f319
Centralize the 3d cache path
2021-01-27 19:12:19 -05:00
Marek Roszko
7b5397f81f
Move PLUGINDIR to the make config.h
2021-01-27 19:12:19 -05:00
Marek Roszko
14327f3708
Cleanup the 3d plugins paths a little bit
2021-01-27 19:12:18 -05:00
Wayne Stambaugh
6ab1144ea3
Fix broken Doxygen comment specifiers.
...
Please note, ///> is not a valid Doxygen comment specifier. ///< is the
correct specifier to use for single line or short Doxygen comments.
2021-01-25 07:42:36 -05:00
Michael Kavanagh
b90eabd68b
Icons: out with the old, in with the new
...
+ remove icons where they dont make sense or are duplicated within the
same context
2021-01-19 22:57:24 +00:00
Michael Kavanagh
50e22de3ba
Remove empty option from 3D Viewer dropdown
2021-01-17 23:11:29 +00:00
Roberto Fernandez Bautista
49f454e32b
Line width already factored into polygon shapes
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7130
2021-01-16 08:39:20 +00:00
Jeff Young
ee6ec2c35c
Line width already factored in to rectangle polygon.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7113
2021-01-14 16:54:20 +00:00
Wayne Stambaugh
2d64613bbb
Coverity fixes.
...
Reports 314745, 316271, and 316269.
2021-01-13 11:23:09 -05:00
Wayne Stambaugh
6f0319e29f
Fix potential bug in 3D model selection dialog.
...
Calling EndModal or EndQuasiModal will cause KiCad to hang if the dialog
was not opened in the same manor. The modality of the dialog must be
checked and the appropriate end method must be called or emulate a button
click which allows the default dialog close method to be called to handle
shutting down the dialog correctly.
2021-01-13 09:20:23 -05:00
Seth Hillbrand
26524ef41e
Select model on double-click
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7070
2021-01-12 15:21:29 -08:00
Jeff Young
751fdbf278
Simplify layout & terminology in 3D settings dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6659
2021-01-09 20:53:24 +00:00
Wayne Stambaugh
926cc3a00d
3D Viewer: more code cleaning and naming improvements.
2021-01-07 14:33:43 -05:00
jean-pierre charras
86be755c83
Fix compil warning: do not use class instead of struct in forward declarations
2021-01-06 09:29:03 +01:00
Wayne Stambaugh
1c7a5c46e5
3D Viewer: member variable and method naming improvements.
...
A few build improvements thrown in for a good measure.
2021-01-05 17:24:29 -05:00
Michael Kavanagh
a7286ccc34
Icons: remove functional duplicate
2021-01-04 01:44:01 +00:00
Wayne Stambaugh
710e621c6a
3D Viewer: remove all instances of "c" prefix from file names.
2021-01-03 17:44:49 -05:00
Michael Kavanagh
791d1f513c
Icons: fix some 3D viewer icons
...
- remove old palette icon in favour of new one
- use dark grey in new icon (instead of light grey)
- use generic gear for 3D display options
2021-01-02 23:16:33 +00:00
Wayne Stambaugh
8416c1fc37
3D Viewer: remove all instances of "C" prefix from object names.
2021-01-02 17:45:36 -05:00
Seth Hillbrand
8de9cff4e0
Change environmental variables to human-readable
...
Versions specific variables that may point to objects that change
through versions, allowing multiple KiCad versions to operate correctly
(even on MSW) on the same machine.
2021-01-01 16:20:35 +00:00
Jeff Young
5ea88c897a
Go back to AuiMgr strategy for 3D-viewer infobar.
...
There some issue with using the 3D canvas as a parent in the new
strategy.
2020-12-27 01:01:25 +00:00
Jeff Young
0b6c524dda
Missing file from last commit.
2020-12-24 21:35:31 +00:00
Jeff Young
ef25c78a04
Separate polygonization error from chaining error.
...
This way we can report anything that doesn't exactly chain while still
applying a fudge factor for our own stuff.
Fixes https://gitlab.com/kicad/code/kicad/issues/1795
2020-12-24 21:02:14 +00:00
Dominik Wernberger
caf300aa33
Fix memory leak
2020-12-24 17:33:33 +00:00
Michael Kavanagh
eb1f07bade
Icons: standardise `export_png` to match set
2020-12-24 01:02:03 +00:00
Jeff Young
47ea51ec34
Allow both aui-manager-based infobars and window overlay infobars.
2020-12-22 21:36:39 +00:00
Wayne Stambaugh
f311831c27
Coverity fixes.
...
280252, 314742, 314745, 314747, 314755, 314756, 314757, 314758,
314935, 314936
2020-12-20 13:24:47 -05:00
Jeff Young
0ba175f28c
Formatting.
2020-12-19 00:21:28 +00:00
Wayne Stambaugh
aab3c936f0
Move headers from common folders to appropriate include folders round 2.
2020-12-17 11:44:03 -05:00
Ian McInerney
048900dda7
Fixup the 3d Viewer code after the last fixup
2020-12-17 00:30:22 +00:00
Marek Roszko
a3c4730a3f
Add missing return removed in 978935d
2020-12-16 19:03:27 -05:00
Wayne Stambaugh
f8efe4a65a
3D viewer code cleaning round 5.
2020-12-16 17:11:05 -05:00
Wayne Stambaugh
978935d749
3D viewer code cleaning round 4.
2020-12-16 13:19:28 -05:00
jean-pierre charras
5e394836d2
Fix a wxWidgets alert.
...
Fixes #6743
https://gitlab.com/kicad/code/kicad/issues/6743
2020-12-15 15:46:52 +01:00
Seth Hillbrand
9a7b161f8e
Update rotate icons to clarify action
...
Rename icons to make it easier for folks looking at code names
Fixes https://gitlab.com/kicad/code/kicad/issues/6737
2020-12-14 12:23:08 -08:00
Wayne Stambaugh
4d128b819a
3D viewer code cleaning round 3.
2020-12-13 18:02:57 -05:00
Wayne Stambaugh
9e22499350
3D viewer code cleaning round 2.1.
2020-12-12 12:35:31 -05:00
Wayne Stambaugh
1eba0c435b
3D viewer code cleaning round 2.
2020-12-12 12:35:31 -05:00
Wayne Stambaugh
d1fe4a0c98
3D viewer code cleaning round 1.
2020-12-11 08:51:42 -05:00
Jeff Young
73b7b104cd
Fix some issues with Infobar sizing.
...
This also commits to the new strategy as it wasn't really compatible
with if-def-ing anymore.
2020-12-11 12:39:40 +00:00
Jeff Young
b1f0bf7334
More consistent naming.
2020-12-08 13:05:39 +00:00
Jeff Young
58afaeb9eb
Use QuasiModal in all parents of ConfigPaths so help window works.
2020-12-06 18:44:24 +00:00
jean-pierre charras
e6550fb92e
3D viewer: fix a draw issue: missing holes.
...
Fixes #6608
https://gitlab.com/kicad/code/kicad/issues/6608
2020-12-04 16:35:57 +01:00
Jeff Young
7f360a7188
Some renaming in 3D code for better SNR. Also formatting fixes.
2020-11-30 14:38:06 +00:00
Jeff Young
3ca06700fc
Formatting.
2020-11-29 20:00:16 +00:00
Jeff Young
889408c96a
More improvements to new selection disambiguation.
...
Also a rationalization of text polygon generators, with the "standard"
version inherited from BOARD_ITEM now giving the bounding box. This
requires callers who want the (much) more expensive stroke-based one
to call it explicitly (and brings PCB_TEXT in line with the was FP_TEXT
already was.
Fixes https://gitlab.com/kicad/code/kicad/issues/6525
2020-11-29 14:02:46 +00:00
Jeff Young
9c7c05c161
Mostly formatting cleanup but a few type-casting cleanups too.
2020-11-24 22:16:41 +00:00
Jeff Young
2f3f4c209e
Make sure DRC reports a missing board outline.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6481
2020-11-24 14:22:27 +00:00
Jeff Young
1391774f64
Re-factor boundary/courtyard checker error handling.
...
ADDED Footprint Checker dialog to display the results in.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-21 20:57:35 +00:00
Jeff Young
b123318cf6
Encourage use of full DRC for board & footprint malformed outlines.
...
It shows much more detail. Removes some nag dialogs and places
hypertext links in others.
Also fixes the auto-layer-showing to correctly show Edge.Cuts or
F.CrtYd or B.CrtYd for errors relating to them.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-20 17:24:52 +00:00
Marek Roszko
16e3e59495
Split out arrayDim and MIRROR templates from macros.h
...
These were not macros
2020-11-17 20:21:04 -05:00
Jeff Young
a207bd97bb
Naming conventions.
2020-11-17 16:05:49 +00:00
Wayne Stambaugh
c7926db553
More minor dialog layout improvements.
2020-11-16 07:29:07 -05:00
Mario Luzeiro
8b9be2e129
3D-Viewer: fixes generations of layer lists
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6385
2020-11-15 16:55:16 +00:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00:00
Jeff Young
ec020dd19f
First-class support for filled shapes.
2020-11-14 01:40:32 +00:00
Jeff Young
bdbb68f813
MODULE -> FOOTPRINT.
2020-11-13 16:04:03 +00:00
Jeff Young
3451ac3088
PCB_MODULE_T -> PCB_FOOTPRINT_T
2020-11-13 15:16:24 +00:00
Jeff Young
63a54d003e
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
522d64968e
Yet more module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
9106cc19bf
Yet another tranche of module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
8c947b69b0
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
fc9cf1d827
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
52a46341db
More module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
f5443de7f9
D_PAD -> PAD.
2020-11-13 15:16:24 +00:00
Jeff Young
84dd5108ba
Remove some "class_" prefixes from files.
2020-11-13 15:16:23 +00:00
Jeff Young
f7333ad64a
Update some classnames including archaic zone names.
2020-11-12 10:31:25 +00:00
Mario Luzeiro
8ec0cef572
3D-Viewer: Fixes correct copper plated color in Raytracing mode
2020-11-11 20:09:12 +00:00
Mario Luzeiro
5841ea3cd2
3D-Viewer: Raytracing, add silkscreen texture
...
improves other textures
2020-11-11 16:22:34 +00:00
jean-pierre charras
6570cd5850
minor compil warning fix
2020-11-11 12:28:37 +01:00
Mario Luzeiro
c08f9ac9f6
3D-Viewer: properly clears the container
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6346
2020-11-11 09:42:14 +00:00
Ian McInerney
11e6cac42b
Introduce EGL backend support for the OpenGL canvas
...
wxWidgets 3.1.5+ on Linux will compile with the Wayland EGL
canvas as the backend instead of the X11 backend. This requires a
version of GLEW compiled with the proper EGL defines and a different
header/code for certain parts that are X11 GLEW specific.
This introduces an in-tree version of GLEW that will be built with the
GLEW_EGL flag then statically linked into the KiCad executables when
EGL support is needed.
2020-11-11 00:41:02 +00:00
Mario Luzeiro
e105451f44
3D-Viewer: when possible, uses only the board edges to calculate boundings
...
Add Report messages to Raytracing
Fixes https://gitlab.com/kicad/code/kicad/issues/6316
2020-11-10 17:32:24 +00:00
Mario Luzeiro
753383d6ec
3D-Viewer: disable layer subtraction operations on non realistic mode
2020-11-10 14:40:42 +00:00
Mario Luzeiro
a9be08e1ce
3D-Viewer: skip layers not created
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6324
2020-11-10 13:57:52 +00:00
Wayne Stambaugh
4ea3914d4e
Coverity fixes.
...
CIDs: 312996, 305508, 305509, 305510, 312992, 312997, 312994, 312995,
312968, and 306650.
2020-11-10 08:50:16 -05:00
Mario Luzeiro
82bd232737
3D-Viewer: mark flag as initialized
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6331
2020-11-09 13:19:28 +00:00
Roberto Fernandez Bautista
ae26c92a16
Remove modal message box when catching exceptions in EDA_3D_CANVAS::DoRePaint
...
Rely on the wxInfobar instead
2020-11-07 15:39:57 +00:00
Roberto Fernandez Bautista
1bbc569151
Fix DoRePaint routine in EDA_3D_CANVAS
...
- Check that we aren't already painting (return if we are)
- Check that GLEW functions exist before calling them in 3D canvas and throw exception if they are no longer available
- Catch above exceptions in paint routine and show an infobar message to the user
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6246
2020-11-07 15:39:57 +00:00
Mario Luzeiro
9454f9df92
3D-Viewer: OpenGL, enable by default the AA
...
fixes an issue that disables AA when it back from Raytracing mode
2020-11-06 20:21:40 +00:00
Mario Luzeiro
89fea36ddd
3D-Viewer: OpenGL, remove outline polygons where it intersects a hole at edge of board
2020-11-06 20:21:40 +00:00
Mario Luzeiro
4b6c602537
3D-Viewer: OpenGL, cut outline on plated pads
2020-11-06 20:21:40 +00:00
Mario Luzeiro
5e371b5f29
3D-Viewer: OpenGL, fix z-fight issue
2020-11-06 20:21:40 +00:00
Mario Luzeiro
78b461a41d
3D-Viewer: OpenGL outline, implement an outline board cut
2020-11-06 20:21:40 +00:00
Mario Luzeiro
3fce3b6591
3D-Viewer: fix code style
2020-11-06 20:21:40 +00:00
Mario Luzeiro
386a0bbe4a
3D-Viewer: add antiboard as a single object
...
improves ray transversal,
fixes previous csg operation issues.
Fixes https://gitlab.com/kicad/code/kicad/issues/6097
2020-11-06 20:21:40 +00:00
Mario Luzeiro
b06db80151
3D-Viewer: raytracing, implement an outline board cut
...
it cut board items that are outside and on the edge of the board.
Allows castellations render.
2020-11-06 20:21:40 +00:00
Marek Roszko
08ca80a2d8
Smooth out redrawing of toolbars by not letting wx pointlessly calculate both orientations
...
Monkey patch
Fix #5705
2020-11-05 20:56:14 -05:00
Oleg Endo
a238209f3f
Add group-by-suffix display option in net inspector
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2469
2020-11-04 02:49:19 +00:00
Ian McInerney
3d47eb0d49
Fix localization of the menu strings with accelerator strings
...
The accelerator strings really shouldn't be part of the translation,
and some translations have cause the accelerator keys to be incorrectly
handled. It is simpler to make it separate and just join them to the
translated string.
Make all accelerator modifiers use lowercased Ctrl instead of CTRL
to be the same as the other modifiers.
Fixes https://gitlab.com/kicad/code/kicad/issues/5992
2020-11-04 01:31:52 +00:00
Jeff Young
5a644aa3fb
QuasiModal needs to be used for any dialog hosting a help window.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5897
2020-10-28 23:07:15 +00:00
Marek Roszko
04697c5fe8
Avoid 3d viewer stealing back focus/activation
...
Fix #6184
2020-10-27 19:35:55 -04:00
jean-pierre charras
73c7154891
Fix another Coverity warning.
2020-10-27 14:16:38 +01:00
Ian McInerney
6bd3b0afa4
Various Coverity fixes
2020-10-27 00:25:08 +00:00
jean-pierre charras
c092e3f8b7
Fix a few minor Coverity warnings
2020-10-26 10:46:08 +01:00
Marek Roszko
91e5611341
Move dialog_configure_paths.h and dialog_edit_library_tables.h to dialogs folder
2020-10-25 20:01:12 -04:00
Marek Roszko
eeac3cb4d5
Nix some more common.h includes
2020-10-24 00:38:25 -04:00
Marek Roszko
304e5faf36
Move wxStringSplit to kicad_string
2020-10-24 00:17:07 -04:00
Jeff Young
cce557b9ad
Redo the board-edge-building logic to return better error reports.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6119
2020-10-22 21:29:04 +01:00
Seth Hillbrand
f8a4edb1c9
First pass renaming module to footprint
...
This is mostly in comments and the few remainin text strings that
reference module
2020-10-20 20:49:11 -07:00
Seth Hillbrand
4085757aeb
Remove beginning/ending spaces in translations
...
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
jean-pierre charras
539ac4c214
Remove a few include<wx/wx.h> in many files that do not actually use this include.
2020-10-19 09:00:50 +02:00
jean-pierre charras
f6b4b66a86
Avoid include wx/wx.h in many files that do not actually use this include.
...
Including wx.h includes the full set of wxWidgets include files, that is not good,
and can create some conflicts with some Windows headers on msys2.
2020-10-18 18:21:34 +02:00
Ian McInerney
06f01d0d8a
Add platform-specific code to allow wxChoice to ellipsize
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5377
2020-10-17 23:20:13 +01:00
Jeff Young
92d84b0d67
Naming updates.
2020-10-15 01:35:16 +01:00
Jeff Young
1703729269
Require explicit decl of maxError and errorLocations.
...
This should reduce both performance issues and clearance issues.
2020-10-13 13:49:07 +01:00
Jeff Young
07f139381b
Nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5893
2020-10-06 12:49:29 +01:00
Jeff Young
52794b3456
Nullptr safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5893
2020-10-06 12:08:31 +01:00
Mario Luzeiro
d31c5c41e6
3D-Viewer: add an infobar to the panel preview
2020-10-06 10:42:46 +00:00
Mario Luzeiro
1cbe8fcc1f
3D-Viewer: check for minimum required version of OpenGL
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5286
2020-10-06 10:42:46 +00:00
Jeff Young
37906511f5
Class renaming.
...
DRAWSEGMENT -> PCB_SHAPE
EDGE_MODULE -> FP_SHAPE
TEXTE_PCB -> PCB_TEXT
TEXTE_MODULE -> FP_TEXT
2020-10-05 11:55:33 +01:00
Mark Roszko
a28a0e14ba
Fix conversion warnings
2020-10-05 10:41:14 +00:00
Jeff Young
7a4900b8dc
PCB_LINE_T -> PCB_SHAPE_T and PCB_MODULE_EDGE_T -> PCB_FP_SHAPE_T
...
Also updated footprint text and zone types for consistencey.
2020-10-04 16:49:04 +01:00
jean-pierre charras
bda275de46
more cleanup about removing useless include
2020-10-03 11:48:16 +02:00
Mario Luzeiro
cea1a56f5f
3D-Viewer: set default alpha when import from legacy
...
keep the current alpha when import colors from stackup.
request a refresh instead of a reload when using OpenGL render.
Fixes https://gitlab.com/kicad/code/kicad/issues/5717
2020-10-02 23:14:42 +00:00
Jeff Young
5b7c6e100d
Clip tech layers to board in 3D renderer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4873
2020-10-01 16:50:22 +01:00
Jeff Young
3c01147f10
Fix 3D hole knock-out of silkscreen.
...
It still doesn't knock-out the board edges, but this is a good first
step.
Fixes https://gitlab.com/kicad/code/kicad/issues/4837
2020-10-01 11:49:28 +01:00
jean-pierre charras
42350a4928
Minor code cleanup: remove useless include or useless code.
...
fix also a minor compil warning
2020-10-01 11:36:15 +02:00
Ian McInerney
38584e55dd
Don't process an invalid window position
...
This is used for computing a vector index, so it can't be
negative.
2020-09-30 23:34:04 +01:00
Ian McInerney
a5ed5e5675
Handle single line segments on footprint edgecuts
...
Also, only display an infobar message for footprints when
there is no footprint loaded (instead of if the outline
isn't closed).
Fixes https://gitlab.com/kicad/code/kicad/issues/4866
2020-09-30 23:34:04 +01:00
Ian McInerney
78c43158f4
Annotate the board class with if it is for a footprint edit/view
2020-09-30 23:34:04 +01:00
jean-pierre charras
3f8c9d49f8
Revert "Code cleanup: remove useless wx/wx.h include inside a few files."
...
due to compil issue on Linux
This reverts commit cffccc3970
.
2020-09-30 20:47:20 +02:00
jean-pierre charras
cffccc3970
Code cleanup: remove useless wx/wx.h include inside a few files.
...
in most of files, including wx.h is not necessary, when only 2 or 3 wx files must be included.
Moreover, on windows, including wx.h sometimes create compil warnings about
shadowed vars defined in some specific windows headers.
2020-09-30 20:03:27 +02:00
Seth Hillbrand
bf3cb0b1d0
Standardize pad type enums
2020-09-30 08:38:35 -07:00
Jeff Young
d3f8f2b81e
Remove confusion between pad->IsOnLayer and pad->IsPadOnLayer
2020-09-30 11:50:51 +01:00
Mario Luzeiro
ab57c93c98
3D-Viewer: add selection color as an option
2020-09-28 02:26:25 +00:00
Mario Luzeiro
ec3c20bf84
3D-Viewer: do not use selection while on preview
2020-09-28 02:26:25 +00:00
Mario Luzeiro
6db0c58e8f
3D-Viewer: fix some code style
2020-09-28 02:26:25 +00:00
Mario Luzeiro
5205709399
3D-Viewer: use LAYER_SELECT_OVERLAY color for selection
...
preserve material transparency while rendering as selected
2020-09-28 02:26:25 +00:00
Mario Luzeiro
10676eb926
3D-Viewer: only show intersection information while using opengl
2020-09-28 02:26:25 +00:00
Mario Luzeiro
3f2cada6c6
3D-Viewer: fix a bug introduced in the previous commits
2020-09-28 02:26:25 +00:00
Mario Luzeiro
6bc19dbfe9
3D-Viewer: intercect modules and cooper items
...
show module and net information.
highlight shapes when selected.
2020-09-28 02:26:25 +00:00
Mario Luzeiro
a1e94c2583
3D-Viewer: request a redraw when a footprint is selected in pcbnew
2020-09-28 02:26:25 +00:00