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