Jeff Young
abd3f5bc2b
Move footprints to EDA_ANGLE.
2022-01-14 16:08:18 +00:00
jean-pierre charras
cfe93e34a2
PCB_BASE_FRAME::FocusOnItem(): avoid extremely long calculation time for zones.
...
The algo used to calculate a focus point on a zone can be *extremely* time
consuming when using the filled areas in zone (can be matter of minutes and more).
So we use now only the zone outlines usually having not a lot of vertices.
2022-01-10 18:14:19 +01:00
Marek Roszko
c4c56de708
Neurotically update position wxPoint usages
2022-01-01 11:55:51 -05:00
Marek Roszko
347e03363a
Convert wxPoint/wxSize starting from EDA_RECT usages
2022-01-01 11:30:33 -05:00
Jeff Young
5e4a704155
Remove some more duplicated preferences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/10112
2021-12-26 13:37:28 +00:00
Jeff Young
fa908e1f98
Dimensions for footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8441
2021-12-24 21:10:28 +00:00
Jeff Young
23194dbe54
User-settable high-contrast dimming factor.
...
ADDED user-settable high-contrast dimming factor.
Fixes https://gitlab.com/kicad/code/kicad/issues/6922
2021-12-24 17:38:55 +00:00
Jeff Young
9ee28ea8f5
Flatten out some more preferences.
2021-12-24 15:43:20 +00:00
Jeff Young
d28714167c
All the preferences, all the time.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7877
Fixes https://gitlab.com/kicad/code/kicad/issues/5153
2021-12-24 13:08:44 +00:00
Jeff Young
f1410f0240
Line styles for PCBNew shapes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2150
2021-12-24 12:36:59 +00:00
Jeff Young
a48867ea01
Solder mask integrity testing.
...
ADDED DRC test for solder mask aperture bridging copper from different
nets.
ADDED visualization of minimum web width processing for solder masks.
ADDED allow_soldermask_bridges property for footprints.
Fixes https://gitlab.com/kicad/code/kicad/issues/2183
Fixes https://gitlab.com/kicad/code/kicad/issues/1792
2021-12-23 22:31:14 +00:00
Seth Hillbrand
9884f40952
Update call signature for SwitchLayer
...
We don't use DC anymore
2021-12-09 10:14:11 -08:00
Jeff Young
58189dca7a
Always focus on center of small things.
2021-12-01 19:44:30 +00:00
Jon Evans
8026863d4c
Use progress reporting in more places when loading a board
...
Prevents application-not-responding events while opening large designs
2021-11-25 11:19:03 -05:00
Wayne Stambaugh
e57ef66971
Fix build error with wxWidgets 3.0.
2021-11-17 12:28:23 -05:00
Wayne Stambaugh
a4e9beeeac
Coverity issue fix.
2021-11-15 14:02:28 -05:00
Wayne Stambaugh
53f5d616aa
Coverity issue fixes.
2021-11-13 11:38:31 -05:00
Jeff Young
18d9f6e323
Reduce auto.
2021-11-09 13:14:24 +00:00
Jon Evans
75d75799f7
Move to getters/setters for aux and grid origin
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8836
2021-11-08 22:36:40 -05:00
Jeff Young
c9d858eaf5
Add status bar message for constraint mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9282
2021-10-24 14:04:12 +01:00
Jeff Young
fecb53b64f
Clean up removal of separate front & back footprint text visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9441
2021-10-22 21:14:15 +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
Seth Hillbrand
e7ae3a181f
Handle casing for FocusOnItem
...
Some items are complex (footprints) and some don't have logical polygons
(PCB_MARKER), so we can't transform everything. So, handle the items we
can transform normally and use bbox or boundinghull for everything else
2021-09-29 16:19:49 -07:00
Jeff Young
46949abe4a
Don't scroll to highlight an object already visible.
2021-09-25 15:31:52 +01:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Jeff Young
77680eba30
Naming conventions.
2021-08-05 14:31:36 +01:00
Jeff Young
95b87ba29a
Freshen microwave polygon dialog and remove a bunch of dead code.
2021-08-03 01:11:11 +01:00
Wayne Stambaugh
89b1fdabe9
Pass COLOR4D object by reference instead of on the stack.
2021-07-26 13:28:56 -04:00
Wayne Stambaugh
cf00319c85
More NULL expunging.
2021-07-20 07:27:18 -04:00
jean-pierre charras
9cb4c9bfc2
3D viewer: ensure the activity messages are displayed on Linux after Frame creation.
2021-07-19 10:10:25 +02:00
jean-pierre charras
a43ca978df
3D viewer: do not build the board 3D data during 3D frame creation, but after.
...
Building the 3D data is time consuming, so creating the data after the 3D
frame is shown is better, and the build activity is visible, especially on Linux.
2021-07-18 17:55:40 +02:00
Jeff Young
1db33c7b3a
More safety (and better impl) for not sharing FP table/info stuff.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8657
2021-06-29 12:46:16 +01:00
Jeff Young
5c21f93803
Consistency in progress and error messages.
2021-06-26 13:23:43 +01:00
Jeff Young
89718dd3ba
Naming conventions.
2021-06-19 19:36:53 +01:00
Jeff Young
16047b7419
3D preferences bug fixes.
...
1) Make sure prefs get saved when closing parent frame.
2) Add camera projection mode to settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/8110
Fixes https://gitlab.com/kicad/code/kicad/issues/8626
2021-06-17 12:22:18 +01:00
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
2021-06-11 22:07:02 +01:00
Ian McInerney
23f8851409
Remove pcb_group include from board header
2021-06-03 20:03:31 +01:00
Seth Hillbrand
752ae4d519
Rename modification flag routines
...
Differentiates better between the EDA_ITEM IsModified(), referring to
items themselves changing and the EDA_SCREEN IsContentModified(),
referring to whether we have made any unsaved changes.
2021-05-28 12:07:04 -07:00
Seth Hillbrand
d7f219e98f
Unify IsSave and IsModify
...
The flags and calls were used identically, leading to potential
confusion/bugs. Testing for modification should go through
IsContentModified()
2021-05-28 11:51:54 -07:00
Jon Evans
619a353c5e
Decouple 3D view dirty marking and refresh
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8154
2021-04-08 22:09:19 -04:00
Jon Evans
2cbd7b5043
Reduce scope of some view repaints to improve performance
2021-03-14 11:42:09 -04:00
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
2021-03-08 12:49:48 -08:00
Marek Roszko
b82fcbcad6
More exception var disuse warnings
2021-02-26 19:30:58 -05:00
Jeff Young
86aaa2e9cb
Rationalize footprint bounding boxes and cache all of them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
2021-02-26 13:50:27 +00:00
Jon Evans
6fa0ac45af
Re-enable custom grid settings for Pcbnew
...
Add a reset button that will only show up if the user
edits the JSON configuration for grids. This is a temporary
measure until we have a real grid editor GUI in V7.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7595
2021-02-21 15:33:13 -05:00
Jeff Young
0c2870c65f
Fix missing check against DELETED_BOARD_ITEM::GetInstance().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7575
2021-02-17 19:39:56 +00:00
Jeff Young
618e824b0f
Cleanup includes and formatting.
2021-02-09 12:26:46 +00:00
Jeff Young
0e7c18119e
Make sure pads are unlocked when editing footprint from board.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7274
2021-01-26 15:28:48 +00:00
Jeff Young
6b420b191a
Use color theme backgrounds in page previews.
...
Also includes a *lot* of const fixing to make it happen.
Fixes https://gitlab.com/kicad/code/kicad/issues/6811
2020-12-23 23:18:38 +00:00
Wayne Stambaugh
090d7881e0
Revert Coverity fix that caused build issue with older versions of Boost.
...
The Boost entropy exception does not exist prior to version 1.67. Once
the minimum Boost version is raise to 1.67 or greater, enable catching
the exception. We will just have to live with the possibility of an
uncaught exception until then.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6804
2020-12-21 08:41:05 -05:00
Wayne Stambaugh
f311831c27
Coverity fixes.
...
280252, 314742, 314745, 314747, 314755, 314756, 314757, 314758,
314935, 314936
2020-12-20 13:24:47 -05:00
jean-pierre charras
dcbe2413cc
Pcbnew: fix incorrect displayed value in polar coordinates.
...
Fixes #6771
https://gitlab.com/kicad/code/kicad/issues/6771
2020-12-17 11:21:24 +01:00
Jeff Young
3b35bfc0a5
Don't write out synthetic severities (they're headings).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6726
2020-12-14 13:34:53 +00:00
jean-pierre charras
64f555079a
Code cleanup related to zoom:
...
- remove outdated code or comment coming from old drawing code using wxDC
- move zoom values lists to zoom_defines.h
- fix incorrect zoom max and min values (gal scaling factor limits).
2020-12-02 18:35:28 +01:00
jean-pierre charras
fcce62f0a4
cleanup related to zoom definitions
2020-12-02 18:35:27 +01:00
jean-pierre charras
71ab42e60a
Minor fixes and cleanup related to zoom definitions.
...
Mainly move 2 define relative to Zoom from convert_to_biu.h to zoom_defines.h.
Will make some changes/fixes in zoom code more easy.
2020-12-02 10:14:35 +01:00
Jeff Young
b171d381f0
Collapse Redraw3DView and Update3DView into a single routine.
...
Also fixes some errors about what the flag meant (model changed,
NOT redraw immediately).
Fixes https://gitlab.com/kicad/code/kicad/issues/6478
2020-11-29 21:08:30 +00:00
Jeff Young
7bd31d5237
Naming conventions.
2020-11-14 18:26:03 +00:00
Jeff Young
bdbb68f813
MODULE -> FOOTPRINT.
2020-11-13 16:04:03 +00:00
Jeff Young
3451ac3088
PCB_MODULE_T -> PCB_FOOTPRINT_T
2020-11-13 15:16:24 +00:00
Jeff Young
522d64968e
Yet more module -> footprint.
2020-11-13 15:16:24 +00:00
Jeff Young
84dd5108ba
Remove some "class_" prefixes from files.
2020-11-13 15:16:23 +00:00
Jeff Young
1e44172d40
Redraw all objects after Preferences in case colours changed.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6341
2020-11-11 17:52:15 +00:00
Jeff Young
812b714ccd
More Module -> Footprint and a bit of formatting cleanup.
2020-11-10 20:53:12 +00:00
Marek Roszko
a785f70ea1
msgpanel is a widget, shove it to the right folder.
2020-10-25 20:01:12 -04:00
Jon Evans
cb4ef5a619
Fix various rendering issues with non-through vias
...
Correctly hide netnames in high contrast mode
Correct highlighting for blind/buried/micro via drills
Repaint vias when needed to support stacked microvias
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2593
2020-10-12 22:47:31 -04:00
Jeff Young
ee95d8fe2e
Improve SNR in status bar (and use common code).
2020-10-06 12:08:31 +01:00
Jeff Young
37906511f5
Class renaming.
...
DRAWSEGMENT -> PCB_SHAPE
EDGE_MODULE -> FP_SHAPE
TEXTE_PCB -> PCB_TEXT
TEXTE_MODULE -> FP_TEXT
2020-10-05 11:55:33 +01:00
Ian McInerney
3a570c27f0
Update unit handling in the preview ruler
...
* Make the ruler able to switch to mils after creation
* Cleanup an unused flag in Pcbnew dimensions
* Move unit changed notification into EDA_DRAW_FRAME so more
frames to use it.
* Allow switching units when GerbView ruler tool is active
2020-10-04 17:53:55 +01:00
Ian McInerney
122bd7ca7c
Make the statubar aware of mils units
...
Switch Eeschema to use the built-in printing routines
because its precisions are close to those and it is
cleaner.
Give mils a precision of 2 decimal places to match
the precision shown in inches.
2020-10-04 17:53:55 +01:00
Jeff Young
ba26e056ec
Implement groups for modedit.
...
This uncovered a memory corruption bug in MODULE's move operator,
several bugs in MODULE's move and copy constructors, and a bug in
BOARD's GetItem() call.
It also bumps the file format for saving/restoring groups inside
footprints.
2020-10-03 12:19:50 +01:00
jean-pierre charras
13304d0870
more cleanup about removing useless include
2020-10-02 13:40:00 +02:00
Jeff Young
6abe68fff0
Cleanup. No changes to execution.
2020-09-30 23:07:12 +01:00
Mario Luzeiro
a1e94c2583
3D-Viewer: request a redraw when a footprint is selected in pcbnew
2020-09-28 02:26:25 +00:00
Jeff Young
865249c227
Handle two panels both referencing same colour theme.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5185
2020-09-21 11:59:27 +01:00
jean-pierre charras
756d6a123b
FOOTPRINT_WIZARD_FRAME: fix a crash when opening the frame.
...
LoadSettings() was using the gal canvas, but the gal canvas was not created
when calling LoadSettings().
2020-09-01 09:32:05 +02:00
Reece R. Pollack
6f1204cfd7
Add Display Origin Transforms support to the PCB_BASE_FRAME class
...
This commit adds support for display origin transforms to the PCB_BASE_FRAME
class. This instantiates a PCB_ORIGIN_TRANSFORMS object, and overrides the
GetOriginTransforms method in the EDA_DRAW_FRAME class to reference it.
The formatting of the status line has been updated to display coordinates
relative to the user-selected origin, and with the coordinates increasing
in the user-selected direction.
2020-08-26 17:54:22 +00:00
Jeff Young
8eda4d93ee
Use LAYER_VIAS instead of via-type-specific layers for visibility.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5344
2020-08-24 14:00:46 +01:00
Jon Evans
eb9756840d
Better defaults for brightness factors
...
Also store them in the JSON so they can be tweaked
2020-08-18 20:55:39 -04:00
Qbort
b41892e4da
Rename class GROUP in pcbnew to PCB_GROUP
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5156
2020-08-12 15:36:08 +01:00
Joshua Redstone
ee428876ec
ADDED: Group/Ungroup function
...
This implements the group/ungroup functions to mark a set of EDA_ITEMs as a unit, allowing them to be moved and rotated as a unit
2020-08-11 19:37:07 +00:00
Jeff Young
f65a0037dc
Display violation layer (and select it) for DRC errors.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5123
2020-08-11 17:47:39 +01:00
Jeff Young
692aeff334
Fix a bunch of usages of copy ctor that really meant duplicate.
...
In particular, "duplicate" means "with a new KIID".
Fixes https://gitlab.com/kicad/code/kicad/issues/5127
2020-08-10 14:23:11 +01:00
Jeff Young
3fd0a3f842
Update text variables even when they're changed from other binary.
...
For instance, you might have PCBNew open but change the variable
value through EEschema > Schematic Setup.
Fixes https://gitlab.com/kicad/code/kicad/issues/4918
2020-07-17 21:05:11 +01:00
Jon Evans
5d118b0700
More visibility settings infrastructure
...
ADDED: Three-state high contrast mode action
ADDED: Save contrast mode in local settings
Also some initial infrastructure for layer presets
2020-07-11 21:59:07 -04:00
Jon Evans
c0aa6965de
Migrate PcbNew project settings to new framework
...
Various architecture upgrades to support this.
Creating a BOARD now requires a valid PROJECT, which caused
some (mostly transparent) changes to the Python API internals.
ADDED: Project local settings file
CHANGED: Board design settings are no longer stored in PCB file
CHANGED: Net classes are no longer stored in PCB file
CHANGED: Importing board settings now reads boards, not just projects
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2578
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4070
2020-07-02 22:08:54 -04:00
Jeff Young
7b042f4a75
Add rectangle tool to PCBNew toolbar in favour of Aux Origin.
...
ADDED new rectangle graphics tool for PCBNew and Footprint Editor.
Also adds rectangle tool to both Footprint Editor and PCBNew Place
menus.
The Aux Origin tool can come back once we have multi-select toobar
buttons.
Also collapses an unnecessary level out of the auxOrigin and gridOrigin
settings.
Fixes https://gitlab.com/kicad/code/kicad/issues/2246
2020-07-01 13:31:30 +01:00
Jeff Young
a7703d1207
Cleanup Graphics to parallel Cleanup Tracks & Vias.
...
This also allows for easier migration to DRAWSEGMENT::S_RECTs by
auto-converting 4 rectilinear lines to a rectangle.
2020-06-17 18:44:39 +01:00
Jeff Young
ad12c42e8b
Push grid settings dialogs down into common.
...
This also gives support for fast grid switching and a user grid
to eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/2200
2020-06-14 19:26:37 +01:00
Jeff Young
c48f4272f3
Collapse a level out of the zoom settings.
...
The APP_SETTINGS_BASE now holds the list of zoom factors, and
the old legacy (screen-based) code has been removed.
2020-06-13 22:44:16 +01:00
Jeff Young
f84406009b
Push a couple of layers of indirection out of grid settings.
2020-06-13 11:35:56 +01:00
Ian McInerney
6692935808
Consolidate common viewer actions across cvpcb and pcbnew frames
...
* Consolidate the measure tool into one tool (this gives cvpcb
unit changing and snapping capabilities in its measure tool)
* Transition cvpcb to use actions for the sketch modes
* Replumb how magnetic items settings are stored and used
2020-05-24 11:58:33 +01:00
Jon Evans
f2e003147e
ADDED: Enable color themes for PcbNew printing
2020-05-16 13:19:43 -04:00
Jon Evans
9916f24fab
Split out footprint editor color settings
...
Migrate COLOR_SETTINGS 0->1 to remove fpedit section
Migrate FOOTPRINT_EDITOR_SETTINGS 0->1 to use new theme if created
Remove COLOR_CONTEXT that is no longer needed
2020-05-05 21:46:00 -04:00
Jon Evans
51eac3e3e6
Split pcbnew and footprint editor settings getters for clarity
2020-05-05 21:46:00 -04:00
Jeff Young
874f13e29e
Fix some issues with rotated oval pads.
2020-05-01 18:49:42 +01:00
Jeff Young
1535c83b88
Lay some groundwork for adding distances to DRC errors.
...
modified: eeschema/lib_rectangle.cpp
2020-04-24 14:46:22 +01:00
Jon Evans
2d95270a31
Add color theme settings to pcbnew
2020-04-23 21:55:29 -04:00
Oleg Endo
2f1d23312f
add BOARD_CHANGED and UNITS_CHANGED events
2020-04-21 13:23:56 +00:00
Jeff Young
317e98b344
Simplify user model for editing color themes.
2020-04-08 22:34:56 +01:00