Seth Hillbrand
4a52062a54
GAL: Make high-contrast meld into background
...
This mixes the de-emphasized layers into the background color rather
than merely a black color. This also keeps some of the original layer
color.
Fixes: lp:1831316
* https://bugs.launchpad.net/kicad/+bug/1831316
2019-06-09 08:16:58 -07:00
jean-pierre charras
63eb552e0a
Fix issue in cairo_gal when drawing a 360 deg arc (in fact a circle).
...
It was due to a angle normalization between -360 and 360 degrees.
So, in arcs, if the start angle and end angle diff is n*360 deg,
this normalization gives start angle = end angle.
The fix forces end angle = start angle+360deg in this case.
Fixes: lp:1832096
https://bugs.launchpad.net/kicad/+bug/1832096
2019-06-09 11:06:00 +02:00
Jeff Young
2d40425e4d
Move footprint & symbol tree context menus to tool infrastructure.
...
Fixes: lp:1831692
* https://bugs.launchpad.net/kicad/+bug/1831692
2019-06-05 20:16:48 +01:00
Jeff Young
1ea001d497
Go back to event-loop zooming for new frames.
...
The immediate mode appears to have made things worse not better.
2019-06-04 13:56:54 +01:00
Jeff Young
1bf04d1722
More ACTIONs work.
2019-06-04 00:51:16 +01:00
Jeff Young
3912c7407f
Move global commands to ACTIONs.
...
Also fixes a crash bug opening Edit Tracks and Vias dialog.
2019-06-03 21:08:30 +01:00
Jeff Young
9f1e2e34b7
Move some dupicated tools to common tools.
2019-06-03 21:08:30 +01:00
Jeff Young
33773bad4d
Yet more command conversions to ACTIONs.
2019-06-02 21:10:56 +01:00
jean-pierre charras
60d2dc2e90
Fix broken menuitem IDs in gerbview.
...
the broken ids prevent menuitems of some file histories to work.
2019-06-02 20:59:13 +02:00
Jeff Young
45a9544726
Instantate a default menu from no selection when menu is first built.
...
This might resolve some of the GTK menu anomalies.
2019-06-02 12:58:08 +01:00
jean-pierre charras
15e6787596
Gerbview: Add missing file histories to the Files menu.
2019-06-02 09:31:06 +02:00
Jeff Young
74e10791ff
Fix some Mac-specific issues with the Preferences... menu item.
2019-06-01 16:29:12 +01:00
Jeff Young
f67df4bf11
Collapse ARRAY_CREATOR into single class now that legacy instance is gone.
...
Also removes AllowLegacyCanvas ADVANCED_CONFIG option.
2019-06-01 16:29:12 +01:00
Jon Evans
d47cac12c3
Fix GerbView zoom-to-fit
2019-05-31 20:59:53 -04:00
Jeff Young
7553cc2651
Clean up some dangling legacy odds and ends.
2019-06-01 01:17:46 +01:00
Jeff Young
c2662b0e11
Retire EDA_DRAW_PANEL and legacy_wx/EDA_DRAW_FRAME.
2019-05-31 21:55:30 +01:00
Jeff Young
d6e9bdf07b
Convert remaining legacy drawing code to print code.
2019-05-31 21:54:22 +01:00
Jeff Young
03bab2f4a9
Remove some more legacy drawing stuff.
2019-05-31 21:54:22 +01:00
Jeff Young
d2daab808c
Remove some legacy cursor handling stuff.
2019-05-31 21:54:22 +01:00
Jeff Young
edc8438ef0
Start the process of removing the legacy draw panel.
2019-05-31 21:54:21 +01:00
Seth Hillbrand
eb0fc7bae2
Re-connect switch canvas on startup
2019-05-29 15:29:36 -07:00
Jeff Young
1e9da7f57b
Remove CurItem() architecture and legacy routers and drawing code.
2019-05-29 00:26:30 +01:00
Jeff Young
9d29e94cb5
Remove some more legacy code.
2019-05-29 00:26:29 +01:00
Jeff Young
0260b32125
Push resetLocalCoords down into COMMON_TOOLS.
...
Fixes: lp:1830693
* https://bugs.launchpad.net/kicad/+bug/1830693
2019-05-29 00:26:29 +01:00
Jeff Young
a27e4246e0
Move some more menu commands to ACTIONs.
2019-05-29 00:26:29 +01:00
Jeff Young
01326d1304
Update GerbView File menu to ACTION_MENU.
2019-05-29 00:26:29 +01:00
Jeff Young
c0909611d3
Remove a bunch more legacy editing code.
2019-05-29 00:26:29 +01:00
Jeff Young
39d769937f
Fix gerbview initialization order issue.
2019-05-27 21:44:20 +01:00
Jeff Young
9d9745b555
Remove more legacy editing code.
2019-05-27 18:47:20 +01:00
Jeff Young
e9e28b9aac
Retire legacy block architecture.
2019-05-27 11:58:56 +01:00
Jeff Young
6936effaa7
Implement undo for Page Settings in PlEditor, Eeschema and PCBNew.
...
Fixes: lp:1820059
* https://bugs.launchpad.net/kicad/+bug/1820059
2019-05-27 11:58:55 +01:00
Jeff Young
bdd44ce88c
Use consistent PageLayout data structure names.
2019-05-27 11:55:58 +01:00
Jon Evans
6b40473f5d
GerbView: properly load worksheet visibility at startup
...
(cherry picked from commit 5d1dcb4387
)
2019-05-26 13:03:23 -04:00
Jon Evans
549b76739e
Exclude invisible items from view bounding box for zoom-to-fit
...
Fixes: lp:1116457
* https://bugs.launchpad.net/kicad/+bug/1116457
(cherry picked from commit ede2575018
)
2019-05-26 13:03:23 -04:00
jean-pierre charras
568d4e2b19
Avoid including id.h in a lot of files that do not use it.
2019-05-26 08:14:25 +02:00
Jeff Young
323bb0f8e1
Moving PageLayout editor to GAL canvas and modern toolset.
2019-05-24 19:49:09 +01:00
Seth Hillbrand
ac435ecd68
Moving further arc approximations down
...
This corrects an issue with fill segments-per-circle and moves the error
to segmetns calculation down in a number of functions to expose the
single value for approximation
2019-05-22 14:35:17 -07:00
Jon Evans
ec39bdda77
GerbView: fix saving of canvas type and lingering legacy menu item
...
Fixes: lp:1829647
* https://bugs.launchpad.net/kicad/+bug/1829647
(cherry picked from commit b00e20b23f
)
2019-05-19 16:17:53 -04:00
jean-pierre charras
ab6521ff9e
Gerbview, gerbview_selection_tool.cpp: add missing code to rebuild the view menu.
2019-05-19 12:39:37 +02:00
Jeff Young
7d9a0b06e0
Push help menu down into EDA_BASE_FRAME.
2019-05-18 13:14:08 +01:00
Jeff Young
b90b454ada
Remove legacy block operations.
2019-05-18 00:21:49 +01:00
Jeff Young
1a3d0492f5
Push polar coords down into COMMON_TOOLS.
2019-05-18 00:21:49 +01:00
Jeff Young
fbb807f3bb
Move some more menu & toolbar items to modern toolset.
2019-05-16 19:57:06 +01:00
Jeff Young
69afa27a5f
Implement ACTION_TOOLBAR and update some of the menus to ACTION_MENU.
...
This gives us better separation of MVC in line with the design of
the modern toolset. It also reduces a whole bunch of duplicated
data.
2019-05-15 17:50:52 +01:00
Jeff Young
f9e4ee1fc9
CONTEXT_MENU -> ACTION_MENU. (Now used for menu-bar menus too.)
2019-05-15 17:50:52 +01:00
Jeff Young
eb3a201d39
Move some PCBNew and GerbView actions to their COMMON equivalents.
2019-05-15 17:50:52 +01:00
Jeff Young
e850592587
Cleanup.
2019-05-15 17:50:52 +01:00
jean-pierre charras
2d99ec779f
Gerbview: Sync issue between the D Code drop list and the active layer
...
Fixes: lp:1829234
https://bugs.launchpad.net/kicad/+bug/1829234
2019-05-15 16:11:04 +02:00
Jeff Young
ef5c69167a
Start moving some LibEdit and SchEdit menubar menus to actions.
...
Also includes a bunch of bug fixes that got intermingled.
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828826
* https://bugs.launchpad.net/kicad/+bug/1828826
Fixes: lp:1828793
* https://bugs.launchpad.net/kicad/+bug/1828793
2019-05-13 21:44:29 +01:00
Wayne Stambaugh
3c4f8c1bf7
Fix frame name capitalization in all about dialogs.
...
This is a stop gap fix. It should be possible to use the wxFrame title
string for this but some of the frame windows have appropriated the title
string for configuration file naming purposes which is less than ideal.
Fixes lp:1825977
https://bugs.launchpad.net/kicad/+bug/1825977
2019-05-13 15:40:44 -04:00
Jeff Young
fd546da640
Homogenize hit testing and selection return types.
...
Prep work for sharing SCH_SELECTION_TOOL with LibEdit.
2019-05-05 17:14:30 +01:00
Jeff Young
ed0e6af66d
Move to direct tool registration.
...
It was confusing that the primary frames registered their tools
differently than the other frames. In addition, since the other
frames also added their own tools, foo_actions::RegisterAllTools()
didn't really register all tool but rather those used by the
principal frame (PCB_EDIT_FRAME, SCH_EDIT_FRAME, etc.)
2019-05-05 17:14:30 +01:00
Jeff Young
b526461a8e
Fix colliding hotkeys issue.
...
All grid commands need to be shared now as they're implemented
by a common tool.
2019-05-05 17:12:59 +01:00
Jeff Young
42383ae871
Build out some of the modern toolkit context menus.
2019-05-05 17:12:59 +01:00
Jeff Young
7632f89157
Rename file to match class.
2019-05-05 17:12:59 +01:00
Jeff Young
1a007c3e4b
Implement SCH_SELECTION_TOOL (but still with legacy semantics).
2019-04-22 22:08:18 +01:00
Jeff Young
a461eae8b9
Fix 100s of usages of GetFlags() which conflated != 0 with being edited.
...
While this was true long ago, many flags have been added since which
have nothing to do with editing (HIGHLIGHTED, BEGIN_ONPAD, etc.)
2019-04-22 09:58:06 +01:00
Jeff Young
0772b54845
Move eeschema zoom-selection to modern toolset.
...
Fixes: lp:1825164
* https://bugs.launchpad.net/kicad/+bug/1825164
2019-04-17 21:49:50 +01:00
Jeff Young
0021ecf51e
Don't double-escape netnames.
...
Netnames in wxChoice or wxListBox are already in internal format
and don't need escaping again.
Fixes: lp:1823863
* https://bugs.launchpad.net/kicad/+bug/1823863
2019-04-12 00:28:58 +01:00
bobo87
ca7aec2d4e
Fix crash in gerbview when legacy disabled
...
Fixes: lp:1822877
* https://bugs.launchpad.net/kicad/+bug/1822877
2019-04-11 14:25:11 -07:00
Jeff Young
b7c12b238f
Increase GervView layers to 51.
...
This also makes its use of LSET consistent with PCBNew.
Fixes: lp:1809019
* https://bugs.launchpad.net/kicad/+bug/1809019
2019-04-10 21:21:00 +01:00
Jeff Young
684bb62fd8
Escape slashes in labels and netnames.
...
Also re-allows spaces, as they can already come in through sheet
names.
Fixes: lp:1798621
* https://bugs.launchpad.net/kicad/+bug/1798621
2019-04-07 00:24:10 +01:00
Michael Kavanagh
b0674b8802
Add Ctrl+, hotkey to preferences dialog
...
Also change interactive router settings from Ctrl+, to Ctrl+Shift+,
2019-04-02 12:57:27 -04:00
Michael Kavanagh
fe6bc411dd
Fix 'hokey' -> 'hotkey' typo
2019-04-02 12:57:26 -04:00
Wayne Stambaugh
f20a1314ff
GerbView: remember last open gerber file dialog wildcard.
...
This is only for the current GerbView session. When GerbView is closed,
the last open gerber file dialog wildcard setting is lost.
2019-04-01 12:46:11 -04:00
Wayne Stambaugh
37edf0e9a6
Remove superfluous build library dependencies.
...
It looks like someone's paste keys got stuck and added repeated sets of
link libraries in multiple places.
2019-03-29 09:01:56 -04:00
jean-pierre charras
e1d3df54eb
Kicad and Gerbview: add .nc and .xnc file ext to files seen as drill files.
...
.nc is an other usual Excellon drill file ext, and .xnc will be soon also in use.
2019-03-27 16:47:13 +01:00
jean-pierre charras
ff73f69d3e
Gerbview: fix crash when reading a .gbrjob, and when a file given by the .gbrjob is not found.
...
A incorrect gerber image was created, creating crash on exit or when enable the layer view.
2019-03-24 17:32:57 +01:00
Seth Hillbrand
f96d16eba3
Restore LINK_MAP linker options
...
Removing invalid TO_LINKER missed a few segments where it was used.
This fixes the ability to enable link maps
2019-03-16 20:37:14 -07:00
Michael
de706635cc
Add high contrast hotkey to GerbView
...
Also add all existing hotkeys to menubar.
Fixes: lp:1795388
https://bugs.launchpad.net/kicad/+bug/1795388
2019-03-03 19:25:53 -08:00
Seth Hillbrand
c4fe6785ad
gerbview: Fix arc filling
...
Arcs in gerbview should not be filled.
Fixes: lp:1817246
* https://bugs.launchpad.net/kicad/+bug/1817246
2019-02-21 21:26:10 -08:00
Tomasz Włostowski
bbee30671a
gal: pixel alignment hacks, works for Retina display too now.
...
gal: pixel alignment for Cairo.
gal: pixel alignment for OpenGL
Cleanup of pixel alignment patches
gal/opengl: more pixel alignment patches:
- works on Retina displays now
- pixel alignment for circles
- correct 1-pixel strokes
- fixed unfinished 1-pixel line ends
GAL: Restore antialiasing options in Cairo
GAL: Fix arc drawing
Removes DrawArcSegment, which drew arcs whose edge was optionally
stroked (a feature that we did not use). Fixes Cairo arc drawing issue
where arcs were not visible in pcbnew.
gal: further cleanup
gal: removed unused shader parameter
2019-02-16 20:03:13 +01:00
John Beard
e6a6266f3d
Build: libpolygon provides its own includes
...
Libpolygon can provide its own includes via target_include_dirs PUBLIC.
This means any linking targets do not need to specifiy them manually.
As common requires polygon, the polygon dep is also now no longer
required downstream of libcommon, as it's transisitvely implied
by libcommon's target_link_libraries.
This resolves a circular dependency previously detected and also
simplifies CMakeLists.
2019-02-04 19:29:31 -08:00
John Beard
bb2ae8e13b
Bitmaps: move bitmap defs to bitmaps library
...
The bitmap definitions (BITMAP_DEF and so on) do not
have any dependencies on other libs, including WX. This
means the bitmaps library can be isolated from the other
dependencies.
Common now depends on bitmaps, and libraries that depend
on common can pick it up from the common target_link_libraries,
as it is PUBLIC. This means a lot of targets no longer
need manual bitmap linkage.
This avoids a circular dependency that was previously reported
by static analysis.
Avoiding pulling in WX and other headers into the include
tree of each bitmap .cpp is a huge speed up (around 10x) in
compilation, and the generated static library is also 10x
smaller (20MB vs 200MB)
Add common as a link library to pnsrouter,connectivity.
THese library do still use common code (including bitmaps,
via base_screen.h) and this allows them to pick up the libcommon
includes correctly.
2019-02-04 19:29:31 -08:00
Seth Hillbrand
9d99fd188f
Revert "Change top selection drop-down to combobox"
...
This reverts commit 7d06651a10
.
2019-01-28 10:15:32 -08:00
John Beard
658cc8fd96
Wildcards: unify handling of all files wildcards
...
Use the AddFileExtListToFilter() to also generate the
wildcard for "all files". This is because:
* Users can use AddFileExtListToFilter for the all files WC
with the same interface as for any other extensions.
* Users do not need to worry about wxGetTranslation, as the
_() is applied in the same way as the other *Wildcard() helpers,
and it is a function just like the others, so it is consistent
* There is a testable interface to document the expected result.
The test is added.
2019-01-09 08:57:42 -05:00
Seth Hillbrand
1e5ba6f1b1
Replace DIM() macro
...
The standard DIM() macro was not typesafe as it happily deferred errors
to runtime that can be caught at compile time. Replacing it with a
generic C++11 constexpr allows for typecasting, comparison and compile
time error checking.
2019-01-06 08:43:12 -08:00
Seth Hillbrand
7d06651a10
Change top selection drop-down to combobox
...
wxChoice centers the selection on GTK. So when switching from a
mid-list item to an item at the top, the list is always cut off for
choice lists located on the top toolbar. Using a combobox provides a
drop-down that allows easier access to all elements in the box.
Fixes: lp:1808569
* https://bugs.launchpad.net/kicad/+bug/1808569
2019-01-03 14:48:28 -08:00
Seth Hillbrand
6662891f34
string update: Help->List hotkeys
...
The hotkey name "Help (this window)" does not describe what the hotkey
and associated action does. It displays the current hotkey list, so the
action name should reflect that behavior
2019-01-02 15:44:13 -08:00
John Beard
e856a7a09c
Disable legacy canvas on GTK3
...
This make the use of legacy canvas on GTK3 a default-off
advanced config. Legacy is substantially broken on GTK3
and is of basically no use at all to general users on this
platform.
If the program starts with legacy canvas in the config,
it is forced into a GAL mode, as otherwise it could happen
that the user is stuck and unable to get into pcbnew to change
the setting.
Fixes: lp:1803156
* https://bugs.launchpad.net/kicad/+bug/1803156
2018-12-28 11:36:09 -05:00
jean-pierre charras
9dedbc74a3
Gerbview exporter: fix a wxASSERT.
2018-12-21 13:48:00 +01:00
jean-pierre charras
388397f97d
Protect TesselatePolygon() against degenerated polygons (less than 3 corners) to avoid crashes.
...
Use TesselatePolygon() to draw polygons in Gerbview instead of GLU tesselation, much slower.
Add helper methods in GAL to know if the current GAL engine is Cairo, OpenGL or something else,
useful to optimize drawing code.
2018-12-18 12:49:14 +01:00
jean-pierre charras
d546fce7c4
Gerbview: drill file dialog selector: add .nc and .xnc to drill file extension list.
...
Therefore file extension list is ".drl .nc .xnc" for NC (Excellon) drill files.
2018-12-07 11:25:30 +01:00
Maciej Suminski
766156ed87
Fix for dark mode on macOS Mojave
...
Thanks to Scott Rapson and Justace Clutter for the solution.
Fixes: lp:1797989
* https://bugs.launchpad.net/kicad/+bug/1797989
2018-12-07 09:03:56 +01:00
D4p0up
e94752a6cf
Added help string to select buttons.
...
Also moved highlight text string to help_common_strings.h
Fixes: lp:1497737
* https://bugs.launchpad.net/kicad/+bug/1497737
2018-12-05 20:13:03 -08:00
jean-pierre charras
2cb4187f52
Gerbview: small fix to speed up switching to opengl canvas.
...
* workaround to speed up switching canvas from legacy or Cairo to opengl (this is a workaround, not a fix)
2018-12-03 18:31:36 +01:00
jean-pierre charras
ecfe564f4d
Gerber viewer: Ensure arc interpolation is used only after a arc command.
...
Remove also non existing G command codes.
2018-12-01 18:52:27 +01:00
jean-pierre charras
3e2f8bcb1d
Gerbview: fix broken behavior of "Reload file" tool.
...
Previous code was unable to reload drill files: they were reloaded as gerber files.
2018-11-26 12:49:13 +01:00
jean-pierre charras
542c57ff27
Gerbview, Excellon (NC) drill files reader: routing mode: better handling of malformed files.
...
Routing mode starts by M15 (or G01, G02, G03) and ends by M16 or M17.
Accept now a end routing if a G00 (start move) G05 (switch to drill mode) or M30 (end of file) is encountered.
2018-11-26 10:55:36 +01:00
jean-pierre charras
0e705cd338
Fix a minor issue in Legacy mode: DCodes were displayed regardless the visibility of the layers.
2018-11-24 10:14:33 +01:00
jean-pierre charras
73b52f2e23
Gerbview: fix incorrect initialization of WorldUnitLength.
...
Fix incorrect min zoom level to show D Code texts.
2018-11-20 10:27:59 +01:00
Jeff Young
0de9cb345c
Add shortcuts to setting dialogs for track widths, via sizes and grid sizes.
...
Fixes: lp:1803671
* https://bugs.launchpad.net/kicad/+bug/1803671
2018-11-17 00:35:06 +00:00
jean-pierre charras
8c8ccf83e6
Fix a few I18n minor issues.
2018-11-16 09:43:40 +01:00
jean-pierre charras
ffe4b745dd
Opengl gal: Fix bug: segments with 0 length are not drawn. However the are equivalent to circles.
...
Using 0 length segments happen with oval pads having the same X and Y size, and in some other cases.
Fixes: lp:1801923
https://bugs.launchpad.net/kicad/+bug/1801923
2018-11-15 13:10:42 +01:00
jean-pierre charras
f7cf40f2f4
Fix a few Coverity warnings.
...
Sometimes a dynamic_cast was used without testing the returned value.
Some are replaced by static_cast, when the dynamic_cast was useless.
2018-11-11 08:28:58 +01:00
jean-pierre charras
0980f7232c
Gerbview: minor fixes.
2018-11-08 16:49:50 +01:00
Maciej Suminski
afda69c9cc
Removed default line width setting from the printing dialog
2018-10-31 19:17:30 +01:00
Maciej Suminski
3d15092643
Fixed loading layer visibility setting for printouts
2018-10-31 19:17:30 +01:00
Maciej Suminski
d3ea63e133
Removed a redundant parameter from BOARD_PRINTOUT constructor
2018-10-31 19:17:30 +01:00
Maciej Suminski
dea778842b
Grand printing dialogs refactor
...
Patch introduces a generic printing settings window that is customized by pcbnew and gerbview.
2018-10-31 19:17:30 +01:00
Maciej Suminski
e81c3a59a2
Refactored and unified board editor and footprint editor print dialogs
2018-10-31 19:17:30 +01:00
Maciej Suminski
92c5cb288e
Fixed scale in Gerbview printouts
2018-10-31 19:17:30 +01:00
Maciej Suminski
698a380827
Clear selection before printing
...
Selected objects are hidden in VIEW, that makes them disappear from
printouts.
2018-10-31 19:17:30 +01:00
Maciej Suminski
1cce194c8a
Handle layer settings in printouts
2018-10-31 19:17:30 +01:00
Maciej Suminski
5b94f20e6f
Adapted printout controllers to the new printing routines
2018-10-31 19:17:30 +01:00
Jeff Young
3158273c1a
Revert window-locking change which didn't fix preferences crash.
2018-10-13 15:53:54 +01:00
Jeff Young
6a5744adb1
Show compile errors and go back to GLSL V120.
2018-10-13 12:39:53 +01:00
Seth Hillbrand
d03b08a03f
gerbview: Prevent NULL dereference
...
There was a possible NULL dereference when executing tool_up even
though we should never hit it, we protect against bad files.
Also converts a couple untranslated error strings.
2018-10-11 14:23:07 -07:00
Jeff Young
9dfcc839a4
Fix color issues with cursor and sheet pins.
2018-10-09 11:08:56 +01:00
Tomasz Wlostowski
e439b17fa1
eeschema-gal: make sure all other Kicad apps compile after eeschema gal hacks
2018-10-09 11:08:52 +01:00
Nabeel Ahmad
664fb234ff
GerbView: Add actions to reload files
...
NEW: Adds new items in File Menu and Toolbar to reload the Gerber files
for all layers.
Fixes: lp:1794004
* https://bugs.launchpad.net/kicad/+bug/1794004
2018-10-09 09:16:06 +02:00
jean-pierre charras
606096b548
Gerbview: fix a overzealous wxASSERT
...
Fixes: lp:1796744
https://bugs.launchpad.net/kicad/+bug/1796744
2018-10-09 08:39:21 +02:00
John Beard
445a9fa963
Put cursor and pan control in libcommon/tool, enable in Gerbview
...
Put the cursor and pan control TOOL_ACTIONs in ACTION,
and refer to them in that way.
The handlers are currently identical in Pcbnew and Cvpcb,
and Gerbview (and all canvases) can benefit from them as well
if they are in libcommon. Also saves duplicated code.
Fixes: lp:1795855
* https://bugs.launchpad.net/kicad/+bug/1795855
2018-10-04 11:41:06 +02:00
jean-pierre charras
4136aca221
Gerbview: Excellon drill files reader: add a better support of routing mode.
...
Previously, the M and G00, G01, G02 and G03 commands were read, but nothing was actually done.
The current support is a bit rough, but it allows reading some drill files with routing commands.
2018-09-24 13:12:47 +02:00
Jeff Young
5974899fa5
Clean up file locations and names.
2018-09-22 16:23:13 +01:00
Jeff Young
666da3849b
Make esc dismiss net and layer selector popups.
2018-09-22 16:23:13 +01:00
Maciej Suminski
40a3b4a533
GERBVIEW_RENDER_SETTINGS: verify item type
...
Not all items displayed by Gerbview are GERBER_DRAW_ITEMs (e.g. WORKSHEET_VIEWITEM),
so appropriate checks have been added.
2018-09-18 15:18:55 +02:00
Seth Hillbrand
0109641c2f
gal: correct layer ordering
...
Net labels need to be rendered under the selected item.
Fixes: lp:1790016
* https://bugs.launchpad.net/kicad/+bug/1790016
2018-08-30 16:55:48 -07:00
Seth Hillbrand
5f74560a46
gerbview: Add LAYER_SELECT_OVERLAY to GAL
...
Ensure selected gerbview layers plotted on newly created SELECT layer
2018-08-28 15:13:54 -07:00
Jeff Young
86a801aabc
Allow updating of file history size on the fly.
...
Also updates the file menu IDs so that we can actually handle
more than 9 items in the file history.
Also adds configurable file history length to the other gerber
files (zip, drill and job).
Fixes: lp:1745729
* https://bugs.launchpad.net/kicad/+bug/1745729
2018-08-21 10:34:41 +01:00
Jeff Young
acec00f80a
Fix bug displaying canvasses when starting in Legacy mode.
2018-08-11 23:43:19 +01:00
Jeff Young
d81faa72c9
Overhaul border drawing in all the Kicad frames.
...
Primary change is to replace most control/window borders with
AUI pane borders. We implement our own AUI border drawing
routine which avoids the ugly one-pixel white frames around
dark canvasses.
Also increases the signal-to-noise ratio of all the pane
creation code in the various frames.
2018-08-11 17:25:38 +01:00
Jeff Young
33fc74a04d
Performance enhancements for Footprint Editor construction.
2018-08-04 10:29:17 +01:00
jean-pierre charras
6e9990449f
Gerbview: fix a minor log warning.
2018-07-30 16:19:35 +02:00
Jeff Young
977f27f3c4
Adjust spacing on preference panels.
...
Giving them the correct parent changed the spacing.
(cherry picked from commit 7f602f3)
(cherry picked from commit 718db46)
2018-07-17 15:14:25 +01:00
Jeff Young
abae094955
Remove unused variables.
...
(cherry picked from commit 4fc5281)
(cherry picked from commit b151c8d)
2018-07-17 15:14:22 +01:00
Jeff Young
909f850d16
Give panels the correct parent (the treebook, not the dialog).
...
(cherry picked from commit 7338533)
(cherry picked from commit 3ce75be)
2018-07-17 15:14:19 +01:00
Jeff Young
e329a411bf
Add grid and zone dropdowns to GerbView frame.
...
(cherry picked from commit be5c1e2)
2018-07-17 15:13:58 +01:00
Jeff Young
a747d074c4
Add Worksheet to Render Items for GerbView.
...
Also added PCB Background Color.
Fixes: lp:1780362
* https://bugs.launchpad.net/kicad/+bug/1780362
(cherry picked from commit f789ef1)
2018-07-17 15:13:43 +01:00
Jeff Young
df863e44e2
Wire m_showPageLimits control up to GAL canvas.
...
Fixes: lp:1499285
* https://bugs.launchpad.net/kicad/+bug/1499285
(cherry picked from commit 4cb7442)
2018-07-17 15:13:29 +01:00
Jeff Young
5f3ee1e7ce
More g_UserUnit erradication.
...
(cherry picked from commit 3f08780)
2018-07-17 15:12:31 +01:00
Jeff Young
7841f8a466
Unified preferences dialog framework.
...
(cherry picked from commit 8ee3e77)
2018-07-17 15:11:17 +01:00
Jeff Young
eacaa39aa2
Remove global units usage from GetSelectionText...
...
... and GetMsgPanelInfo.
Step 4 in the g_UserUnit eradication effort.
Also removes a couple of conversion routines that were close
enough to extinction.
(cherry picked from commit c75da51)
2018-07-17 15:11:09 +01:00
Jeff Young
0010ad37d1
In-place editing for footprint TEXTE_MODULEs.
...
Fixes: lp:1102168
* https://bugs.launchpad.net/kicad/+bug/1102168
Fixes: lp:1779913
* https://bugs.launchpad.net/kicad/+bug/1779913
(cherry picked from commit 83781ab)
2018-07-17 15:11:04 +01:00
Jeff Young
05ef6f05d1
Move SanitizePads to CLIENT_SELECTION_FILTER architecture.
...
This not only reduces the number of different mechanisms, but
will also reduce (yet again) the number of Clarify Selection
pop-ups (because the CLIENT_SELECTION_FILTER runs before the
pop-up, while SanitizePads ran after it).
Fixes: lp:1710451
* https://bugs.launchpad.net/kicad/+bug/1710451
(cherry picked from commit e50a993)
2018-07-17 15:10:18 +01:00
Jeff Young
a39fb03822
Remove some references to g_UserUnit
...
(cherry picked from commit 614d832)
2018-07-17 15:09:56 +01:00
Jeff Young
4f8c546140
Implement user units uniformly in EDA_DRAW_FRAME
...
Step 1 of the g_UserUnit global eradication. This commit includes
basic hookup of hotkeys, units tool-buttons and grid dialogs.
(cherry picked from commit e0500ab)
2018-07-17 15:09:51 +01:00
Jeff Young
b99ea159c8
Rationalize select menu texts.
...
Be consistent with order, formatting, etc.
Remove debug stuff such as zone timestamp and net code.
Clean up misleading pad messages.
(cherry picked from commit 2132109)
2018-07-17 15:09:48 +01:00
jean-pierre charras
c291505830
Gerbview, read Excellon files: fix a few issues.
...
The main issue is the fact Excellon files have no coordinate fine format definition.
Only the units are defined.
Units are floating point numbers or integer numbers.
Integer numbers can be defined as 3.3 or 2.4 numbers (mm/inches)
However some files (altium drill files for instance) use an other notation.
This fix is a workaround to accept 2.x (inch) or 3.x (mm) notations.
Fixes: lp:1754121
https://bugs.launchpad.net/kicad/+bug/1754121
Fixes: lp:1782053
https://bugs.launchpad.net/kicad/+bug/1782053
2018-07-17 14:29:28 +02:00
jean-pierre charras
2af5fb51f2
Revert "Perform coordinate format detection on Excellon drill files"
...
This reverts commit 3e033aee0c
.
2018-07-17 14:29:27 +02:00
Carsten Schoenert
9f7109826d
fix misspelled 'allows to' -> 'allows one to'
...
Fixup small grammar issues around used 'allows to ...' almost in
code comments.
2018-07-11 10:35:03 -04:00
jean-pierre charras
ef38a198d1
GerbView: incorrect handling of polygon primitive: broken parameters rotation and drill size.
...
Fixes: lp:1778459
https://bugs.launchpad.net/kicad/+bug/1778459
2018-06-25 11:00:53 +02:00
Maciej Suminski
e4a6f2e523
Switch canvas to Cairo if OpenGL is not supported on the first run
2018-06-04 12:17:58 +02:00
Maciej Suminski
27c9c6ceed
Enable the accelerated canvas on the first gerbview run if requested
...
Commit 8910894f
applied to gerbview.
2018-06-04 10:47:44 +02:00
jean-pierre charras
8f984c2899
OpenGL, DrawGrid(): use grid and axis alpha color value setting, instead of the fixed 1.0
...
In Cairo mode, this function uses already the alpha color value setting.
Now for low alpha values (usually they are low, as said in many GAL comments),
Cairo mode and OpenGL mode should have a similar look.
2018-06-01 18:29:04 +02:00
jean-pierre charras
bfa89039c4
Gerbview, GAL mode: fix "Zoom to fit" area size calculation when nothing is loaded.
...
Also ensure the worksheet is displayed after clearing the gerber layers.
2018-06-01 11:39:08 +02:00
jean-pierre charras
9a228d8ec9
Gerbview: GAL mode: shows the page worksheet, similar to legacy mode.
2018-06-01 09:11:43 +02:00
jean-pierre charras
fc71fc6474
Gerbview: Fit to page: use the page size when nothing is loaded.
...
Previously, due to a minor bug, a very small default size was used (therefore a high zoom value), that was not a good choice.
2018-05-31 11:22:33 +02:00
Jeff Young
cd5f727880
Fix off-by-1 errors in zoom menus & use zoom steps in GAL canvas.
...
Also bumps the maximums a bit (at user request).
Fixes: lp:1773215
* https://bugs.launchpad.net/kicad/+bug/1773215
2018-05-25 13:01:58 +01:00
Jeff Young
81af2db614
Even out the Gerbveiw zoom steps and increase the max.
...
Fixes: lp:1773215
* https://bugs.launchpad.net/kicad/+bug/1773215
2018-05-24 19:04:10 +01:00
Seth Hillbrand
8506cdf3ae
Avoid numerical dereference of selections
...
The SELECTION is a std::set. Numerical dereference of item n is O(n) as
the iterator is not random access. Therefore, a for loop using
numerical dereference is O(n!) and quickly slows.
We avoid this by storing items to remove separately while iterating and
then removing the items after we complete.
Fixes: lp:1692081
* https://bugs.launchpad.net/kicad/+bug/1692081
2018-05-22 16:37:45 -07:00
Seth Hillbrand
8c5037a48b
Optionally sort reporter messages
...
It can be useful to have similar class messages grouped together so that
error messages in a larger report don't get lost among the
warning/info/action messages.
This patch allows sorting of messages for dialogs that benefit from
organization. Default behavior of reporter messages remains
unchanged by this patch.
Fixes: lp:1772090
* https://bugs.launchpad.net/kicad/+bug/1772090
2018-05-22 13:55:02 -07:00
Jeff Young
5010a461e1
Make polar coordinates consistent.
...
Use theta instead of phi (which normally describes the azimuth
angle).
Fixes: lp:1545107
* https://bugs.launchpad.net/kicad/+bug/1545107
2018-05-18 12:22:14 +01:00
jean-pierre charras
7c52af2d50
Gerbview: cosmetic enhancement: add icons in Clarify menu.
2018-05-17 10:24:09 +02:00
jean-pierre charras
93e75af388
Rename plot_auxiliary_data.h file to gbr_metadata.h, according to the class names defined by this file
2018-05-17 08:07:29 +02:00
jean-pierre charras
d8687e4eaf
Gerbview: minor code cleanup
2018-05-14 09:05:11 +02:00
jean-pierre charras
8da242c593
Gerbview: accept any structured comment as X2 attribute.
...
A structured comment is a comment line starting by "G04 #@! " and in fact containing
a X2 attribute. It is used to create Gerber files contianing X2 metadata, but compatible
with X1 file format
2018-05-14 09:05:09 +02:00
jean-pierre charras
a3770bf6e1
Gerbview: fix a crash when Gerbview starts by loading a gerber job file (run from a command line)
2018-05-07 12:47:11 +02:00
Jeff Young
106dd60e45
Only adjust LAYER_WIDGET font size if larger than indicator.
...
Also moves adjustment into LAYER_WIDGET so all the callers don't
have to deal with it individually.
Fixes: lp:1767965
* https://bugs.launchpad.net/kicad/+bug/1767965
2018-05-02 21:49:57 +01:00
Seth Hillbrand
f911ef5186
Standardize print scale label for gerbview
2018-04-23 13:14:06 -07:00
Seth Hillbrand
ca06e67ffc
Standardize colons in gerbview display options dialog
2018-04-23 13:11:53 -07:00
Seth Hillbrand
aa0d67bdde
Standardize colons in gerbview print dialog
2018-04-23 13:10:53 -07:00
jean-pierre charras
2925b93571
Gerbview: Remove dead code that handled a experimental .gbrjob file, now no longer existing.
2018-04-23 13:04:21 +02:00
Maciej Suminski
cfa9916836
Prevent issuing a print command before the previous one is finished
...
Fixes: lp:1765965
* https://bugs.launchpad.net/kicad/+bug/1765965
2018-04-23 11:25:28 +02:00
Maciej Suminski
3cc0554e33
Code formatting
2018-04-23 11:18:51 +02:00
jean-pierre charras
07dc12fdd3
Fix incorrect UI management of Zoom to Selection, created by fix 2a419156
2018-04-14 17:44:17 +02:00
jean-pierre charras
e9ef555c6a
Use Ctrl+F1 to display hotkey list also in Gerbview and Kicad manager
2018-04-14 17:12:28 +02:00
Jeff Young
2a419156e0
Don't try to check uncheckable menu items.
...
When updating toolbars make sure the events are coming from the
toolbar in question (and not the menus which share the same ID).
Fixes: lp:1763563
* https://bugs.launchpad.net/kicad/+bug/1763563
2018-04-13 21:42:31 +01:00
Maciej Suminski
df8bc93e4b
gerbview: Removed duplicate zoom-to-selection handler, made the toolbar button checkable
...
Fixes: lp:1763270
* https://bugs.launchpad.net/kicad/+bug/1763270
2018-04-12 11:52:08 +02:00
Carsten Schoenert
a11714b1a4
fix misspelled 'an other' -> 'another'
2018-04-08 13:24:37 -04:00
Jeff Young
baef22df9a
Fix memory leak and push menu change to other apps.
...
Fixes: lp:1761848
* https://bugs.launchpad.net/kicad/+bug/1761848
2018-04-07 14:14:55 +01:00
jean-pierre charras
a2f118d2fa
Gerbview: fix not working menu item "Zoom to Selection" in main menu. This also fixes a wxASSERT for this menu item
2018-04-03 16:30:16 +02:00
jean-pierre charras
f8a3ec4974
Add a method to facilitate Tools handling in main frame toolbars.
...
Fix also a bug in gerbview_frame.cpp, about a broken toolbar accessor (fortunately not used in current code)
2018-04-03 13:00:20 +02:00
jean-pierre charras
54f14b08ca
commit forgotten change in my previous commit
2018-03-31 18:46:29 +02:00
jean-pierre charras
fa39acfc2f
Gerbview, export to pcbnew : export polygons as new DRAWSEGMENT polygonal shape.
...
It can creates issues on copper layers, but the only one other alternative is to ignore polygons in export,
and this is worst.
2018-03-31 18:43:12 +02:00
jean-pierre charras
5b8c35f64d
Gerbview: minor fix: do not report error if in header INCH ot METRIC command has no parameter (,LZ or ,TZ format)
...
I am not sure it should be reported, because LZ or TZ format has no meaning in decimal format, and can be omitted.
2018-03-31 18:40:29 +02:00
Jon Evans
1ec217d70e
Fix hit testing for zero-width gerber items
2018-03-29 22:04:51 -04:00
Wayne Stambaugh
8d8c422a19
Add zoom to selection menu entry to all editors.
...
Fixes lp:1753339
https://bugs.launchpad.net/kicad/+bug/1753339
2018-03-25 12:34:19 -04:00
jean-pierre charras
29ebca4053
Very minor fix: make a menu string more easily translatable
2018-03-22 21:00:41 +01:00
Jon Evans
5b653c0c1e
Update MacOS icons
...
Fixes: lp:1750284
* https://bugs.launchpad.net/kicad/+bug/1750284
2018-03-22 11:45:42 -04:00
Jon Evans
a931ac436a
Add some safety checks to Excellon number format detection
...
Fixes: lp:1754121
* https://bugs.launchpad.net/kicad/+bug/1754121
2018-03-21 22:29:43 -04:00
jean-pierre charras
2ff74cb3fc
Add support for .gbrjob new file format (JSON format) in Gerbview
...
Add experimental code to generate .gbrjob files in the new JSON file format
2018-03-19 15:14:20 +01:00
jean-pierre charras
5e34563f52
Fix a long calculation time that happens with some gerber files when closing Gerbview in legacy display mode.
2018-03-19 10:58:27 +01:00
Jon Evans
4e76a18d5d
Add checks against missing D-Codes in flashed Gerber items
...
Fixes: lp:1756710
* https://bugs.launchpad.net/kicad/+bug/1756710
2018-03-18 21:55:27 -04:00
jean-pierre charras
827b818b5d
Very minor fixes in Gerbview and Kicad:
...
Gerbview: fix X2 z order display of Adhesive (Glue) layers.
Kicad: very minor cosmetic enhancement in Create Project dialog.
2018-03-18 16:04:23 +01:00
Marco Ciampa
9e8bcbea04
Gerbview: fix typo in tooltip string.
2018-03-16 09:41:53 -04:00
Jon Evans
213b600b54
Revert active layer behavior so gerber/drill load behavior matches
...
Fixes: lp:1755713
* https://bugs.launchpad.net/kicad/+bug/1755713
2018-03-14 21:52:06 -04:00
jean-pierre charras
fa41026f36
Fix issue in aperture macro with some strange gerber files.
...
Fixes: lp:1755623
https://bugs.launchpad.net/kicad/+bug/1755623
2018-03-14 14:55:51 +01:00
jean-pierre charras
66d5d10b49
Gerbview: bigger line buffer to read some gerber files that have only one (very long) line.
...
small code refactor.
2018-03-14 10:42:18 +01:00
Wayne Stambaugh
71d8a1ea1e
GerbView: fix legacy canvas refresh when drawing outline modes.
2018-03-13 18:25:03 -04:00
Wayne Stambaugh
a5cca18dd1
GerbView: add view menu.
...
Include all actions provided by left vertical toolbar in a new view
menu for consistency with other main frames.
Move show/hide layer manager to view menu.
Simplify some toolbar and menu update logic.
Fixes lp:1753337
https://bugs.launchpad.net/kicad/+bug/1753337
2018-03-13 18:00:15 -04:00
Jeff Young
43899bbe0e
Fix compile issues under some compilers.
2018-03-12 21:02:04 +00:00
Jeff Young
4eedb3a27d
The _() macro affords some nullptr safety over a naked immediate.
...
Fixes: lp:1477448
* https://bugs.launchpad.net/kicad/+bug/1477448
2018-03-12 19:18:05 +00:00
Jon Evans
e4b847b345
GerbView: fix a few issues with layer selection / info synchronization
...
Fixes: lp:1754135
* https://bugs.launchpad.net/kicad/+bug/1754135
2018-03-08 18:19:48 -05:00
Seth Hillbrand
9bede6900c
Standardize Kicad -> KiCad
2018-03-08 12:33:32 -08:00
Jon Evans
23f49f014b
Code style fixes
2018-03-07 22:14:24 -05:00
Jon Evans
3e033aee0c
Perform coordinate format detection on Excellon drill files
...
Fixes: lp:1754121
* https://bugs.launchpad.net/kicad/+bug/1754121
2018-03-07 22:08:59 -05:00
Jon Evans
c3333d4665
GerbView: ensure view settings are saved/restored in measure tool
...
Fixes: lp:1754100
* https://bugs.launchpad.net/kicad/+bug/1754100
2018-03-07 18:56:59 -05:00
Clemens Koller
f7ef010fe1
GerbView: Minor cleanup of Menus + Toolbar for consistency.
...
replace: File -> File(s) when wxFD_MULTIPLE
replace: Load -> Open
replace: Erase -> Clear
add Excellon / Gerber where it makes sense
re-sort File menu
2018-03-05 18:33:21 -05:00
jean-pierre charras
5a33f09608
Fix memory leak
2018-03-05 20:18:55 +01:00
Jon Evans
cd2224b94d
Add missing hotkey support to GerbView
...
Fixes: lp:1752982
* https://bugs.launchpad.net/kicad/+bug/1752982
2018-03-04 16:59:23 -05:00
Jon Evans
d2c86f8594
GerbView: Disable legacy-only event handlers when GAL is active
...
Fixes: lp:1752209
* https://bugs.launchpad.net/kicad/+bug/1752209
2018-03-04 16:21:24 -05:00
Jon Evans
2da7199a37
GerbView: Fix active layer synchronization
2018-03-03 23:43:16 -05:00
jean-pierre charras
2c85de3ab2
gerbview layer manager: fix a minor issue, and and icons in context menu, similar to pcbnew layer manager context menu
2018-02-28 10:21:37 +01:00
Jon Evans
2c54f6fe32
GerbView: Fix DCode reordering; ensure loaded layers are visible
2018-02-28 08:23:41 +01:00
Jon Evans
de483ac1aa
GerbView: only erase current layer if a new file is chosen
2018-02-28 08:23:40 +01:00
Jon Evans
490a2105c3
Properly update view when GerbView display settings changed
2018-02-28 08:23:39 +01:00
Jon Evans
cd14525839
GerbView: More accurate selection of arc shapes
2018-02-28 08:23:39 +01:00
Jon Evans
e2408989a4
GerbView: redraw negative items when visibility changes
2018-02-27 20:59:08 +01:00
Jon Evans
37beb726e3
GerbView: Implement in-place GAL layer reordering (for X2 sorting)
2018-02-27 20:59:07 +01:00
jean-pierre charras
eb94d2fcd0
Gerbview: fix an issue when loading files: Layer filenames order in right tab view modified each time a new file is loaded.
...
It creates strange issues (inconsistent layer filenames order, inconsistent items colors) especially with non X2 files.
2018-02-27 19:58:07 +01:00
Jon Evans
80035661dc
Use proper path when loading files from Gerber job file
2018-02-26 14:26:58 -05:00
Jon Evans
5292829e05
Fix edge case GERBER_FILE_IMAGE creation logic
2018-02-26 14:26:47 -05:00
Jon Evans
b03ac1f614
Only update item color when highlighting items in GerbView
2018-02-26 13:48:16 -05:00
Jon Evans
449da4303e
Remove more unnecessary calls to RecacheAllItems
2018-02-26 13:47:55 -05:00
Jon Evans
319b7cfc67
Remove extra call to SetTopLayer() when switching active layer
2018-02-25 19:19:45 -05:00
Jon Evans
4ec7a02ccd
Add a method to conditionally update VIEW_ITEMs (GerbView performance)
2018-02-25 18:20:44 -05:00
Jon Evans
d7bb83ddcb
Add a REPAINT flag for faster redraw when bounding box hasn't changed
2018-02-25 18:20:34 -05:00
Jon Evans
be8bb24390
Make all new hotkeys editable; label some GAL-only hotkeys
...
Fixes: lp:1751183
* https://bugs.launchpad.net/kicad/+bug/1751183
2018-02-25 17:57:36 -05:00
Jon Evans
b90528a7ae
Fix regression in GerbView display settings; some optimization too
2018-02-25 17:35:26 -05:00
Jon Evans
9a3ea1d53c
Rename "Render" to "Items" and a few other wording changes
2018-02-23 06:57:27 -05:00
Jon Evans
1ed7d5f816
Clear out old layer data when loading on top of an existing image
...
Fixes: lp:1747443
* https://bugs.launchpad.net/kicad/+bug/1747443
2018-02-23 11:59:40 +01:00
Jon Evans
f7d0c3997d
Don't recache items unnecessarily when toggling D-code display
2018-02-22 08:52:43 +01:00
Jon Evans
0c9d11c180
Add progress reporting for GerbView file loading
2018-02-21 13:17:02 -05:00
Jeff Young
4d5e1489fb
New menu structure for ModEdit.
...
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.
2018-02-20 10:49:41 -05:00
Jeff Young
7e0ff6fe8d
Fix current directory issue loading Gerbers.
...
Fixes: lp:1750361
* https://bugs.launchpad.net/kicad/+bug/1750361
2018-02-19 15:09:54 -05:00
Maciej Suminski
bfa0b98b14
Corrected hotkey description to reflect new canvas naming
2018-02-15 09:30:10 +01:00
Jeff Young
4bae901dc8
Centralize zoom-to-fit code.
...
Fixes a bunch of errors:
- libedit and libbrowser would zoom to bounding box but centre on canvas
- libedit, libbrowser and gerbview didn’t take the scroll bars into account
- pcbnew didn’t take scroll bars into account or apply the 10% margin
- appending a board file would re-centre, but not re-zoom
Fixes: lp:1504302
* https://bugs.launchpad.net/kicad/+bug/1504302
2018-02-13 20:06:03 -05:00
Jeff Young
1afbfad44a
Use "..." uniformly in menus.
...
See the bug report for some wording changes and a couple of
menu restructurings that were also cleaned up.
Fixes: lp:1597827
* https://bugs.launchpad.net/kicad/+bug/1597827
2018-02-10 17:32:28 -05:00
Jon Evans
a35cc44bd1
Change mechanism for updating gerbview toolbar widths
2018-02-06 17:44:15 +01:00
Jon Evans
1f487593fa
Respect item polarity when redrawing cached gerber view items
...
Fixes: lp:1746825
* https://bugs.launchpad.net/kicad/+bug/1746825
2018-02-05 07:55:15 +01:00
jean-pierre charras
821668d96c
rename class_collector.h to collector.h
2018-02-04 10:49:37 +01:00
jean-pierre charras
39b4afecfa
fix code after file renaming
2018-01-31 09:24:02 +01:00
jean-pierre charras
5d72aebd22
Fix code after renaming files
2018-01-29 16:40:22 +01:00
jean-pierre charras
a0ac1a48c2
Gerbview: fix code after renaming files
2018-01-29 13:26:58 +01:00
jean-pierre charras
6255239b52
Gerbview: rename files class_xxx to xxx according to the class names of classes defined inside the files
2018-01-29 11:51:47 +01:00
jean-pierre charras
d0754acf00
Fix code after renaming files
2018-01-29 11:37:29 +01:00
Jon Evans
14abe8723d
Rework GERBVIEW_FRAME::ReCreateAuxiliaryToolbar to fix layout issues
...
Fixes: lp:1745203
* https://bugs.launchpad.net/kicad/+bug/1745203
2018-01-29 07:52:42 +01:00
jean-pierre charras
4c5bd01887
Rename a few files
2018-01-28 22:02:31 +01:00
Jeff Young
899afa1e90
Reinstate OSX cursor shape selection
...
Mark it as not supported in Legacy graphics.
Fixes: lp:1745097
* https://bugs.launchpad.net/kicad/+bug/1745097
2018-01-28 10:47:20 -05:00
Martin Sivak
d5cdd78062
eeschema: keystroke zoom should obey disabled centering
...
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>
2018-01-27 20:20:32 -05:00
jean-pierre charras
61193dcd13
Fix assertion failure quitting gerbview
...
Fixes: lp:1744600
https://bugs.launchpad.net/kicad/+bug/1744600
2018-01-22 21:16:10 +01:00
Maciej Suminski
da305e7750
Move SwitchCanvas() implementation to EDA_DRAW_FRAME
...
Share more code between pcbnew and gerbview. Fix warnings regarding
shadowing EDA_DRAW_FRAME::SwitchCanvas().
2018-01-22 09:06:55 +01:00
Maciej Suminski
b3cb6be48e
Minor memleak fixed in gerbview
2018-01-22 09:04:24 +01:00
Jon Evans
5ea277d229
Reset tools when clearing gerber draw layers
...
Fixes: lp:1744600
* https://bugs.launchpad.net/kicad/+bug/1744600
2018-01-22 08:44:55 +01:00
Jon Evans
b21f301097
Defer canvas type setting save until destruction of EDA_DRAW_FRAME
...
Fixes: lp:1741787
* https://bugs.launchpad.net/kicad/+bug/1741787
2018-01-18 10:17:06 +01:00
Jeff Young
947a4839fd
Use generic Save (and New and Open) commands where unambiguous.
...
Fixes: lp:1743426
* https://bugs.launchpad.net/kicad/+bug/1743426
2018-01-16 08:39:12 -05:00
Oliver
195b85b0c5
Cleanup of KiCad Icons
...
Major cleanup of many icons (started as a simple effort to tweak libedit and modedit icons)
Ref: https://lists.launchpad.net/kicad-developers/msg32860.html
* Each application icon has been updated
* Consolidated icon "modifiers" across many icons
* Replaced confusing arrows with "load" and "save" icons
* Slight code updates to reference correct icons
* Consolidate multiple representations of single icon type(s)
2018-01-12 14:06:45 -05:00
Chris Pavlina
7e6a6540c8
Implement primitive icon scaling for high DPI
...
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.
2018-01-10 21:26:06 -07:00
Camille
3168d03fe5
Fix unnecessary copy initialization detected by clang-tidy
2018-01-09 18:22:10 -05:00
jean-pierre charras
b98f6a2fd1
Minor fixes in strings and I18N fix.
2018-01-06 10:57:46 +01:00
Mark Roszko
b98cc0b937
Some coverity fixes
2018-01-05 22:51:03 -07:00
jean-pierre charras
33cbbc95d9
* Gerbview: update a old code in a dialog.
...
Fixes: lp:1741410
https://bugs.launchpad.net/kicad/+bug/1741410
2018-01-05 11:45:50 +01:00
Jon Evans
2dec95b4e6
Add a first-run dialog to encourage user to switch to OpenGL
2018-01-04 10:14:40 -05:00
Wayne Stambaugh
5102c8ac1f
Gerbview and Pcbnew dialog tweaks.
...
Improve dialog layout and fix UI policy issues with all of the dialog
boxes in the Gerbview and Pcbnew code paths.
Updated the use of component to footprint where appropriate.
2017-12-27 12:09:56 -05:00
Tomasz Włostowski
a4528988ca
pcbnew: fix graphical polygon movement, rotation, flipping and edit points synchronization.
...
Fixes: lp:1738449
* https://bugs.launchpad.net/kicad/+bug/1738449
Fixes: lp:1738032
* https://bugs.launchpad.net/kicad/+bug/1738032
2017-12-18 18:25:45 +01:00
Simon Richter
a9ccf1161b
Fix quotes in UI messages
...
This replaces all single and angle bracket quotes in UI messages with
double quotes, for consistency.
Sorry to all translators.
2017-12-15 07:33:07 -05:00
Jon Evans
1955f25226
Remove outdated check on endAngle to fix arc draw direction
...
Fixes: lp:1737420
* https://bugs.launchpad.net/kicad/+bug/1737420
2017-12-10 11:45:33 -07:00
jean-pierre charras
c0a539959e
Fix a few Coverity warnings
2017-12-04 12:46:11 +01:00
Jon Evans
0564d3456b
Preserve color scheme when switching to legacy (Fixes lp:1670669)
...
Instead of modifying the colors when switching to legacy canvas,
they will now be preserved and only returned as the "legacy" colors.
2017-11-28 10:47:04 +01:00
Jon Evans
e5847b7953
Gerbview: apply layer colors to GAL after sorting (Fixes lp:1720540)
2017-11-27 08:23:17 +01:00
jean-pierre charras
f7c0562c8b
Gerbview: refinements in D_Code display.
...
Remove duplicate code between legacy and Gal canvas to calculate D_Code id draw parameters.
2017-11-13 11:30:23 +01:00
jean-pierre charras
e14a1656db
Add comments. Gerbview: in legacy mode, do not display D_Code id text when it is too small to be readable.
2017-11-13 09:11:54 +01:00
Jon Evans
cabc92bd48
Fix aperture macro and arc bounding boxes (Fixes lp:1730249)
2017-11-13 08:17:43 +01:00
Jon Evans
a1acf705e8
Fix aperture macro hit testing (partial fix of lp:1730249)
...
Also update various things in class_aperture_macro.cpp to take a const
parent argument so that it is callable from within GERBER_DRAW_ITEM
2017-11-12 10:22:18 +01:00
Wayne Stambaugh
652b969193
GTK+ file dialog wildcard improvements.
...
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
2017-11-11 19:32:26 -05:00
Marvin Schmidt
69974b73db
Remove some extra semicolons
2017-11-09 19:52:18 +01:00
Marvin Schmidt
2b78183bb4
Fix a typo
2017-11-09 19:52:17 +01:00
Tomasz Włostowski
1959af1ad1
refactoring: forgot to add VIEW/VIEW_CONTROLS initialization in gerber, causig a crash. Fixing.
2017-11-05 22:09:56 +01:00
Tomasz Włostowski
9932ff32ae
refactoring: wrapped boost::optional in OPT<> class for the purpose of easier transition to C++17 in the future
2017-11-03 23:59:02 +01:00
jean-pierre charras
c536364f05
Fix a few coverity warnings. very minor other changes.
2017-11-02 18:18:57 +01:00
Maciej Suminski
5eb56dd8b0
Coverity fixes
...
CIDs:
102571
168696
168701
168704
168706
168708
168710
168713
168716
168717
2017-11-01 10:24:26 +01:00
Maciej Suminski
3a8b4a2fb7
Fixed a memleak in GerbView
...
Changed m_painter PAINTER* to unique_ptr<PAINTER> to avoid confusion
regarding the objection destruction.
2017-10-30 09:36:34 +01:00
Baranovskiy Konstantin
a4440395be
Gerbview: fix zoom to selection tool duplication.
2017-10-30 09:05:35 +01:00
Jon Evans
b18cd4cb19
Fix arc drawing algorithm in GerbView GAL (Fixes lp:1720384)
2017-10-26 08:18:09 +02:00
jean-pierre charras
cffe1b51e2
Gerbview: avoid a crash with malformed Gerber files.
...
Fix also incorrect handling of %LN (Load Name) deprecated command
2017-10-24 18:09:33 +02:00
jean-pierre charras
eb2340bc23
Show/Hide icons in menus (according to Icons option) in GAL, like in Legacy mode.
...
Cosmetic enhancement in Gerbview context menu.
2017-10-23 18:48:03 +02:00
jean-pierre charras
3407c6cf27
Gerbview: add icons in a context menu.
...
gal: remove a forgotten debug line.
2017-10-23 16:53:42 +02:00
jean-pierre charras
cdb577bbbc
Gerbview: fix an issue in legacy mode (locate items was not working)
2017-10-23 11:32:05 +02:00
jean-pierre charras
9bd5522419
Add a gerber test file
...
remove a few minor coverity warnings
2017-10-23 09:20:10 +02:00
jean-pierre charras
9b4eddb744
Update gerber job file to latest format
2017-10-20 13:55:42 +02:00
jean-pierre charras
4905bbe500
hotkey management: enhancements in code to know if a hotkey was handled by an event or not.
...
No actual change in key management: in legacy it was partially existing, and not yet used in GAL mode.
2017-10-06 09:23:13 +02:00
jean-pierre charras
4b010ca129
Fix useless trailing and leading spaces in a few messages. Fix also capitalization in a few menus.
2017-10-02 09:25:48 +02:00
jean-pierre charras
d00fc993f3
Fix job file extension.
2017-09-30 09:18:47 +02:00
jean-pierre charras
5731acc97c
Fix typo and and comment
2017-09-29 07:58:15 +02:00
Seth Hillbrand
5b2248fad8
gerbview: Corrects handling of %FSD statement
2017-09-29 07:40:58 +02:00
jean-pierre charras
517921e2e1
update doc and remove a outdated file
...
Update or fix a few strings in menus and tool tips
2017-09-28 18:56:36 +02:00
Maciej Suminski
068a29952c
Changed AUI toolbars background from gradient to solid
...
Based on patches from Windsor Schmidt <windsor.schmidt@gmail.com>
2017-09-27 23:23:06 +02:00
Jon Evans
4341c0eb2b
Change LOD cutoff for D-Codes
2017-09-26 10:58:03 +02:00
Jon Evans
e5df4304a6
Minor tweaks to GerbView for performance
2017-09-25 13:39:38 +02:00
Jon Evans
256f52f27e
Use VIEW_GROUP for candidate highlighting; enable in PcbNew also
2017-09-25 13:39:37 +02:00
Maciej Suminski
05a120f09f
Unified {Load,Save]CanvasTypeSetting in EDA_DRAW_FRAME
2017-09-25 13:39:32 +02:00
Maciej Suminski
88cab885af
Code formatting
2017-09-25 13:35:02 +02:00
Jon Evans
d87c9f7ed7
Highlight selection candidates instead of using BRIGHT_BOX
2017-09-25 13:35:01 +02:00
Jon Evans
b90d86aa2d
Properly update toolbar buttons on application start
2017-09-25 13:35:01 +02:00
Jon Evans
cc5c5010f0
Fix some layer visibility behavior
2017-09-25 13:35:01 +02:00
Jon Evans
050489d719
GerbView GAL support part 2: New files for GAL
...
- New draw panel
- New painter
- GerbView-specific tools
2017-09-25 13:35:01 +02:00
Jon Evans
915e51e1f0
GerbView GAL support part 1: changes to existing files
...
- New GAL draw layers for GerbView
- Improved bounding boxes for Gerber shapes
- Switched to use of SHAPE_POLY_SET for polygons
- Add GAL methods to support selection and rendering
- Add GUI support of editing GAL options
- Rename get/setActiveLayer to Get/SetActiveLayer to match convention
2017-09-25 13:35:01 +02:00
Seppe Stas
e46fdb0115
Implement OnLayerRightClick for Gerber layer widget
2017-09-22 17:41:42 +02:00
jean-pierre charras
e15acbb00d
Fp editor and board editor have now a separate color setup.
...
fp viewer uses the default colors, because it has no color setup dialog.
class_colors_design_settings: remove not used members.
Fix issue in modedit: the color config was never read.
2017-09-11 18:51:48 +02:00