Commit Graph

289 Commits

Author SHA1 Message Date
Mark Roszko 437cd8b1e5 Trim down 3d viewer search paths
(cherry picked from commit 17bec365db)
2022-09-09 17:05:47 +00:00
Wayne Stambaugh cfde5300d7 Fix wxWidgets 3.1 and later deprecated build warnings.
wxWidgets 3.1 has deprecated wxPATH_NORM_ALL when normalizing file
paths when calling wxFileName::Normalize().  This change keeps the
existing behavior except in places where our own internal
ExpandEnvVarSubstitutions() to expand environment variables.

(cherry picked from commit 898ec0d094)
2022-08-17 14:07:06 -04:00
Seth Hillbrand 37c5885946 Fix missing assignment
(cherry picked from commit 77cd56fbd3)
2022-05-26 08:20:42 -07:00
Seth Hillbrand 592c2c6872 Handle settings sequencing
Avoids crash when window close ordering places 3d viewer after the
common settings are closed

(cherry picked from commit c0a9a02591)
2022-05-25 16:58:10 -07:00
Seth Hillbrand 861589d837 Use wxEmptyString instead of wxT( "" )
Also fixes places where ternaries did autopromotion instead of returning
an empty wxString
2022-02-09 10:33:52 -08:00
Mark Roszko f5a56c1ebc Use unique_ptr to avoid memory leak in 3d model cache loading
PVS V773
2022-02-05 20:20:45 +00:00
Jeff Young 4657614e4f More wxString wide literals. 2022-02-04 23:12:09 +00:00
Jeff Young d295025964 Be explicit about literal wide-strings. 2022-02-04 20:21:07 +00:00
Jeff Young 0fd762dc25 Make 3D dialogs easier to find. 2021-10-21 14:30:03 +01: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
Wayne Stambaugh 41c7089417 Minor dialog layout improvements. 2021-09-07 08:06:02 -04: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
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 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 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 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
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
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 89718dd3ba Naming conventions. 2021-06-19 19:36:53 +01:00
Marek Roszko d946d6e68f Cleanup some pgm_base.h includes 2021-06-08 21:56:00 -04: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
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
Jon Evans c04e19f9ac Include optimization: move some things from common.h to point-of-use 2021-03-20 12:09:18 -04: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
Seth Hillbrand 283d176cdc Use std::locale::classic() globally
This is a better alternative when imbuing streams
2021-02-26 17:21:55 -08: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 bf2e7215a5 const SGPOINT::GetPoint args 2021-02-01 08:13:00 -05: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 14327f3708 Cleanup the 3d plugins paths a little bit 2021-01-27 19:12:18 -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
Wayne Stambaugh 710e621c6a 3D Viewer: remove all instances of "c" prefix from file names. 2021-01-03 17:44:49 -05:00
Wayne Stambaugh 8416c1fc37 3D Viewer: remove all instances of "C" prefix from object names. 2021-01-02 17:45:36 -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 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
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 58afaeb9eb Use QuasiModal in all parents of ConfigPaths so help window works. 2020-12-06 18:44:24 +00:00
Jeff Young a207bd97bb Naming conventions. 2020-11-17 16:05:49 +00:00