Seth Hillbrand
3e6bf7814b
Safely sort view layers
...
Changing view order of only some layers can cause overwriting of the
original layer if not pre-staged
Fixes https://gitlab.com/kicad/code/kicad/issues/10283
2022-01-06 14:41:10 -08:00
Jon Evans
014bad7b28
Add profile counters for PCB mouse and paint events
2021-12-05 15:16:08 -05:00
dsa-t
cb482eb8eb
Symbol Fields Table: Highlight proper symbols even if they aren't annotated
2021-12-03 20:35:54 +00:00
Tomasz Wlostowski
4d2ce5c685
VIEW: don't create a GAL_UPDATE_CONTEXT if there's nothing to update
...
Avoid a very expensive glMapBuffer() call and greatly improves scrolling/redraw speed.
2021-11-29 23:30:10 +01:00
Tomasz Wlostowski
9add03dd88
VIEW: rebuild the R-trees from scratch if more than 30% of items require a geometry update.
...
(see comments in the code for detailed explanation)
2021-11-21 17:33:59 +01:00
Jeff Young
930c4e5582
Cleanup.
...
Formatting.
Naming conventions.
Use of auto.
Use of STL cover types.
2021-10-03 19:42:29 +01:00
Jeff Young
11c91c7179
Improve obscuring dialog algorithm to handle multiple dialogs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8970
2021-10-03 13:27:46 +01:00
Mike Williams
30987cebfe
Gerbview: fix cairo negative items and implement real differential mode
...
Layers with negative objects need to be drawn in a subsurface before
copying so they don't _CLEAR the draw items below them when a negative
object is drawn.
Differential layers are basically the same thing only they use a
different copying operation onto the layers below.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/1863
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4495
2021-08-31 12:43:53 +00:00
Jeff Young
f221220fe2
Rename layer ids file.
...
It hasn't had anything to do with colors or visibility for some time
now.
2021-07-29 16:03:25 +01:00
Wayne Stambaugh
bcd6bddfd4
Start expunging NULL.
...
Given that KiCad is a C++ project, we should really be using nullptr
instead of NULL.
2021-07-15 15:44:45 -04:00
Jeff Young
8f0104f921
Fix case of CLion getting a little carried away.
2021-07-04 16:23:57 +01:00
Jeff Young
c11ee69499
Save 3D prefs after editing, and load some of them into FP Props.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8712
2021-07-04 13:20:55 +01:00
Jeff Young
1f4a56005e
Remove extraneous isPrinting test.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8609
2021-06-25 12:44:51 +01:00
Seth Hillbrand
09e1a0dc48
Increase maximum zoom for pcbnew and gerbview
...
Zoom levels remain the same but high zooms reachable by mouse wheel
Fixes https://gitlab.com/kicad/code/kicad/issues/7093
2021-06-11 14:26:38 -07:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Wayne Stambaugh
e6346e3103
Pass objects by reference instead of on the stack part 2.
2021-06-08 13:47:21 -04:00
Marek Roszko
69d7a23e1c
Start cleaning out wx/wx.h in cpp files
2021-06-07 18:20:47 -04:00
Tomasz Wlostowski
2b955437b6
VIEW_OVERLAY: add Get[Fill/Stroke]Color methods.
2021-05-31 00:15:16 +02:00
jean-pierre charras
0427bda768
Remove useless wx/wx.h include, that create sometimes compil warnings on msys.
...
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming
2021-05-01 19:32:15 +02:00
Marek Roszko
cbad18ad98
Hide gal profiling behind KICAD_GAL_PROFILE cmake option
...
__WXDEBUG__ is too easy to get set
2021-04-30 19:24:36 -04:00
jean-pierre charras
1bfa3dc6a5
Fix an annoying issue (wxMSW specific) about X_VIEW_CONTROLS::CaptureCursor()
...
On MSW, CaptureMouse() was sometimes called event if the GAL panel has
captured the mouse (that was not accepted by wxMSW), although HasCapture()
returns false.
(Perhaps some race condition between events)
The fix add a flag to avoid calling twice CaptureMouse() after only one
wxEVT_MOUSE_CAPTURE_LOST event was received.
Fixes #8239
https://gitlab.com/kicad/code/kicad/issues/8239
2021-04-19 21:23:07 +02:00
Jonathan Haas
55679be2e3
Fix some typos across the codebase
2021-04-05 16:15:25 +02:00
Wayne Stambaugh
d96cccbf20
OpenGL GAL tracing improvements.
2021-03-22 17:45:49 -04:00
Jon Evans
cc8413c841
Tweak default zoom settings for Windows
...
Acceleration seems to be worse than constant on many
systems, so let's turn it off by default.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5434
2021-03-21 19:46:23 -04:00
Jeff Young
6c3b02aabe
Cleanup (no functional changes).
2021-03-19 16:14:34 +00:00
Jeff Young
b2ac9cc29f
Formatting & naming conventions.
2021-03-15 19:04:59 +00:00
jean-pierre charras
10990f8e81
Fix a minor compil and a minor Coverity warnings.
2021-02-26 15:33:50 +01:00
Tomasz Wlostowski
a9c54c10a2
VIEW_OVERLAY: support for bitmap text
2021-02-25 17:18:23 +01:00
Seth Hillbrand
df573255e0
Fix crash when switching schematics
...
When switching schematics that causes an error message (for example if
the schematic needs repair), wx can refresh in between view updates,
leading to a null preview.
2021-02-16 10:12:30 -08:00
Jeff Young
a235103e48
Redo pad & via painting (again).
...
New strategy isolates all draw/don't draw decisions to the ViewGetLOD
routines, and all dimmed/not dimmed to PCB_RENDER_SETTINGS::GetColor.
The actual drawing in PCB_PAINTER is more-or-less conditon free.
Also adds new layers for pad and via hole walls so that they can be
controlled for high-contrast mode.
Also changes the drawing paradigm so that the pads are drawn even when
not on the high contrast layer, just in low contrast. The hole wall
is drawn in high contrast. This actually makes things clearer to the
user (although to be honest was done to keep from having to re-render
pads when the high contrast layer changes since we have two separate
layers now that we can adjut colours on).
Fixes https://gitlab.com/kicad/code/kicad/issues/7328
2021-01-30 16:31:27 +00:00
mitxela
886cad43bd
Cancel drag action when focus is lost
2021-01-27 03:33:22 +00:00
Wayne Stambaugh
6ab1144ea3
Fix broken Doxygen comment specifiers.
...
Please note, ///> is not a valid Doxygen comment specifier. ///< is the
correct specifier to use for single line or short Doxygen comments.
2021-01-25 07:42:36 -05:00
mitxela
16c7180ff5
Remove SetGrabMouse and revert some behaviours
2021-01-23 13:35:39 +00:00
mitxela
905fd63c9f
Fix autopanning behaviour for left-click-drag
2021-01-23 13:35:39 +00:00
mitxela
f7cd21c70d
Move windows-specific mouse capture stuff into ifdefs
2021-01-23 13:35:39 +00:00
mitxela
bfd7a9e956
Suppress assertions caused by closing the window while mouse is captured
...
Closing the window while dragging with unsaved changes causes a dialog box, triggering a capture-lost event. Closing the window while dragging without unsaved changes causes an assertion about destroying a window with mouse capture.
2021-01-23 13:35:39 +00:00
mitxela
39be962a69
Restructure mouse capture to avoid recapture asserts
2021-01-23 13:35:39 +00:00
jean-pierre charras
fed56572f8
Refinements and fixes in auto-pan.
...
Add comments.
Fix incorrect comparison.
Fix a too fast auto-pan speed when auto-pan acceleration was not set to the minimal value.
2021-01-19 10:45:41 +01:00
mitxela
744d745ee5
Allow endless panning
...
Warp the cursor if it leaves the window while panning, to allow endless motion.
2021-01-18 22:07:59 +00:00
Ian McInerney
44655b98de
Initialize variables properly
2021-01-18 18:35:10 +00:00
Jeff Young
50889a9ed6
Promote mouse drag settings to full enums.
2021-01-11 22:09:36 +00:00
Jeff Young
6c648df4c6
Support 3 drag vs. select options, and unifiy with other drag prefs.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5493
2021-01-11 11:50:14 +00:00
Jon Evans
76e8c62269
PCB_VIEW: Fix a few ASAN issues
2020-12-29 14:58:45 -05:00
Jeff Young
dec68a782c
Cleanup.
2020-12-29 12:41:24 +00:00
Jeff Young
253b2da717
Dead code cleanup.
2020-12-25 23:07:49 +00:00
jean-pierre charras
d3d26f2892
Update the zoom level as soon as it is modified by the mouse wheel
...
The zoom level displayed on the bottom of the canvas was not immediately
displayed, only after a mouse move.
Fixes #6542
https://gitlab.com/kicad/code/kicad/issues/6542
2020-11-29 17:46:24 +01:00
Jeff Young
54427fd594
Make sure deleted text items are removed from view and selection.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6407
2020-11-17 20:48:15 +00:00
Mark Roszko
e7bf2b6256
Update comment
2020-11-11 13:45:46 +00:00
Marek Roszko
2a3e6ee1b5
Nix another easily triggered infinite event loop on Windows
...
This infinite loop was triggered on any dynamic scaling change with KiCad open.
Either local display scale change OR Remote Desktop.
2020-11-10 19:59:29 -05:00
Jeff Young
812b714ccd
More Module -> Footprint and a bit of formatting cleanup.
2020-11-10 20:53:12 +00:00