jean-pierre charras
27072e52f7
Fix a compil and Coverity warnings
2023-07-07 10:28:01 +02:00
John Beard
ef8cf2d12b
Avoid inheriting for POSITIONING_TOOLS_MENU
...
This only uses the public interface of CONDITIONAL_MENU,
so we can just make on of those and save declaring a wrapper
type.
2023-07-06 21:11:51 +01:00
Mike Williams
efb452df37
PCB: selectionCursor can optionally take a filter list
...
Make sure we pass a default nullptr parameter if we want everything.
2023-07-06 11:25:53 -04:00
Ian McInerney
50e0a3a500
Move layer ID to action mapping to PCB_ACTIONS
...
This mapping function is better suited for a method of the actions
itself rather than just a helper function in one file.
2023-07-05 11:09:34 +01:00
Jeff Young
9ff33e5ec6
Remove BOARD_COMMIT( TOOL_MANAGER ).
...
It initializes both m_isFootprintEditor and m_isBoardEditor to false,
causing all sorts of trouble.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15072
2023-07-01 11:52:46 +01:00
Jeff Young
7ed5963b4f
Disable positioning tools when a move is in progress.
...
Also fixes a typo in EDIT_TOOL::doMoveSelection().
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15090
2023-06-30 20:37:03 +01:00
Jeff Young
773e1a1ab6
Actions with a COMMIT must be run synchronously.
...
Note that "immediate" doesn't mean quite the same thing: while it will
enter the tool immediately, it won't necessarily finish the tool during
the call if the tool has an event loop. So for something like Rotate
"immediate" and "synchronous" have the same behaviour, but for something
like Move they do not.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15085
2023-06-30 18:57:37 +01:00
Ian McInerney
30f20a694d
Give default parameter to net highlight/selection events
...
Fixes KICAD-2C7
Fixes KICAD-2C3
2023-06-29 00:17:12 +01:00
Ian McInerney
0de6fb03ba
Give updateLocalRatsnest action a default parameter
...
Fixes KICAD-2BX
2023-06-29 00:17:12 +01:00
Ian McInerney
459e6e192a
Give placeFootprint action a default nullptr parameter
...
Fixes KICAD-2BT
2023-06-29 00:17:12 +01:00
Jeff Young
1411b09178
Remove EDIT_TOOL's quasi-global BOARD_COMMIT.
...
It had several encapsulation leakage issues, as well as poorly-defined
behaviour of undo for chained-actions (append-to-board, and then rotate
while moving, for instance).
2023-06-27 17:04:18 +01:00
Ian McInerney
2fb6f19a84
Separate immediate and delayed action dispatch
...
Using a boolean argument just leads to a lot of trailing booleans in the
function calls and is not user friendly. Instead, introduce PostAction()
to send an action that runs after the coroutine (equivalent to passing
false or the default argument), and leave RunAction as the immediate
execution function.
2023-06-27 00:57:59 +01:00
Jeff Young
493828cc6b
Eradicate a bunch of calls to dyn_cast.
...
Also deletes PAD::GetParent() which fails to look for parent footprint
through groups.
2023-06-25 11:10:07 +01:00
Jeff Young
300a60e88e
Eradicate a bunch of calls to dyn_cast.
2023-06-25 11:10:05 +01:00
Jon Evans
3a0f8214fa
ADDED: Properties panel for schematic editor
...
Initial infrastructure work; follow-ons will add more
properties for schematic items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6351
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14105
2023-06-22 22:32:24 -04:00
Ian McInerney
f14feafc6b
Convert selection vector to EDA_ITEMS for base tool call
...
The base tool expects a generic EDA_ITEMS, but the existing vector
doesn't easily cast, so add a temporary one.
2023-06-20 21:52:50 +01:00
Ian McInerney
f899d9676f
Remove unneeded parameter from tool call
2023-06-20 21:52:50 +01:00
Ian McInerney
0a3b6c2d23
Fix call to properties when editing newly placed dimension
...
The edit is intended to be on the newly placed dimension, but the actual
properties tool doesn't take an item, so it was always looking up the
item to edit using the current selection/cursor position. Make this more
robust by just calling the edit properties directly on the item.
2023-06-20 21:52:50 +01:00
Ian McInerney
3c24ddd8cc
Fix passing CLIENT_SELECTION_FILTER through the tool framework
2023-06-20 21:52:50 +01:00
Ian McInerney
480223f67c
More RunAction specialization
2023-06-20 21:52:50 +01:00
Ian McInerney
3718ecfcd8
Simplify forcing action parameters to have a specific type
2023-06-20 21:52:50 +01:00
Ian McInerney
07cc85e76c
Fix more places where casts into RunAction were happening
2023-06-20 21:52:50 +01:00
Ian McInerney
8f3d159905
Update the net highlight action to properly use the action parameters
2023-06-20 21:52:50 +01:00
Ian McInerney
8b833211b5
Add parameter to repair board action
...
The tool checks for a boolean action, so default to giving false (which
makes it run in interactive mode).
2023-06-20 21:52:50 +01:00
Ian McInerney
b04e54dbea
Switch TOOL_EVENT and TOOL_ACTION to have a std::any parameter
...
Using std::any from C++17 allows for proper type handling in the
parameter field, removing the need for casting to void* and then casting
the void* to the desired type.
2023-06-20 21:52:50 +01:00
Mike Williams
6d93950dcc
PCB: abolish TEXT_TYPE::TEXT_is_*
...
PCB_TEXT is now always what was formerly TEXT_is_DIVERS and PCB_FIELDs
now what mandatory field type they are already.
2023-06-20 18:34:52 +00:00
Mike Williams
37837dc392
PCB: introduce PCB_FIELD_T
2023-06-20 18:34:52 +00:00
Mike Williams
a859b25d2c
PCB: convert footprints to use PCB_FIELDs for fields from schematics
2023-06-20 18:34:52 +00:00
Jeff Young
30336b2fe3
Unify go-back-one-step processing for drawing tools (and router).
...
Also warps mouse on all go-back-one-step operations for better feedback.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14981
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9985
2023-06-19 17:14:32 +01:00
Jon Evans
b424dc11e1
Hotkey feedback for inactive layer display mode
2023-06-17 23:47:26 -04:00
Jeff Young
ef6866757e
Treat undo as backspace and/or escape when drawing. Ignore redo.
...
Undo == backspace when drawing a polygon or chained lines. Otherwise
it's an escape.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14961
2023-06-16 22:08:21 +01:00
Jeff Young
9ed2458f00
Reset session drawing props after Board Setup.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14932
2023-06-13 11:06:10 +01:00
Jeff Young
93789e75b9
Re-create missing exclusion markers if DRC was cancelled.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14919
2023-06-11 12:14:27 +01:00
Jeff Young
96a221ceba
Refresh delete immediately; don't wait for next mouse motion.
2023-06-10 21:11:05 +01:00
Jeff Young
111d0a2c14
Check for proxy references and values in Selectable().
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14911
2023-06-10 17:47:29 +01:00
Marek Roszko
b41606ecf7
Use the correct printf format for the move individually status text
...
Fixes sentry KICAD-1ZT
2023-06-04 21:08:13 -04:00
Wayne Stambaugh
bdee545841
Coverity warning fixes.
2023-06-03 07:28:17 -04:00
jean-pierre charras
9a47b34499
Replace PAD_SHAPE::RECT by PAD_SHAPE::RECTANGLE to avoid a collision NAME with a windows header on MSYS2, creating many compil warnings. No actual code change.
2023-06-02 12:18:24 +02:00
Jeff Young
c71cf21e2f
Use rendered text to generate bounding box for knockout text.
...
Don't open-code knockout text shape generation in several different
places.
Make sure triangulated knockout text gets clearance added when
specified.
Collapse duplicated footprint text item plot routine (they're no
longer any different from plotting pcb text items).
2023-05-28 17:20:11 +01:00
Jeff Young
14f004d2a5
Hook up text variable auto-complete for PCBNew.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14777
2023-05-25 10:24:50 +01:00
Jeff Young
2ac3f4cc9e
Undo strategy based on being in a footprint, not footprint editor.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/14799
2023-05-23 17:56:12 +01:00
Jeff Young
8b1fd62d35
Make pad & via teardrops 1st-class citizens (props of the pad/via)
...
Change teardrop generation to rely more heavily on BOARD_CONNECTIVITY
for improved performance.
Add updating of teardrops on BOARD_COMMIT::Push().
Also converts m_CopperItemRTreeCache to std::shared_ptr.
We don't copy it around anyway, and having to create a new set
of std::unique_ptr's for each operation is likely to be more
expensive than std::shared_ptr's overhead.
2023-05-19 18:02:03 +01:00
Jeff Young
daa3a1aae9
Revert addition of update-teardrops checkbox to DRC dialog.
2023-05-11 14:53:28 +01:00
Mike Williams
04a53ea40d
Picker Tools: make sure we know what tool we are
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/14621
2023-05-01 12:43:09 -04:00
Jeff Young
6807ca6f9f
Allow text input to Convert to Polygon/Zone/Keepout.
...
Also fixes non-copper zone filler to honor fill keepouts.
Fixes https://gitlab.com/kicad/code/kicad/issues/14566
2023-04-28 17:43:08 +01:00
Lucas Dumont
c781fde236
pcbnew: don't move twice
...
In pcbnew, if you press M to move your selection and press M again, then escape, you will trigger the https://gitlab.com/kicad/code/kicad/-/blob/master/common/tool/tools_holder.cpp#L106 assert
2023-04-26 15:37:18 +00:00
jean-pierre charras
2f392352b5
EDIT_TOOL::doMoveSelection(): avoid calling PushTool() and, just after,PopTool()
...
for the *same* event: TOOLS_HOLDER::PopTool() does not work fine in this case.
2023-04-26 13:00:50 +02:00
jean-pierre charras
d4cf063e40
Fix a few more doxygen errors (no actual code change)
2023-04-19 20:24:42 +02:00
Nimish Telang
51e55dd750
Convert sprintf to snprintf in most files
2023-04-17 15:39:34 +00:00
Jeff Young
2d15067453
ADDED allow update of teardrops before running DRC.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14264
2023-04-15 12:18:41 +01:00
Jeff Young
521aa5b5ae
Update DRC exclusions model to match terminology.
...
DRC exclusions were originally written following the C++
pragma model (ie: allow this violation here). However, the
"exclusion" terminology we used in the GUI suggests a model
model where the exclusions go away when the violation no
longer exists.
Fixes https://gitlab.com/kicad/code/kicad/issues/14351
2023-04-15 12:18:41 +01:00
Jeff Young
e1c9e0e6fc
ADDED memberOfFootprint() to DRC custom rules functions.
...
Also added memberOfGroup(), and deprecated memberOf().
2023-04-12 14:06:09 +01:00
Jeff Young
a9b2234f4e
Use a softer Reset for grid settings.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14458
2023-04-04 17:05:21 +01:00
Jeff Young
77639a540b
Add messages for clearance reports on footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13874
2023-04-02 19:12:19 +01:00
Jeff Young
28028c941e
Retire Local/Draw coords distinction from PAD (the last object to have it).
2023-04-02 18:02:41 +01:00
jean-pierre charras
054de5687c
Pcbnew: fix crash when trying to delete a PCB_TEXT.
2023-04-02 12:15:18 +02:00
Jeff Young
bbd6c80507
Collapse FP_* down into their PCB_* equivalents.
2023-03-31 22:57:46 +01:00
jean-pierre charras
683a327200
Footprint editor: always export the currently loaded footprint.
...
Previously, it was not always the edited footprint, but a footprint
selected from the library tree.
It was especially annoying when the footprint was loaded from the board editor:
The footprint was not the loaded footprint, but its copy from library.
2023-03-29 18:47:39 +02:00
Jeff Young
a214ac0310
Better reporting of copper <--> keepout area clearances.
...
(Keepout areas can keep-out copper, but they don't have a clearance
to copper.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14375
2023-03-26 20:57:59 +01:00
Jeff Young
bb2a0f825a
Orthogonal dimension are always cardinal, even when their start points are not.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13728
2023-03-20 21:22:11 +00:00
Jeff Young
897984aa22
Filter Selected Items... is inclusive, not exclusive.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14273
2023-03-19 20:43:18 +00:00
Jeff Young
ad5d3d4eba
Clean up items which weren't pasted from clipboard.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14335
2023-03-17 23:17:15 +00:00
Alex
8fe78101db
Don't create 0-length tracks when placing via in the middle of a track.
2023-03-16 04:53:26 +03:00
Jeff Young
37b0a5a504
Add quick DRC action for Diff Footprints.
...
Also makes the strings match the GUI better so people will know where
to find them later.
And fixes a couple of ERC items that referred to Board Setup (oops).
2023-03-14 11:52:23 +00:00
Jeff Young
a0adb59437
Update dimension units when opening PCBs in CLI.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/14170
2023-03-13 20:26:11 +00:00
Wayne Stambaugh
66f6168163
Fix mode-less dialog issues.
...
Don't assume the dialog is mode-less and call Destroy() from within a
dialog method. This will most assuredly crash if the dialog is shown
modally or quasi-modally.
Don't leak memory for mode-less dialogs created on the stack. Make sure
when the parent frame window is closed that all mode-less dialog memory
is cleaned up. Dialogs are not child windows like controls and toolbars
so their memory does not automatically get cleaned up when the parent
window is destroyed.
Do not directly access frame parent window's pointer in dialog destructors.
Apparently the tear down order when destroying mode-less dialogs is not
guaranteed so the parent window may get deleted before the dialog causing
a crash when accessing the parent window pointer from the dialog dtor.
Do not close mode-less dialogs in the parent frame's destructor. This
doesn't guarantee that the dialog(s) will be destroyed before the parent
but it may reduce some careless mode-less dialog event handling in the
future.
2023-03-13 12:04:01 -04:00
Jeff Young
74f064d3aa
Don't keep smart pointers to wxWindows, particularly modeless ones.
...
wxWindows have their own lifecycle management.
2023-03-11 19:36:01 +00:00
Jeff Young
9546a40662
Correct usage of elipses after menu items.
...
(They should only be used when we collect more info before performing
the command. If the command is something like showing the simulator,
then there should be no elipsis as we don't collect more info before
showing the window.)
Also improves a few of the menu tooltips.
2023-03-10 21:33:06 +00:00
Jeff Young
357427d803
Graphical diff for board vs library footprints.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-10 17:16:40 +00:00
Jeff Young
bc0d59801a
Graphical diff for schematic vs library symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-09 18:04:52 +00:00
Jeff Young
2d6ab62da4
ADDED: schematic/library diff for symbols.
2023-03-09 18:04:52 +00:00
Jeff Young
25623552f6
ADDED: board/library inspection for footprint differences.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13736
2023-03-06 23:08:59 +00:00
Jeff Young
c54c254f96
Don't allow footprint editor pad tools to run outside footprint editor.
...
(They can get called if a user re-assigns hotkeys to them.)
Fixes https://gitlab.com/kicad/code/kicad/issues/14166
2023-03-06 14:43:57 +00:00
Jeff Young
461def2719
Move automatic dimension processing inside PCB_DIMENSION_BASE.
...
Also move dimension precision to an enum so it can get a proper dropdown
in the properties inspector.
2023-03-05 15:19:06 +00:00
Jeff Young
23accffc6d
Add Property Inspector support for dimension objects.
...
Includes changing the class hierarchy so that dimension objects inherit
from PCB_TEXT rather than containing a PCB_TEXT member variable.
2023-03-04 23:16:46 +00:00
Wayne Stambaugh
789bf6455a
Coverity fixes and code cleaning.
2023-03-02 09:04:47 -05:00
Seth Hillbrand
1b8b216ac8
Bitmaps are not actually copper
...
We report bitmaps as being 'on' a copper layer because they are
associated with it but they are not actually physical parts so should
not be included in the DRC checks
Additionally, Bitmaps effective shape starts are the top left corner
rather than the center (unclear why that was there in the first place)
Fixes https://gitlab.com/kicad/code/kicad/issues/14065
2023-02-23 14:16:28 -08:00
Marek Roszko
aacc9746e3
Yeet the last of wxSize/wxPoint to stop leaking gdicmn everywhere
2023-02-18 22:57:18 -05:00
Jon Evans
f7d59f2e89
Enable properties panel in footprint editor
2023-02-17 20:35:56 -05:00
Alex
ecb28ddf1c
Prevent ghost image after canceling bitmap placement.
2023-02-17 03:53:44 +03:00
Jeff Young
978c2b074e
Negative clearance means test will be ignored, not rule.
2023-02-16 17:39:47 +00:00
Mike Williams
4b07e3e413
Common Actions: Find Previous
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/8968
2023-02-14 08:21:37 -05:00
Mike Williams
3e715c99c8
Swap: take S key now that it's available
2023-02-14 07:42:06 -05:00
Jeff Young
499b58f505
ADDED: user-specified gap and linewidth for bounding hull creation.
2023-02-12 23:16:45 +00:00
Marek Roszko
4665823089
Turn on and fix MSVC compliance mode issues
...
We want /permissive- to enable debug performance improvements in MSVC 17.5+.
This flag is also default under C++20 so we'll have to deal with these compile issues anyway at some point in the future.
In particular, MSVC becomes pedantic about ternary types.
See https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170#ambiguous-conditional-operator-arguments
MSFT cites https://cplusplus.github.io/CWG/issues/1805.html
2023-02-12 16:30:37 -05:00
Jeff Young
362d85ef50
Special selection mode when in high-contrast with courtyard layer active.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13521
2023-02-11 21:11:07 +00:00
Jon Evans
b888714ed5
Don't discard temporary item being placed if placement is rejected
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13697
2023-02-11 08:40:33 -05:00
jean-pierre charras
538ee12188
Pcb editor: fix crash when trying to activate the "place anchor" tool.
...
"place anchor" tool exists only in the Fp editor. However, the hotkey
to activate this tool was also active in the board editor. Now disabled.
2023-02-09 16:29:33 +01:00
jean-pierre charras
fcefb5f86d
Re-allows selection of bitmaps not owned by a footprint.
...
It was broken by my commit f8051d95
Fixes #13747
https://gitlab.com/kicad/code/kicad/issues/13747
2023-02-02 18:09:37 +01:00
jean-pierre charras
f8051d954a
Better handling of PCB_BITMAP items in a footprint.
...
- Ensure they can be erased in the FP editor
- Ensure they cannot be selected in the PCB editor (they are not show)
Fixes #13714
https://gitlab.com/kicad/code/kicad/issues/
2023-01-31 11:16:38 +01:00
Chris Morgan
ce06171561
Convert additional sprintf to snprintf
2023-01-30 16:22:03 +00:00
Jeff Young
b1018e8eeb
Relax no-zone-commands constraint on interactive placer tools.
...
These tools are initialized with an item (via/pad/microwave) so there's
no way to tell between during-placement and idle. Besides, they don't
update the ratsnest so they probably won't fall afoul of the original bug
(https://gitlab.com/kicad/code/kicad/-/issues/12736 ).
Fixes https://gitlab.com/kicad/code/kicad/issues/13686
2023-01-28 10:42:24 +00:00
Alex
52edbf91dc
Better synchronization of various ratsnest visibility controls.
2023-01-27 10:01:12 +03:00
jean-pierre charras
b2f6c13b6a
Fp editor and Fp viewer: fix missing info on msg panel after loading a fp
...
Fix also duplicate/not used code
Fixes #11404
https://gitlab.com/kicad/code/kicad/issues/11404
2023-01-25 17:47:04 +01:00
Mike Williams
b8352b07c5
PCB: Immediate mode copy should deselect if hover selecting
2023-01-19 09:45:47 -05:00
Jeff Young
f45d44a639
Don't leave temp footprints attached to a board.
2023-01-18 00:46:59 +00:00
Jeff Young
f0b2902b8c
Don't allow quit while zone filler is running.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13551
2023-01-16 16:01:45 +00:00
Jeff Young
91c5bb9175
Block user-initiated zone-fill actions, but not system ones.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13536
2023-01-15 19:16:36 +00:00
Jon Evans
c530bdb5a1
Rename GetSelectMenuText to GetItemDescription
...
This descriptive text is used for many more things than
just the select menu these days.
2023-01-11 22:27:44 -05:00
Jeff Young
2cbb66d70d
Dim other pads when in pad edit mode.
2023-01-06 11:13:57 +00:00
Jon Evans
1ccd387c8d
Exit a group when selecting a component outside it
...
We had this filter in place when doing mouse selection, but not when
the selection comes from another tool event.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13398
2023-01-05 20:32:52 -05:00
Seth Hillbrand
126225866b
Don't add footprint components to PCB group
...
Footprint components are only group-able inside of the footprint editor
Fixes https://gitlab.com/kicad/code/kicad/issues/13396
2023-01-05 15:38:07 -08:00
qu1ck
7dfa100ff0
Correctly refresh the board after action plugin run and maintain
...
selection
2023-01-05 14:05:15 -08:00
Jeff Young
cbe5340d37
Allow pads in multi-select mode when nothing else would be selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13371
2023-01-05 17:02:50 +00:00
Jeff Young
67e6603699
Move updateUnits functionality to where it can be shared.
...
Also call it when adding a footprint via the chooser.
Fixes https://gitlab.com/kicad/code/kicad/issues/13340
2023-01-02 22:12:26 +00:00
jean-pierre charras
07b4f88e6b
Pcbnew: Fillet Lines tool does not set line width and layer.
...
When fillet a polygon or a rect, the resulting lines and arcs had incorrect
width and layer.
Fixes #13338
https://gitlab.com/kicad/code/kicad/issues/13338
2023-01-02 16:52:08 +01:00
Jeff Young
20f2232d4e
Adjust dimension units when placing footprints on board.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13339
2023-01-02 12:39:35 +00:00
jean-pierre charras
e8114dc49a
Minor compil and Coverity warnings fixes.
2023-01-02 10:21:42 +01:00
jean-pierre charras
16fd586c41
Do not prune items/layers when copying the clipboard to the FP editor: all are allowed
...
(Some are disabled only for GUI)
Fixes #13334
https://gitlab.com/kicad/code/kicad/issues/13334
2023-01-01 13:35:05 +01:00
Jeff Young
4c63b4e061
Class name <-> file name sync.
2022-12-29 18:05:57 +00:00
Mike Williams
4bb1b4a3d2
Router: settings dialog fixes
...
Make keyboard activation of OK save settings instead of cancelling.
Also, fix the string for the shortcut so that it works (shortcut
unchanged).
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13303
2022-12-29 10:31:12 -05:00
Greg Davill
3b55f9e326
PCB Editor: Inform tools when selecting/unselecting net
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13308
2022-12-29 13:46:20 +00:00
Mike Williams
411efe6f3d
PCB Editor: Allow mouse drag of group-of-groups
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13076
2022-12-28 15:23:52 -05:00
Mike Williams
741d1e043a
PCB Editor: make Mirror menu items conditional
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13230
2022-12-27 14:18:47 -05:00
Jon Evans
ee0a41e3bc
Remove excess calls to SelectedItemsModified
...
We really don't want to post these events unless the *selected* items
were actually modified, since it results in a redraw of the properties
panel (which disturbs edit state and causes flicker on MSW).
Now the COMMIT system is responsible for sending this event iff the
commit touches items that are selected.
Side note: UpdateMsgPanel is useless on every app except pl_editor, so
it can probably be refactored/removed at some point.
2022-12-26 20:57:58 -05:00
Jeff Young
1f3727f548
Assigning a netclass has no meaning in fp editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13267
2022-12-26 20:33:04 +00:00
Jeff Young
5dce8323e8
KIGFX::REPAINT is not enough if the item isn't in the view.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/11656
Fixes https://gitlab.com/kicad/code/kicad/issues/13217
2022-12-24 17:18:22 +00:00
Seth Hillbrand
1cc9792cdb
Fix snapping dist when disabling grid
...
The disable grid hotkey should allow the snap scale to be completely
determined by the snapSize and world scale. This prevents snapRange
from overriding in the case where grid is disabled.
Additionally, we disallow grid snapping when the grid scale is not
visible. This means that when zoomed out sufficiently to not show the
minor ticks, these minor ticks will not override a snap
Fixes https://gitlab.com/kicad/code/kicad/issues/12303
2022-12-21 17:47:45 -08:00
Mike Williams
47dc2379d8
PCB: Fix issues with grab unconnected
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13232
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/13233
2022-12-21 15:10:19 -05:00
Alex
75053cfc57
Remove normally unused code from Move function.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13222
2022-12-21 19:06:32 +03:00
Mike Williams
5d94d2634e
PCB Editor: make locking menu items conditional
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/5202
2022-12-21 10:34:54 -05:00
jean-pierre charras
44ab6876d9
fp editor: remove useless "Unroute Selected" from context menu.
...
Fixes #13229
https://gitlab.com/kicad/code/kicad/issues/13229
2022-12-21 13:11:51 +01:00
Mike Williams
bd24e85289
PCB: Add Copy With Reference to the Positioning Menu
...
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11947
2022-12-20 11:54:05 -05:00
Jeff Young
5327ea5823
Respect selectabiltiy when adding wholy-selected groups.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13092
2022-12-15 17:57:58 +00:00
Seth Hillbrand
279edcefdc
Don't break tracks without snap
...
If the user asks to not snap to a track, we should also prevent the
track from snapping to the via
Fixes https://gitlab.com/kicad/code/kicad/issues/13142
2022-12-14 13:51:42 -08:00
Jeff Young
9d13e419c2
Reduce compiler warnings.
2022-12-13 00:47:19 +00:00
Seth Hillbrand
4fe35d0df1
More push/pop tool issues
...
We need to pop the move tool off when it doesn't find anything to act on
so that the pushed tools under it on the stack can re-activate
Fixes https://gitlab.com/kicad/code/kicad/issues/13114
2022-12-12 12:56:35 -08:00
jean-pierre charras
96a9ec4a0c
Enhance compatibility with V6.0 for Intersheetrefs fields associated to GLOBAL labels.
...
In V6.0, the identifier is "Intersheet References" and was not immediately
seen as Intersheetrefs field.
2022-12-12 16:38:04 +01:00
Jeff Young
45eae3e594
Don't Simplify() polys with arcs in them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13134
2022-12-12 12:54:34 +00:00
Alex
5e8227b54a
pcbnew: Support dragging arc center in "Keep endpoints" mode.
2022-12-12 13:00:44 +03:00
Alex
3eb31befed
Fix a delay when dragging arc endpoints in pcbnew.
2022-12-12 09:39:56 +03:00
Alex
da1e5a80a8
Restore removeCorner transition in PCB editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13133
2022-12-12 07:04:20 +03:00
Alex
b01d950071
Remove start pt when collinear with neighboring pts in zone/poly draw.
2022-12-10 06:21:54 +03:00
Alex
b4b25a7009
Fix Pack & Move footprints when working with groups.
2022-12-09 20:42:35 +03:00
Alex
c1f82d0c80
Canceling Move cancels Pack too in Pack & Move footprints.
2022-12-09 20:41:56 +03:00
Alex
3d2b1aaf90
Improve H/V/45 deg mode when drawing zones and polygons.
2022-12-09 19:11:56 +03:00
Mike Williams
0e75bf02fa
Selection: refactor modifier checking
2022-12-08 14:12:12 -05:00
Alex
6d513e7ecf
Expose changing arc edit mode in arc button context menu and Preferences
...
Ctrl+Space can still be used to cycle through modes.
Fixes https://gitlab.com/kicad/code/kicad/issues/5412
2022-12-05 21:28:16 +03:00
Graham Keeth
ef83d01455
Minor string changes: "eeschema" / "pcbnew" in tooltips, and power port terminology
2022-12-04 14:29:57 +00:00
Jeff Young
96819f6c01
Better cache invalidation for text objects with references.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13059
2022-12-04 11:51:44 +00:00
Jon Evans
0bc06d506c
Properties: reselect after canceled move
2022-12-02 21:40:21 -05:00
jean-pierre charras
93c631af44
drawing_stackup_table_tool: fix incorrect color of dielectric sublayers.
...
when a dielectric has sublayers, the printed color was always the main layer color.
2022-12-02 10:41:20 +01:00
Jeff Young
20791c99ac
Allow conversion of single track segments and vias.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13047
2022-12-01 17:15:29 +00:00
Jeff Young
6befa1c57e
A bit of cleanup to recent convert tool changes.
2022-12-01 14:53:13 +00:00
Jeff Young
4d8e73a630
Allow tracks as input to bounding hull generation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13047
2022-12-01 14:53:13 +00:00
Seth Hillbrand
b31349b679
Get consistent point for gfx import
...
TopLeftItem() should always return same element for our import
Fixes https://gitlab.com/kicad/code/kicad/issues/13041
2022-11-30 12:25:34 -08:00
Seth Hillbrand
cf33f33899
Standardize placement tool modifiers
...
PlaceImage, PlaceImportedGraphics and PlaceText need to handle the grid
and hotpoint snapping as well as the modifiers to disable them
2022-11-30 10:57:42 -08:00
Jeff Young
3c4c4e5166
Remove shortened debug time from zone refill message.
...
Also adds a time-out for it.
2022-11-30 17:38:02 +00:00
Jeff Young
074c087c21
Allow disabling of grid snapping while placing imported image.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13040
2022-11-30 14:38:22 +00:00
Jeff Young
98ab078905
Remember conversion strategy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13043
2022-11-30 14:29:16 +00:00