* Refresh the view only when changes are made in the caller frame.
* Allows recreate a new instances when try to open the 3D view from a frame taht is not the initial caller
* Remove duplicate code in kicad frames.
While we already cache the loaded footprint files, parsing said files
into the list is also time-intensive. Since the FOOTPRINT_LIST is
already hash-stamped against the current timestamps of the files that
make up the list, sharing a single copy of the list is quite
straight-forward.
Includes some dialog changes to go with the menu update.
Includes promoting the Pcbnew graphics mode back to main menu.
Includes renaming Graphics modes to Toolsets.
Keystroke zoom (F1/F2) always centered the screen, because it
was handled as ID_POPUP_ZOOM_IN event. Mousewheel scrolling
was ok, because it is handled using different event based
on the configuration.
This patch introduces special event ids for keystroke
zooming that are then properly translated to either
ID_POPUP_ZOOM_IN or ID_OFFCENTER_ZOOM_IN depending
on the configuration.
The same issue is fixed for legacy canvas pcbnew.
Fixes: lp:1742567
* https://bugs.launchpad.net/kicad/+bug/1742567
Signed-off-by: Martin Sivak <mars@montik.net>
Option 'Center and warp cursor on zoom' has inverted (opposed) value
in the display options dialog of Footprint preview of CvPcb. If this
option is set the cursor does not moves to center on zooming but if
option is unset it does.
This is meant as a stopgap for 5.0, with plans to add proper scaled
icons in the 6.0 cycle. A function KiScaledBitmap() is added, which
works like KiBitmap() except it scales the bitmap according to the
calling window's font size. Controls have been added to all the main
applications to let the user select scaling manually (these were omitted
from smaller apps that didn't already have a place to put them).
In addition, in eeschema only, the pixel height of the system font is
shown in the options dialog for diagnostics. This is only for collecting
feedback before 5.0 release from users with different displays and will
be removed.
Improve dialog layout and fix UI policy issues with all of the dialog
boxes in the common, 3D viewer, CvPcb, and Eeschema code paths.
Updated the use of component to symbol.
Replace all instances of "component" and "part" with "symbol" when
referring to schematic and library symbols.
Replace all instances of "component" with "footprint" when referring to
board and library footprints.
Minor dialog layout fixes to some of the dialogs impacted by the UI
string changes.
The GTK+ file dialog is case sensitive however it does support regular
expressions. Most of the file dialog wildcards are lower case so only
files with the lower case extensions will show up in the file dialog.
This code adds a method to convert file extensions of any case to the
appropriate (sch -> [sS][cC][hH]) regular expression on GTK+ builds so
all file extension case combinations will show up in the file dialog.
A note to developers: make sure to add a file extension when setting
when setting the default file argument. If you do don't set an
extension, the GTK+ file dialog will happily append the regular
expression as the file extension which is surely not what you want.
There are still a few known places (mostly gerbview) where there are
some complex wildcard code that has not been converted.
Fixes lp:1720542
https://bugs.launchpad.net/kicad/+bug/1720542