John Beard
4f0166e064
Add some hotkey store tests
...
This also adds some mocks to the libcommon test executable, which
hopefully will allow it to work with more of libcommon.
2018-09-28 08:27:57 -04:00
John Beard
1f2c8fa698
Separate storage at iteration of hotkeys from the HK list widget
...
This separates the "ground truth" store of hotkeys from what is shown
in the dialog. This will allow us to filter the displayed hotkeys
while keeping the same underlying data structures.
Now, the UI data items interact with an intermediate set of data, which
represents the "original" hotkey data, and the "changed" data. The
ultimate aim here is to allow UI elements to come and go, but the
hotkeys that are "in-edit" are preserved.
This also allows us to abstract some bookkeeping complexity
out of the WIDGET_HOTKEY_LIST class into a separate non-GUI
class.
2018-09-28 08:27:51 -04:00
Jeff Young
3927dc5820
More fixes for event handling in net selector.
2018-09-28 00:23:22 +01:00
Jeff Young
453dadbc3c
Use EventFilter strategy on GTK; leave FocusLost for MSW & OSX.
2018-09-27 20:42:59 +01:00
Jeff Young
136525b870
Decrease list-item padding for GTK.
2018-09-27 18:58:32 +01:00
Jeff Young
5703060d87
Turn off escaping names for now.
...
Fixes: lp:1794816
* https://bugs.launchpad.net/kicad/+bug/1794816
2018-09-27 17:21:49 +01:00
Jeff Young
50b96b406f
More net selector fixes.
2018-09-27 16:58:12 +01:00
Jeff Young
3ae049c729
Address some MSW issues in net selector.
2018-09-27 14:44:42 +01:00
Jeff Young
f10635e8be
More work on arbitrary characters in references, etc.
2018-09-27 14:44:42 +01:00
jean-pierre charras
4a553b6423
NET_SELECTOR fix: remove SetHint() because it does not work on Windows, that prevents filtering.
...
Replaced by a wxStaticText
Minor cosmetic fixes (on Windows)
2018-09-27 13:19:09 +02:00
Jeff Young
521183a587
Work in progress to allow arbitrary chars in references, etc.
2018-09-27 11:56:51 +01:00
Jeff Young
eaf3d48260
Simplification of the net selector code to fix GTK issues.
2018-09-27 11:52:58 +01:00
Jeff Young
d1e64919a7
Fix for GTK net selector popup border.
2018-09-26 22:50:27 +01:00
Jeff Young
f7ffbb17bb
Another try at the net selector popup.
2018-09-26 21:57:35 +01:00
John Beard
04a1084549
QA: Place UTF8 tests under Boost unit tests
...
This transfers the old #if'd-out tests in utf8.cpp into a
proper Boost unit test in /qa (run on `make test`).
2018-09-26 09:32:26 -04:00
Jeff Young
86b654e493
Hook up 3D viewer to common preferences.
...
Also removes nanny limits on text sizes.
Fixes: lp:1794093
* https://bugs.launchpad.net/kicad/+bug/1794093
Fixes: lp:1794345
* https://bugs.launchpad.net/kicad/+bug/1794345
2018-09-25 20:47:03 +01:00
Jeff Young
3cc6e0cf02
Fixes to NET_SELECTOR event loop for non-OSX platforms.
...
Don't assume events are always Pending(). Other platforms handle
idle events differently.
2018-09-25 17:56:38 +01:00
Jeff Young
37f7faf433
Move lock checks to CLIENT_SELECTION_FILTER.
...
Also checks render item visibility as well as layer visibility
when making selections.
Fixes: lp:1066220
* https://bugs.launchpad.net/kicad/+bug/1066220
Fixes: lp:1541756
* https://bugs.launchpad.net/kicad/+bug/1541756
2018-09-25 17:56:38 +01:00
Jeff Young
66848b9334
Show pads when parent footprint is selected.
...
Fixes: lp:1670090
* https://bugs.launchpad.net/kicad/+bug/1670090
2018-09-23 23:51:13 +01:00
Seth Hillbrand
ae13e441af
pcbnew: Yield in GTK for redraw
...
GTK uses a level of cooperative multitasking when dealing with
secondary event loops. This gives the wm enough leeway to process the
redraw before returning to the secondary loop
2018-09-22 19:38:42 -07:00
Jeff Young
cbce4d7663
Work around a stupid assert in GTK wxGUIEventLoop::Dispatch()
2018-09-22 19:38:42 -07:00
Jeff Young
0309228276
Don't allow drawing to a zero-height or zero-width GAL canvas.
...
Fixes: lp:1793913
* https://bugs.launchpad.net/kicad/+bug/1793913
2018-09-22 22:06:40 +01:00
Jeff Young
458af25282
Turn problematic code off for now....
2018-09-22 17:54:59 +01:00
Jeff Young
4edf18b023
Attempt to fix Linux build issue.
2018-09-22 17:41:52 +01: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
Seth Hillbrand
f8784f30a8
Removing OpenMP
...
This commit finishes the removal of OpenMP from the KiCad codebase.
Removed in this commit are the OpenMP calls in 3d-viewer and
qa/polygon_triangulation as well as all references in CMakeLists.txt
std::thread is used instead for multithreaded computation
2018-09-21 12:44:20 -07:00
Fabio Rossi
21485e6f24
kicad_curl should be built only with BUILD_GITHUB_PLUGIN enabled
2018-09-21 12:44:20 -07:00
Jeff Young
42ab116bc2
Rewrite the NET_SELECTOR combobox in the hopes of better platform support.
2018-09-21 20:40:04 +01:00
Simon Richter
e985f797c3
Return reference to current object from operator=
2018-09-21 05:03:30 -07:00
Seth Hillbrand
8c3a82e526
Code cleanup: Fixing assignment operators
2018-09-20 20:15:47 -07:00
Maciej Suminski
cd5b1c2885
set_wxMenuIcon: prevent null pointer dereference
2018-09-19 14:07:50 +02:00
Jeff Young
e485cee384
Honour ModEdit layer colors in browser and previews.
...
Fixes: lp:1793141
* https://bugs.launchpad.net/kicad/+bug/1793141
2018-09-18 19:14:35 +01:00
Seth Hillbrand
9e33d38cd5
unit_binder: allow updates without triggers
...
Adds a helper function to allow unit binder calls that change a value
but shouldn't trigger wxevents
2018-09-17 15:55:22 -07:00
Wayne Stambaugh
aacb3f9075
Update translators list to include simplified Chinese translator.
2018-09-17 10:12:03 -04:00
Jeff Young
e45afdb912
Revert absolute-path asserts and fix off-by-one bug.
...
Fixes: lp:1767582
* https://bugs.launchpad.net/kicad/+bug/1767582
2018-09-15 22:36:09 +01:00
Jeff Young
02a3f83040
Implement poor-man's RTTI for use over KiWAY.
...
Fixes: lp:1777883
* https://bugs.launchpad.net/kicad/+bug/1777883
2018-09-15 20:06:42 +01:00
Jeff Young
872e1e6532
Remove asserts for absolute paths.
...
You can, for instance, specify relative paths via the command
line.
Fixes: lp:1767582
* https://bugs.launchpad.net/kicad/+bug/1767582
2018-09-15 20:06:42 +01:00
Wayne Stambaugh
af2dcd61bb
Fix build error against head of wxWidgets master branch.
...
The wxTreeCtrl header file wx/treectrl.h needs to be included in
common/widgets/paged_dialog.cpp.
2018-09-14 10:49:54 -04:00
jean-pierre charras
271fb7fed4
Make the color picker dialog translatable
...
Fixes: lp:1792556
https://bugs.launchpad.net/kicad/+bug/1792556
2018-09-14 13:34:53 +02:00
Maciej Suminski
b39bde0f0c
Specify string size when creating wxString from const char*
...
wxString constructor will determine string length using strlen() when it
is not explicitly specified, but there is no termination byte added when
reading file contents to 'buffer' variable.
2018-09-14 10:13:45 +02:00
Seth Hillbrand
3ebba6cbe1
pcbnew: Limit zone simplification
...
Commit 73c229714
was a bit of a sledgehammer for the associated problem
of degenerate points. This commit replaces that one by only performing
additional simplification of the zone polygons on those polygons that
fail our initial triangulation attempt.
2018-09-12 15:28:13 -07:00
Jeff Young
23726116ee
Revert code that got accidentally committed.
...
(This didn't fix the problem anyway; I had to fix it in our OSX
wxWidgets branch.)
Fixes: lp:1792196
* https://bugs.launchpad.net/kicad/+bug/1792196
2018-09-12 19:34:55 +01:00
Jeff Young
9b50b94069
Move OnUpdateUI event to dialog.
...
Fixes: lp:1792096
* https://bugs.launchpad.net/kicad/+bug/1792096
2018-09-12 14:01:36 +01:00
Jeff Young
806b1fc63d
Fix bugs to enable read-only grid cells to be copied.
...
Fixes: lp:1791129
* https://bugs.launchpad.net/kicad/+bug/1791129
2018-09-12 14:01:36 +01:00
Jeff Young
cbb3492d98
Standardize Footprint Viewer and Footprint Browser.
...
Add Display Settings to Footprint Browser.
Make each of them OpenGL on OSX and Cairo on other platforms.
Allow auto-zoom to be turned off and save last zoom setting.
Make ordering of tools in htoolbar consistent.
Standardize grid and zoom drop-downs.
Fixes: lp:1791667
* https://bugs.launchpad.net/kicad/+bug/1791667
2018-09-12 14:01:35 +01:00
Maciej Suminski
f5de8cd3e1
Fix a possible out-of-bounds access in WX_GRID::SetTable()
2018-09-12 10:53:16 +02:00
Alexey Chernov
3ad1cd8d57
Adding OpenSSL include directory explicitly
...
Fixes: lp:1791164
* https://bugs.launchpad.net/kicad/+bug/1791164
2018-09-10 07:14:37 -07:00
Seth Hillbrand
4eece522df
kicad: keep KIDIALOG boxes above other windows
...
Until answered, dialog boxes should remain at the front. This flag only
works for MSW and GTK.
2018-09-08 21:24:29 -07:00
Seth Hillbrand
ec33381064
pcbnew: Keep Yes/No dialogs above the windows
...
Modal yes/no questions should not be allowed to fall behind other
windows. They need to be answered before the program continues and
clicking outside of the dialog should not hide dialog itself.
Fixes: lp:1790640
* https://bugs.launchpad.net/kicad/+bug/1790640
2018-09-08 21:09:57 -07:00
qu1ck
c68ad411ff
pcbnew: add 3d models properties to swig
...
Fixes: lp:1758858
https://bugs.launchpad.net/kicad/+bug/1758858
2018-09-08 10:28:55 -04:00
jean-pierre charras
80b25aa601
Fix incorrect calculations in WORKSHEET_DATAITEM::GetMarkerSizeUi()
...
It creates a lot of integer overflow in Pcbnew in Debug mode (Legacy mode), although it ha meaning onlt for the Page Layout Editor.
This function should be deprecated when the GAL canvas is used in Page Layout Editor.
2018-09-06 11:48:53 +02:00
Seth Hillbrand
73c2297144
triangulation: Fracture/Simplify all polygons
...
Calls the simplify/fracture polygon code on any polygon prior to
tesselation. This avoids issues with degenerate polygons where the
degenerate points are not sequential.
Fixes: lp:1790534
* https://bugs.launchpad.net/kicad/+bug/1790534
2018-09-05 15:11:13 -07:00
Thomas Pointhuber
c170e8930b
Fix focus bug and possible race-condition for path deletion dialog
...
Fixes: lp:1788873
* https://bugs.launchpad.net/kicad/+bug/1788873
2018-09-04 08:52:51 +02:00
Seth Hillbrand
a6325aab29
Replacing Tesselation
...
Replaces Poly2Tri with updated code to process polygons faster and more
robustly. Notably, we can now handle overlapping holes in the polygons,
allowing us to cache the triangulation of complex boards
2018-09-01 19:30:50 -07:00
jean-pierre charras
23ec0cda31
Fix use of a deprecated wxGrid function.
2018-08-30 09:07:33 +02:00
Jeff Young
c90a3efea2
Change KIDIALOG hashing algorithm to __FILE__ + __LINE__.
...
Using Title + Message wasn't working for all the dialogs which
did substitutions in the message (which was a lot of them).
Fixes: lp:1789348
* https://bugs.launchpad.net/kicad/+bug/1789348
2018-08-29 23:38:23 +01:00
Jeff Young
f470132862
Fix fast grid switching for OSX and Footprint Editor.
...
Fixes: lp:1787066
* https://bugs.launchpad.net/kicad/+bug/1787066
2018-08-29 20:08:01 +01:00
Jeff Young
21eea1f567
Remove HasFocus() checks (which don't work on all platforms) in favour of row highlighting which is visible without focus.
...
Fixes: lp:1788873
* https://bugs.launchpad.net/kicad/+bug/1788873
2018-08-29 20:08:01 +01:00
Jeff Young
895fc0b536
Add a cell editor for paths and use it in Configure Paths.
2018-08-29 20:08:01 +01:00
Jeff Young
f9412f0fd4
Implement double-click for other filetypes in project tree.
...
Fixes: lp:1787207
* https://bugs.launchpad.net/kicad/+bug/1787207
2018-08-29 19:59:02 +01:00
Jeff Young
45bc1b1aff
Add single-click editing to grid cells. (Experimental.)
2018-08-29 19:59:02 +01:00
Jeff Young
b90a261d5c
More safety fixes for uncommitted grid changes.
2018-08-29 19:59:01 +01:00
Seth Hillbrand
dc4125206b
GAL: Add a selected item layer
...
The selected items should be displayed above the rest of the items but
below informational overlays.
Fixes: lp:1789505
* https://bugs.launchpad.net/kicad/+bug/1789505
2018-08-28 15:00:05 -07:00
Wayne Stambaugh
089f27f485
Remove more dialog control borders.
2018-08-27 15:11:27 -04:00
Jeff Young
a860a8db54
Enable user layers in footprint editor.
...
Fixes: lp:1746279
* https://bugs.launchpad.net/kicad/+bug/1746279
2018-08-27 18:38:56 +01:00
jean-pierre charras
a330eb1575
Add Chinese traditional in language list.
2018-08-27 18:30:49 +02:00
Seth Hillbrand
cc26da394a
Code formatting and fix ordering warning
2018-08-27 08:38:58 -07:00
Oliver
e95b2872f6
Add x/y dimensions to PCB ruler
...
- Display dx and dy in addition to euclidian distance and angle
2018-08-27 09:29:30 -04:00
qu1ck
72f87861bb
pcbnew: Add toolbar buttons for action plugins
...
Allows optional toolbar buttons for action plugins.
2018-08-26 19:39:27 -07:00
Tomasz Wlostowski
2186db976b
VIEW: added support for VIEW_OVERLAYS (temporary overlays for drawing debug graphics)
...
x
2018-08-24 14:42:49 +02:00
Jeff Young
d10bfb13d6
Re-enable text layers now that DRC & zone fills are fixed.
...
Fixes: lp:1788268
* https://bugs.launchpad.net/kicad/+bug/1788268
2018-08-24 10:56:13 +01:00
Jeff Young
ec9d38e21f
Add filter to net selector widget.
...
Also fixes a bug where nets wouldn't get changed because the
pads weren't changed and so the pad nets would propagate and
wipe out the changed nets on the tracks.
Also includes warning dialogs that pad nets will be changed if the
track nets are.
Fixes: lp:1779854
* https://bugs.launchpad.net/kicad/+bug/1779854
2018-08-24 10:56:13 +01:00
Jeff Young
8957008c2a
Adjust grid cols for large fonts and/or long translations.
...
Fixes: lp:1788495
* https://bugs.launchpad.net/kicad/+bug/1788495
2018-08-24 10:56:13 +01:00
Jeff Young
30bb911154
Bring PICKER_TOOL in line with other tools.
...
Use standard Magnetize() to handle grid and magnetic pads.
Use the standard menu from PCB_TOOL. Delegating the menu to
the SELECTION_TOOL just caused grief.
Also brings clients (such as Position Relative To) into line,
and implements better Cancel behaviour.
Also improves visibility of modal status messages:
- moves Select Anchor message from status bar to popup
- moves Select Reference message from dialog to popup
Fixes: lp:1786727
* https://bugs.launchpad.net/kicad/+bug/1786727
2018-08-23 00:58:01 +01:00
Andrew Zonenberg
60a55d75fa
Split prohibited text layers for footprints and the rest of the PCB
...
Fixes: lp:1788268
* https://bugs.launchpad.net/kicad/+bug/1788268
2018-08-21 16:34:53 -07:00
Jeff Young
bc2481a9be
Don't leak file descriptors.
2018-08-21 19:44:42 +01:00
jean-pierre charras
0305d9143d
key event in draw_panel.cpp: fix incorrect behavior for the escape key (the key was handled but the evnent was skipped).
...
This create an incorrect behavior because the event key was resend because
the primary event was seen as not handled by the drawpanel.
2018-08-21 20:05:09 +02:00
Jeff Young
dbd3900e28
Add comments and show recently used even when empty.
2018-08-21 11:20:17 +01:00
Jeff Young
2e5d8061aa
Run CommonSettingsChanged after all panels have been committed.
...
Fixes: lp:1787377
* https://bugs.launchpad.net/kicad/+bug/1787377
2018-08-21 10:34:41 +01:00
Jeff Young
779398891d
Follow HIG guidelines for destructive button separation.
2018-08-21 10:34:41 +01:00
Jeff Young
65f62f93ef
Fix MSW spacing issues.
2018-08-21 10:34:41 +01:00
Jeff Young
a6d10d6e28
Constant-size page layout object handles w/respect to zoom.
...
Fixes: lp:1787491
* https://bugs.launchpad.net/kicad/+bug/1787491
2018-08-21 10:34:41 +01: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
José Jorge Enríquez
8d625854b8
Allows custom number of entries in recently opened files menu.
...
NEW: Adds a configuration option to set number of entries in the "Open Recent" menu.
Fixes: lp:1745729
* https://bugs.launchpad.net/kicad/+bug/1745729
2018-08-21 10:34:41 +01:00
Jeff Young
e47351d1a6
Highlight only leaf nodes when filtering lib tree.
...
Fixes: lp:1787709
* https://bugs.launchpad.net/kicad/+bug/1787709
2018-08-19 17:59:32 +01:00
Jeff Young
53cd923305
Minor fix to tooltip and comment.
2018-08-19 17:02:47 +01:00
Jeff Young
c5781105ee
Fix layout and grouping issues in color picker.
2018-08-19 16:10:41 +01:00
jean-pierre charras
6fdc5972f8
Better fix for accelerator menus using "Back" (previously named "BkSp") key
...
Use the wxWidgets official accelerator key string for WXK_BACK (this is "Back") in menuitems instead of "BkSp"
Also when reading the hotkey config file, avoid to set a hotkey to unassigned when its name is not found in list.
The default value is used.
Unassigned hotkey use <unassigned> as key name (and 0 as key code) in file.
2018-08-16 15:56:13 +02:00
Tomasz Wlostowski
aab40ee9e8
OPENGL_GAL: don't use glCopyBuffer() on faulty Intel GL drivers
...
Fixes: lp:1787221
* https://bugs.launchpad.net/kicad/+bug/1787221
2018-08-16 14:34:36 +02:00
Jeff Young
8db361882b
Fix compile error on Linux.
2018-08-14 14:57:42 +01:00
Jeff Young
122d7ed3b3
Improve document file handling.
...
Fixes: lp:1779512
* https://bugs.launchpad.net/kicad/+bug/1779512
2018-08-14 13:54:04 +01:00
Jeff Young
d72fdaed29
Rewrite Library Symbol Properties dialog.
...
Fix the user-model issues around aliases and alias selection.
Fold Library Symbol Fields into Library Symbol Properties.
Update to the new look.
Fixes: lp:1744773
* https://bugs.launchpad.net/kicad/+bug/1744773
Fixes: lp:1766205
* https://bugs.launchpad.net/kicad/+bug/1766205
Fixes: lp:1786339
* https://bugs.launchpad.net/kicad/+bug/1786339
2018-08-14 13:54:04 +01:00
Jeff Young
01882d3103
Add more/better error messages for file i/o problems.
2018-08-14 13:54:04 +01:00
Jeff Young
4b1a31ffad
Regularize save-changes dialogs.
2018-08-12 00:02:37 +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
68bd1abf78
Fix nullptr access on 2nd launch of eeschema.
2018-08-11 17:14:27 +01:00
Jeff Young
38464827fc
Fix some issues with zooming.
...
Don't process zoom both in Legacy code and Modern code; one of
them will decide the zoom has already changed and do odd things.
Make sure the view is updated after zooming, otherwise you have
to move the mouse over the canvas before seeing the new zoom.
2018-08-11 17:14:27 +01:00
jean-pierre charras
78ab5c3f07
Fix ASCII code used in accelerator menus for BkSp key (Linux only)
...
On Linux (GTK?) the accelerator key BkSp, when used in menus must be coded as "\t\b" and not "\tBkSp".
However, On Windows, it must be "\tBkSp".
Joys of multi-platform development.
2018-08-09 17:55:08 +02:00
jean-pierre charras
3eb3db02c3
Cvpcb, DISPLAY_FOOTPRINTS_FRAME: add measurement and zoom to selection tools.
2018-08-09 11:15:43 +02:00
Jeff Young
f6f1c1e944
Performance optimization for MSW directory time-stamping.
2018-08-08 20:07:26 +02:00
Jeff Young
80f713f366
Revert accidental commit.
2018-08-08 12:51:31 +01:00
Jeff Young
d63d0c40ef
Performance optimisation for MSW direcotry timestamping.
2018-08-07 20:16:25 +01:00
Jeff Young
7c04d8be1c
Double opening speed of PCBs with ground and/or power planes.
...
(Or any other boards with complicated zones.)
2018-08-07 17:01:44 +01:00
Seth Hillbrand
539ca5aa3b
Adjust RTree default floating point to use double
...
This reverts the previous work-around 7d62f14dd
for the RTree splitting
degeneracy that was placed prior to v5. It appears not to have worked
for all systems. In its place, we use doubles instead of floats to
calculate the bounding box when filling the RTree. This keeps maximum
volume items from overlapping with the system boundary in test cases.
2018-08-06 16:55:00 -07:00
Wayne Stambaugh
bbfce129bb
Fix windows build error.
2018-08-06 10:26:22 -04:00
Jeff Young
be1d6113d6
More performance enhancements.
...
Be more intelligent about sorting lib tree items. (Footprint
entries, for instance, come out of an already-sorted list.)
Don't recreate menus twice when laoding Footprint Editor.
More pervasive use of WX_FILENAME to avoid expensive calls to
wxFileName::SplitPath() and string concatenation.
For POSIX kernels do all the work on the file-system side so we
don't have to keep converting back and forth between encodings.
2018-08-06 13:49:27 +01:00
Jeff Young
0fbe702043
Layout adjustments to Choose Symbol and Choose Footprint.
2018-08-06 13:48:17 +01:00
Jeff Young
08bcec9ac0
Make sure symbols have a valid lib nickname...
...
... even if the library pointer isn't set.
Also fixes the "every symbol as a Unit A" issue.
Fixes: lp:1785438
* https://bugs.launchpad.net/kicad/+bug/1785438
2018-08-06 13:48:17 +01:00
Jeff Young
146ab1eb32
Small performance improvement loading stroke font.
2018-08-06 13:48:17 +01:00
Jeff Young
d52429fc3c
Read footprint info cache when fpinfo requested via kiway.
2018-08-06 13:48:17 +01:00
Jeff Young
c1cf7c32c3
Performance enhancement: don't process envvars in configs.
2018-08-06 13:48:17 +01:00
Jeff Young
0cd75b2556
Flip show/hide of controls so they're shown when doing layout.
...
Fixes: lp:1785113
* https://bugs.launchpad.net/kicad/+bug/1785113
2018-08-06 13:48:17 +01:00
jean-pierre charras
8cb94f09c3
Allows bigger image size in DIALOG_IMAGE_EDITOR
2018-08-04 19:10:20 +02:00
jean-pierre charras
0902bbabc5
Allows bigger max page size (120x120") in Eeschema, Gerbview and Page Layout Editor
...
Due to its small internal unit, pcbnew still have a max page size of 48x48"
Fixes: lp:1785155
https://bugs.launchpad.net/kicad/+bug/1785155
2018-08-04 17:19:48 +02:00
jean-pierre charras
c32fcd1403
Fix commit f3f814e622
that breaks the compilation on Windows.
...
Fiw also a minor compil warning
2018-08-04 17:18:15 +02:00
Jeff Young
fd3e57d67f
Layout adjustments and language-change-updating for modview.
2018-08-04 12:59:04 +01:00
Jeff Young
345f57ccb8
Fix bug in optimization of wxExpandEnvVars.
...
Fixes: lp:1785228
* https://bugs.launchpad.net/kicad/+bug/1785228
2018-08-04 11:29:24 +01:00
Jeff Young
33fc74a04d
Performance enhancements for Footprint Editor construction.
2018-08-04 10:29:17 +01:00
Jeff Young
f3f814e622
Performance enhancements for footprint info list.
...
Cache the footprint info on disk (in the project).
Move timestamp-generation (and checking) to the filesystem so the
above will be bullet-proof.
Rewrite some wxWidgets classes for performance (see common.h).
2018-08-04 10:29:17 +01:00
Jeff Young
5e8e2570ba
Fix thread-safety issue with some global wxStrings.
...
These cause intermittent crashes in footprint loading. See
comments in code.
2018-08-04 10:29:17 +01:00
qu1ck
72fcf46430
Extend swig definitions to contain SHAPE_LINE_CHAIN and VECTOR2I
2018-08-02 17:03:11 -04:00
Wayne Stambaugh
8e7d6063fd
Minor dialog and frame window improvements.
...
Drop all uses of wxRAISED_BORDER and wxSUNKEN_BORDER from dialogs and
panels used in main frame windows.
Drop use of wxSP_3DSASH options on all wxSplitterWindow definitions.
Minor dialog alignment and spacing fixes.
2018-08-02 13:00:41 -04:00
Jeff Young
d8d4f75fa1
Fix button order and genralize Exit dialog so it can be shared more.
...
This also fixes a bunch of bugs where an error during save would
still close the window (rather than cancelling the close action).
Fixes: lp:1785034
* https://bugs.launchpad.net/kicad/+bug/1785034
2018-08-02 11:01:03 +01:00
Jeff Young
3a39ea21a2
Library pointer can be null even when LibId is set.
2018-08-01 15:27:54 +01:00
Jeff Young
2155dd6591
Simplify ExitDialog and make platform-compliant.
...
Put the buttons in platform-compliant order.
Get rid of SaveMultiOptions in favour of repeated standard save
dialogs with a "Apply to all" checkbox.
Fixes: lp:1783444
* https://bugs.launchpad.net/kicad/+bug/1783444
2018-08-01 15:27:54 +01:00
Jeff Young
72338a7002
Remove more dead code.
2018-08-01 12:36:55 +01:00
Jeff Young
6dbfa793e8
Fix GTK compile errors and remove dead code.
...
Fixes: lp:1783993
* https://bugs.launchpad.net/kicad/+bug/1783993
2018-08-01 12:23:16 +01:00
Jeff Young
98849bde96
Generalize OSX &Cancel fix to work for other languages.
...
Fixes: lp:1784350
* https://bugs.launchpad.net/kicad/+bug/1784350
2018-08-01 10:56:45 +01:00
Jeff Young
4e3c84e733
Score leaf nodes in LIB_TREEs, not just symbols & footprints.
...
Fixes: lp:1783251
* https://bugs.launchpad.net/kicad/+bug/1783251
2018-08-01 09:35:46 +01:00
Jeff Young
f8a5e2c1c8
Performance enhancements in fp loading, string cmp, etc.
...
Knocks about 1/3 off the first footprint load, and more than 1/2
off subsequent loads.
2018-08-01 09:35:46 +01:00
Jeff Young
0a35c5c97e
Convert Footprint Editor to component tree.
...
Fixes: lp:1784178
* https://bugs.launchpad.net/kicad/+bug/1784178
Fixes: lp:1780363
* https://bugs.launchpad.net/kicad/+bug/1780363
2018-08-01 09:35:46 +01:00
Jeff Young
b400565880
Convert Place Footprint to component tree.
2018-08-01 09:35:45 +01:00
Jeff Young
97f7bd4cb9
Push component tree down into common.
...
Precondition to reusing component tree for footprints.
2018-08-01 09:35:45 +01:00
Mark van Doesburg
91e3d21d68
Eeschema: Copy attributes from eagle.
...
Eagle allows for variants of components to be listed in the schematic.
This patch copies the variant data into the imported schematic item,
prefixing the alternate variant names with "VARIANT_" and keeping the
alternate values.
2018-07-31 11:58:01 -07:00
jean-pierre charras
5a2e171f9e
fix a few wxWidgets asserts.
2018-07-31 13:16:58 +02:00
Seth Hillbrand
d8abfcf827
Revert "Extend swig definitions to contain SHAPE_LINE_CHAIN and VECTOR2I"
...
This reverts commit be0e44e2ae
.
Causes build failure with gcc 4.9.2
2018-07-30 10:19:05 -07:00
qu1ck
be0e44e2ae
Extend swig definitions to contain SHAPE_LINE_CHAIN and VECTOR2I
2018-07-30 08:45:26 -07:00
jean-pierre charras
3a02e54411
Opengl fix: bitmaps having a width not multiple of 4 were incorrectly drawn.
...
This fix draws a "sub bitmap" having a width multiple of 4.
(The loss of 1 to 3 pixels in horizontal size should be not really noticeable)
2018-07-30 16:19:35 +02:00
Tomasz Wlostowski
516cf47946
OPENGL_GAL: optimized JP's bitmap drawing function to use textures
2018-07-30 00:13:37 +02:00
jean-pierre charras
fefc7b8172
GAL canvases: add DrawBitmap(), using a basic brute force algo for OpenGL, and a optimized code for Cairo. In this fix the brute force means draw each pixel as a rectangle. It works fine, but could be optimized.
2018-07-30 00:13:30 +02:00
jean-pierre charras
70d08a2364
Fix incorrect scaling factor to draw the page limits (GAL mode)
2018-07-28 18:36:51 +02:00
jean-pierre charras
3e5cd86288
Fix a few wxWidgets minor asserts. Fix a compil warning
2018-07-28 10:31:04 +02:00
jean-pierre charras
361366bbbc
wxHtmlWindow doesn't render HTML text when used only inside our .kiface dll. (Windows and Linux)
...
* When a wxHtmlWindow is used *only* in a dll/so module, the Html text is displayed
* as plain text.
* this patch forces wxHtmlWinParser initialization to avoid this issue
*see https://groups.google.com/forum/#!topic/wx-users/FF0zv5qGAT0
Fixes: lp:1783544
https://bugs.launchpad.net/kicad/+bug/1783544
2018-07-28 07:19:22 +02:00
jean-pierre charras
46f5d81d6e
Fixes in DIALOG_IMAGE_EDITOR (minor bug fix, and code update).
...
Fixes: lp:1783796
https://bugs.launchpad.net/kicad/+bug/1783796
2018-07-27 16:30:13 +02:00
Jeff Young
3c2c5c38ad
Make icon buttons slightly wider for MSW.
...
Fixes: lp:1783703
* https://bugs.launchpad.net/kicad/+bug/1783703
2018-07-27 14:58:19 +01:00
Jeff Young
40f5ca0bf7
Fix copy/paste error in numeric evaluator.
...
Fixes: lp:1783991
* https://bugs.launchpad.net/kicad/+bug/1783991
2018-07-27 14:58:19 +01:00
Jeff Young
4dfae16c1b
Consolidate to single menu actions for save, revert, etc.
...
There's no point in having both Save Symbol and Save Library when
only one can be selected at a time.
Also cleans up a bunch of extraneous icons, and fixes a few
copy/paste errors in menus and toolbars.
2018-07-27 14:58:19 +01:00
jean-pierre charras
aa17e7919e
Fix a serious issue in DIALOG_EDIT_LIBRARY_TABLES, on wxWidgets 3.1.x.
...
* in DIALOG_EDIT_LIBRARY_TABLES::TransferDataFromWindow(), m_contentPanel->TransferDataFromWindow
* is explicitly called to update library tables.
* Before wxWidgets 3.1.x, m_contentPanel->TransferDataFromWindow is not called by wxDialog::TransferDataFromWindow()
* and explicit call is needed.
* Since wxWidgets 3.1.x, m_contentPanel->TransferDataFromWindow is called by wxDialog::TransferDataFromWindow()
* thus creating two successive calls, not supported by m_contentPanel->TransferDataFromWindow.
* The call to wxDialog::TransferDataFromWindow() was just removed, as it is useless in this dialog
2018-07-27 09:19:20 +02:00
Jeff Young
18d2f95fd5
Attempt to fix reading dimension units from file.
...
It fails when the decimal separator is a ',', so this change
simplifies the logic to just handle '.' and ','.
Fixes: lp:1782797
* https://bugs.launchpad.net/kicad/+bug/1782797
2018-07-26 21:27:49 +01:00
Jeff Young
cb61525394
Handle separate parsing rules for ID_SCH and ID_PCB.
...
This removes the existing constructors so that all parsing must
be explicit and callers are made aware that they need to think
about illegal characters, malformed ids, etc.
Fixes: lp:1783474
* https://bugs.launchpad.net/kicad/+bug/1783474
2018-07-26 15:43:53 +01:00
Jeff Young
b5634b1d08
Dialog spacing cleanup.
2018-07-26 15:43:53 +01:00
Maciej Suminski
bbfc1eb12c
Use quoted file name when opening a PDF file
...
Fixes: lp:1783667
* https://bugs.launchpad.net/kicad/+bug/1783667
2018-07-26 12:05:05 +02:00
jean-pierre charras
1e43773a95
Fix not understandable comment
2018-07-25 21:01:59 +02:00
jean-pierre charras
f13a546c9b
Fix a few wxWidgets asserts or alerts.
2018-07-25 20:26:55 +02:00
Jeff Young
822ebf6955
Move symbol management to a standard Save As... model.
...
Also brings horizontal toolbar in line with Pcbnew and Eeschema.
And updates the EDA_LIST_DIALOG to current practices.
This finishes the removal of the active library concept from the
Symbol Editor (started with the new component tree in 5.0).
Fixes: lp:1740717
* https://bugs.launchpad.net/kicad/+bug/1740717
2018-07-25 14:41:20 +01:00
Maciej Suminski
39d8d143d6
Fixed KIDIALOG freeze
...
wxDialog calls Show(false) when the dialog is about to be closed, but
KIDIALOG::Show() implementation did not forward the show parameter to
wxRichMessageDialog::Show() invocation. As the parameter was not
specified, the mentioned Show() call always used 'true' as the default
parameter, preventing the dialog from being closed.
Fixes: lp:1782999
* https://bugs.launchpad.net/kicad/+bug/1782999
2018-07-25 11:50:04 +02:00
Wayne Stambaugh
b8aec37ef1
Fix external check for KISYS3DMOD environment variable.
...
Fixes lp:1782708
https://bugs.launchpad.net/kicad/+bug/1782708
2018-07-23 12:47:48 -04:00
jean-pierre charras
82d492a840
Better wxASSERT message in OPENGL_GAL::computeBitmapTextSize, if the char is not found in font.
2018-07-23 13:58:13 +02:00
Jeff Young
185b524a62
Support both add-empty and add-browse for 3D models.
...
Also fixes a bug where the selected row and the grid cursor get
separated after a delete.
Fixes: lp:1782747
* https://bugs.launchpad.net/kicad/+bug/1782747
2018-07-23 01:09:47 +01:00
jean-pierre charras
72d1597201
DXF import: add import of DXF splines that are converted to Bezier curves.
...
Fix also a lot of bugs related to Bezier curves (S_CURVE shape in DRAW_SEGMENT class) in Pcbnew code.
Add missing code to handle these Bezier curves
2018-07-22 18:39:47 +02:00
Jeff Young
07a665f4fd
Improve validation of symbol fields editor.
...
Don't beep when inserting character from focused grid cell (but
before editor is opened).
Handle reference validation separately from name validation and
separately from user field value validation. The old way of setting
the fieldId on the validator wasn't working because the validator
gets copied.
Run validation when leaving cell. Don't just check for empty
(particularly for fields that CAN be empty).
Fixes: lp:1782917
* https://bugs.launchpad.net/kicad/+bug/1782917
(cherry picked from commit 79e04de)
2018-07-21 21:28:13 +01:00
Jeff Young
5c646119a7
Allow user-specification of dimension units.
...
Also fixes a units bug when round-tripping a dimension through
the file format.
Fixes: lp:1782797
* https://bugs.launchpad.net/kicad/+bug/1782797
2018-07-21 13:50:21 +01:00
Jeff Young
06ea7cdb79
Don't sends events during initialization of UNIT_BINDER.
...
It can get us in all sorts of trouble.
Fixes: lp:1782855
* https://bugs.launchpad.net/kicad/+bug/1782855
2018-07-21 09:42:12 +01:00
Jeff Young
c1df78d531
Finish project frame library table editing.
...
Fixes: lp:1782761
* https://bugs.launchpad.net/kicad/+bug/1782761
2018-07-20 18:48:06 +01:00
Jeff Young
bd90341e91
Add Footprint & Datasheet buttons to Edit Symbol dialog.
2018-07-20 18:48:06 +01:00
Jeff Young
da35b16392
Allow dialogs to have no parent.
...
Fixes: lp:1782661
* https://bugs.launchpad.net/kicad/+bug/1782661
2018-07-20 00:07:07 +01:00
Jeff Young
eaf5b913b6
Add Manage Symbol and Footprint Library tables to project frame.
...
Fixes: lp:1780604
* https://bugs.launchpad.net/kicad/+bug/1780604
2018-07-19 21:46:41 +01:00
Jeff Young
829ba27206
Another round of dialog spacing/font adjustments for Windows.
2018-07-18 17:59:05 +01:00
Jeff Young
879ffa4d1c
Adjust dialog spacing for Windows.
2018-07-17 22:18:27 +01:00
Seth Hillbrand
840ad7f680
Add SH_ARC collisions
2018-07-17 10:08:13 -07:00
Jeff Young
65d72e1c11
Fix compile errors on non-GCC compilers.
...
Fixes: lp:1782148
* https://bugs.launchpad.net/kicad/+bug/1782148
(cherry picked from commit 2ada8fa)
2018-07-17 15:14:31 +01: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
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
a52605957e
Reduce verbosity in netlist updating messages.
...
Fixes: lp:1615755
* https://bugs.launchpad.net/kicad/+bug/1615755
(cherry picked from commit 798efbd)
2018-07-17 15:13:51 +01:00
Jeff Young
34857d06c4
Create CvPcb's footprint viewer through Kiway().Player()
...
This allows it to participate in Kiway things such as updating
language or common settings.
Fixes: lp:1779558
* https://bugs.launchpad.net/kicad/+bug/1779558
(cherry picked from commit b3f8478)
2018-07-17 15:13:31 +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
d5e88f574f
Clean up units infrastructure after g_UserUnit removal.
...
Fixes: lp:1538239
* https://bugs.launchpad.net/kicad/+bug/1538239
(cherry picked from commit 96d7178)
2018-07-17 15:12:36 +01:00
Jeff Young
aab97c8385
Consolidate design rules UI.
...
Implement new Board Setup paged dialog which includes:
Layers Setup
Design Rules
Solder Mask & Paste
Text & Drawings
Moves line width and text properties to a layer-class-based
system. Renames unlocked to upright (which also reverses the
logic).
New Edit Text and Graphic Properties dialog which replaces
Edit Footprint Text and adds layer-class-based editing and the
italic, upright and visibility properties.
Adds Import Settings functionality which allows settings to
be imported from another project at page granularity.
Also UNIT_BINDERizes the dialog and adds editing of pcb text.
Fixes: lp:1731952
* https://bugs.launchpad.net/kicad/+bug/1731952
Fixes: lp:1743464
* https://bugs.launchpad.net/kicad/+bug/1743464
Fixes: lp:1664761
* https://bugs.launchpad.net/kicad/+bug/1664761
Fixes: lp:1753362
* https://bugs.launchpad.net/kicad/+bug/1753362
Fixes: lp:1545427
* https://bugs.launchpad.net/kicad/+bug/1545427
Fixes: lp:1753775
* https://bugs.launchpad.net/kicad/+bug/1753775
Fixes: lp:1777692
* https://bugs.launchpad.net/kicad/+bug/1777692
Fixes: lp:1780670
* https://bugs.launchpad.net/kicad/+bug/1780670
Fixes: lp:1519601
* https://bugs.launchpad.net/kicad/+bug/1519601
(cherry picked from commit 3944a5e)
2018-07-17 15:12:34 +01:00
Jeff Young
5f3ee1e7ce
More g_UserUnit erradication.
...
(cherry picked from commit 3f08780)
2018-07-17 15:12:31 +01:00
Jeff Young
ae2cb331b1
Merge PCBnew text edit dialogs.
...
(cherry picked from commit 63b7738)
2018-07-17 15:12:24 +01:00
Jeff Young
ef3e045a9b
Eradicate g_UserUnit from ERC/DRC.
...
(cherry picked from commit 98b8cd4)
2018-07-17 15:12:16 +01:00
Jeff Young
2ff414adb4
Simplify Move Exactly and Postion Relative dialogs.
...
Also removes g_UserUnit references.
Fixes: lp:1660154
* https://bugs.launchpad.net/kicad/+bug/1660154
(cherry picked from commit 1639636)
2018-07-17 15:12:11 +01:00
Jeff Young
5ce0f8ba54
Kill off a few more g_UserUnit references.
...
(cherry picked from commit 452b1a7)
2018-07-17 15:12:07 +01:00
Jeff Young
a7b3fac7b5
Remove colours from message text items.
...
Fixes: lp:1674015
* https://bugs.launchpad.net/kicad/+bug/1674015
(cherry picked from commit 125d5b7)
2018-07-17 15:11:40 +01:00
Jeff Young
3e062867de
Move all the grid workarounds into our own WX_GRID class.
...
(cherry picked from commit 08b4463)
2018-07-17 15:11:38 +01:00
Jeff Young
06bf958bf1
UNIT_BINDERize eeschema's plot and text edit dialogs.
...
(cherry picked from commit 298ea70)
2018-07-17 15:11:26 +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
1569842927
Pad properties usability enhancements.
...
Also includes conversion to UNIT_BINDER for pad properties and
pad primitives properties dialogs.
(cherry picked from commit 4a051da)
2018-07-17 15:11:06 +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
8f0aa68ab8
Fold 3D Search Paths dialog into Configure Paths.
...
Use in-place editing for both.
Fixes: lp:1743823
* https://bugs.launchpad.net/kicad/+bug/1743823
(cherry picked from commit 33622cd)
2018-07-17 15:11:01 +01:00
Jeff Young
124c6d9857
Add in-place editing and validation to Design Rules.
...
Includes UNIT_BINDER transition and some general layout cleanup.
(cherry picked from commit 282119e)
2018-07-17 15:10:55 +01:00
Jeff Young
31aebe6920
UI infrastructure enhancements and bug fixes.
...
Work around wxWidgets failure to send first key through validator.
Unify treatment of INDETERMINATE values (such as for multiple
selections with mixed values).
(cherry picked from commit 7308729)
2018-07-17 15:10:15 +01:00
Jeff Young
f7861c90ec
Use more self-documenting names for conversion routines.
...
In particular, make sure no one thinks the low-precision ones are
OK for dialogs and/or files.
(cherry picked from commit bc1fcfa)
2018-07-17 15:10:13 +01:00
Jeff Young
f5d70644f2
If you want to look at old code, use GIT.
...
(cherry picked from commit 42d3315)
2018-07-17 15:10:11 +01:00
Jeff Young
bcd9a7745d
Make the pin table editable.
...
Also adds generic icon + text grid renderer and grid editor.
Fixes: lp:1521055
* https://bugs.launchpad.net/kicad/+bug/1521055
Fixes: lp:1528817
* https://bugs.launchpad.net/kicad/+bug/1528817
(cherry picked from commit 067f777)
2018-07-17 15:10:06 +01:00
Jeff Young
7be85deb32
GRID_TRICKS improvements.
...
Allow copy of a single cell demarcated by the grid cursor.
Paste of lib_table s-expressions should always start at 0,0.
Let caller or specialized sub-class do auto-sizing; don’t
do it from within the base GRID_TRICKS.
Don’t start GRID_TRICKS menu IDs at -1; wxWidgets doesn’t
like it when you get to 0.
Add column visibility menu.
(cherry picked from commit e5071ed)
2018-07-17 15:10:03 +01:00
Jeff Young
f0f9e4a1cb
Kicad-ize the numeric evaluator.
...
Naming conventions, code formatting, and wxStrings.
(cherry picked from commit 4a0d7a8)
2018-07-17 15:10:01 +01:00
Jeff Young
0f78f97232
Get rid of 5.0 dialog focus hacks.
...
It's time to fix the focus issues. This adds a new SetInitialFocus()
routine to DIALOG_SHIM which will need to be called from a lot of
dialogs.
(cherry picked from commit 6d9647a)
2018-07-17 15:09:58 +01:00