Jeff Young
78db69bb48
Don't append '+' when modifier used on its own.
2022-10-27 18:03:07 +01:00
Jeff Young
757c33ea13
Fix MRU logic errors.
...
The most serious was that we were keeping a reference to a string
which changed out from under the reference when it was deleted from
the wxArrayString.
Fixes https://gitlab.com/kicad/code/kicad/issues/12770
2022-10-27 14:28:11 +01:00
Jeff Young
f6c441c434
Viewport switcher keys are platform-specific.
...
Also fixes a regression where ctrl-tab doesn't get recognized.
Fixes https://gitlab.com/kicad/code/kicad/issues/11778
Fixes https://gitlab.com/kicad/code/kicad/issues/10127
2022-10-27 14:28:11 +01:00
Jeff Young
53796f2be6
Selection will always be the same after choice in toolbar popup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12769
2022-10-27 14:28:09 +01:00
Jeff Young
ef17ee3384
Tooltips for layer & viewer presets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11778
2022-10-27 14:27:19 +01:00
jean-pierre charras
e5182dd749
Fixes in 3D viewer
...
Fixes #12769
https://gitlab.com/kicad/code/kicad/issues/12769
Fixes #12765
https://gitlab.com/kicad/code/kicad/issues/12765
2022-10-27 11:34:11 +02:00
jean-pierre charras
5b8cf96736
3D viewer: catch an exception thrown when a fp library is not found in table,
...
when the 3D viewer try to rebuild the 3D shape of a footprint.
Fixes #12524
https://gitlab.com/kicad/code/kicad/issues/12524
2022-09-27 18:32:48 +02:00
jean-pierre charras
22cd2a3428
3D viewer: add option to show/hide fp not in position file.
...
Previously they were not shown, and this is really bad, because
"not in pos file" does not mean never mounted, and not even not mounted.
2022-09-24 13:58:31 +02:00
Jeff Young
64a6fc0fd4
Push UNITS_PROVIDER down into a low-level mixin.
...
This allows us to also construct cheap UNIT_PROVIDERs for specific
tasks when necessary.
2022-09-19 17:10:59 +01:00
Roberto Fernandez Bautista
ad45b81dee
Assign default hotkey to Flip Board in 3D viewer
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12337
2022-09-02 11:30:06 +02:00
Jeff Young
48f77973da
Another try at getting the Link combobox working on MSW.
2022-08-28 23:25:01 +01:00
Jeff Young
e015f5b086
Formatting.
2022-08-15 23:48:38 +01:00
jean-pierre charras
3245aec5b5
3D viewer, main toolbar: fix incorrect parent for 2 widgets.
...
Also use SHIFT instead of ALT as modifier to show the viewport list, because
ALT is not usable on Windows, especially combined with TAB
2022-07-29 18:33:38 +02:00
Jeff Young
bf71cada4e
ADDED: User viewports for 3D viewer.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5724
2022-06-06 22:24:02 +01:00
Marek Roszko
5bb2cdf73d
Revert "Stop leaking submenu items"
...
This reverts commit 34c70a51ea
.
2022-04-10 22:33:43 -04:00
Marek Roszko
34c70a51ea
Stop leaking submenu items
...
Our menu bar code is interestingly complex. But we were throwing away newly made menu items to the void in the cases of constructed on the fly submenus
2022-04-10 22:04:48 -04:00
markus-bonk
1a9ef4bd0f
Add support for using a SpaceMouse to pan & zoom in the schematic editor.
2022-03-31 19:03:41 +00:00
Jeff Young
32fdab8902
Bubble ESC up from the 3D preview.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9984
2022-03-13 23:14:06 +00:00
Wayne Stambaugh
aa9fa09000
Minor code cleaning.
2022-03-04 10:07:10 -05:00
jean-pierre charras
59babfa332
3D viewer: fix a sometimes incorrect render engine initialization.
...
inside the EDA_3D_CANVAS, it was initialized before settings are read,
and can be set to raytracing, although we always start 3D viewer in opengl mode,
thus creating a incorrect (not working) initialization.
2022-02-09 10:10:48 +01:00
Jeff Young
9582457fef
Be explicit about literal wide-strings.
2022-02-05 20:40:21 +00:00
markus-bonk
91d261d735
Fix "Error loading editor" when no 3Dconnexion driver installed.
2022-01-28 12:21:42 +00:00
markus-bonk
aec7802fcf
EDA_3D_VIEWER_FRAME: Implement SpaceMouse navigation and command export for 3D-viewer.
...
Full support for using a 3Dconnexion device in the 3D viewer has been added. Full 3D navigation is available for both the orthographic and perspective projections. Commands are exported and can be assigned to 3D mouse buttons. Any limitations to the functionality are limitations of the installed 3Dconnexion driver for the device and OS.
ADDED: A build option KICAD_USE_3DCONNEXION (default = ON) has been added to the main CMakeLists.txt. The option controls whether the SpaceMouse support is compiled into the solution.
2022-01-28 12:21:42 +00:00
Ian McInerney
9e6446a8dc
Use enums for 3d Viewer settings instead of ints
2021-12-30 23:03:13 +00:00
Jon Evans
595caf30a2
3D viewer: Disable copper thickness in OpenGL mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10153
(cherry picked from commit 517e44e917
)
2021-12-30 09:20:47 -05:00
Jeff Young
68d2630d08
Flatten a layer of indirection out of 3D config settings.
2021-12-24 13:08:54 +00:00
Jeff Young
d28714167c
All the preferences, all the time.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7877
Fixes https://gitlab.com/kicad/code/kicad/issues/5153
2021-12-24 13:08:44 +00:00
Mikolaj Wielgus
afccea34a5
Remove default zoom level from camera constructor
...
Initial distance should be sufficient to determine default zoom.
2021-10-24 18:14:49 +00:00
Jeff Young
1860893d63
Use "Realtime" in the GUI for the non-raytracing renderer.
2021-10-21 17:56:25 +01:00
Jeff Young
6c0110ecd3
Naming conventions.
...
There's nothing "legacy" about the OpenGL 3D renderer.
2021-10-21 14:30:03 +01:00
Jeff Young
0fd762dc25
Make 3D dialogs easier to find.
2021-10-21 14:30:03 +01:00
Jeff Young
716d75ea0e
Minor improvements to 3D preferences pages.
...
1) Move silkscreen options under the Board Layers section
2) Use more consistent terminology
3) Fix capitalization of controls
2021-10-21 14:30:03 +01: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
Johan Grip
b984777b52
Add more items to 3D viewer toolbar
2021-08-21 17:06:42 +00: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
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
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
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
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
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
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
Wayne Stambaugh
b579d004ad
3D Viewer: minor display options panel layout improvements.
2021-06-29 15:49:00 -04: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
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
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
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
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00: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
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
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
Wayne Stambaugh
2ae264751f
Rename class_board_stackup.{h|cpp} to board_stackup.{h|cpp}.
2021-04-16 17:07:06 -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
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
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -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
Marek Roszko
36d8ca7954
Fix statusbar conflict in 3d viewer
...
Fix #7544
2021-02-15 17:00:00 -05: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
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
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
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
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
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
Wayne Stambaugh
f8efe4a65a
3D viewer code cleaning round 5.
2020-12-16 17:11:05 -05: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
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
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
Jeff Young
52a46341db
More module -> footprint.
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
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