Seth Hillbrand
3b04b602d9
Don't walk text/labels when mirroring
...
We have a fixed bottom-align for the text and labels in eeschema.
Therefore, mirroring vertically needs to account for the text's offset
from the bounding box center.
Fixes https://gitlab.com/kicad/code/kicad/issues/9208
2021-09-22 09:24:16 -07:00
Jeff Young
ec2ac181a2
Further simplify selection logic.
...
The select-single-wire stuff is no longer needed, and the prefer-wire-ends
stuff needs to be distance-based.
Also improved wire hit-testing to include bubbles the size of the dangling
symbol at each end.
Fixes https://gitlab.com/kicad/code/kicad/issues/9187
2021-09-21 20:27:35 +01:00
Jeff Young
2ec1c215cd
Drop selection after hiding items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8605
2021-09-21 17:02:34 +01:00
Seth Hillbrand
c67d560538
Remove unused and shadowed variables
2021-09-20 11:45:27 -07:00
Marek Roszko
e7814915db
Call UpdateHierarchyNavigator on find jump in schematic in case we cross pages
...
Fix #8971
2021-09-19 08:35:51 -04:00
Jeff Young
a5c4bace60
Improve (and simplify) wire and pin hit-testing.
...
1) Expand the accuracy to at least the grid spacing
2) Move pin-selects-symbol logic to Selectable()
3) Recode pick-closest algorithm to handle exactHits and inexactHits
separately
4) Remove pin target from bounding box in favour of expanding it to
at least as wide as the pin decoration (this prevents the accuracy
off the end of the pin from growing too large)
2021-09-19 11:34:43 +01:00
Jeff Young
a291cae2fd
Make sure intersheetRef bounding boxes get updated in RTree.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9177
2021-09-18 18:32:19 +01:00
Jeff Young
4b3490a2b9
Intercept rotate command when drawing wires.
...
If unfolding from bus rotate the label; otherwise beep.
Fixes https://gitlab.com/kicad/code/kicad/issues/9178
2021-09-17 22:01:17 +01:00
Jeff Young
5c07441e24
Remove Setup Dialog assignment of netclasses to buses.
...
Also removes the message bar display of assigned netclass for
buses and bus-to-bus entries.
Also fixes a bug where assigning a netclass via the canvas only
looked at the first level of bus members (and not any nested
members).
Also fixes a bug where the bus name validator tried to validate
a vector bus first -- which doesn't work as a vector bus may be
nested in a group bus.
Also fixes a bug where we were failing to check for illegal
chars in bus definitions which otherwise passed the bus parsers.
See additional comments in the bug report.
Fixes https://gitlab.com/kicad/code/kicad/issues/9160
2021-09-17 22:01:17 +01:00
jean-pierre charras
ca33ec05df
Eeschema: fix incorrect rotation (CW versus CCW) of some items.
...
For some (not all) items and for blocks the rotation CCW was in fact a CW rot.
Fixes #9176
https://gitlab.com/kicad/code/kicad/issues/
2021-09-17 18:30:23 +02:00
Jeff Young
cc14dfe3ca
Make canvas netclass assignment mirror Setup Dialog assignment.
...
While it would make more sense to have them both use the old canvas
algorithm (of only assigning to the members), I'd be *very* hesitant
to change the Setup Dialog and underlying machinery this late in the
6.0 release.
Fixes https://gitlab.com/kicad/code/kicad/issues/9160
2021-09-17 14:40:12 +01:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Jeff Young
3aae3c6f65
Dark mode for a bunch of HTML dialogs.
...
WX_HTML_REPORT_BOX
WX_HTML_REPORT_PANEL
HTML_MESSAGEBOX
DIALOG_DISPLAY_HTML_TEXT
Fixes https://gitlab.com/kicad/code/kicad/issues/9157
Fixes https://gitlab.com/kicad/code/kicad/issues/9156
2021-09-14 21:23:57 +01:00
Seth Hillbrand
484eaa01b9
Try harder to avoid loop contention
...
We have two cases where we might be requesting a disambiguation menu.
In one case, we already have the event loop waiting and we need to run
the selectionMenu through the action system. In the other case, the
tool isn't on the stack and won't activate. Here we need to run
directly and we are assured of not crashing because the tool isn't
active.
Fixes https://gitlab.com/kicad/code/kicad/issues/9154
2021-09-13 10:17:04 -07:00
Jeff Young
fdfecf5932
Don't push view control settings to the previous active tool.
...
See further comments in bug report.
Fixes https://gitlab.com/kicad/code/kicad/issues/9147
2021-09-13 13:28:05 +01:00
Jon Evans
558ba855a2
Copy default hotkey for Clear Highlight from pcbnew to eeschema
2021-09-12 17:38:02 -04:00
Jon Evans
ed342d0cc0
Do not clear highlighting on a cancel event
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9035
2021-09-12 17:35:44 -04:00
Seth Hillbrand
29c2f3b7d4
Prevent jumping into disambiguation if moved
...
Moving points should not be overrided by disambiguation menu, so we
track where the disambiguation event started and only trigger the menu
if the mouse hasn't moved a full unit in x/y
Fixes https://gitlab.com/kicad/code/kicad/issues/9132
2021-09-09 16:24:18 -07:00
Wayne Stambaugh
451f8eefc0
Eeschema: fix broken project symbol rescue bug.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9111
2021-09-09 10:21:09 -04:00
Seth Hillbrand
c8b2e69332
Check if selection is primary tool
...
Previously, we were checking if the selection tool was the top of the
stack but this ignored many other "secondary" tools that might be
running such as the point editor. These still allow the selection tool
to handle events such as clicks. This change allows the selection tool
to handle clicks when it is the primary tool on the stack rather than
the top
Fixes https://gitlab.com/kicad/code/kicad/issues/9110
2021-09-07 10:42:01 -07:00
Wayne Stambaugh
4ee0b28ffc
Coverity issue fixes.
...
Fix Coverity issues 338623, 338716, and 338717.
2021-09-07 13:38:56 -04:00
Seth Hillbrand
0f38a35531
Be sure to stop the timer when triggering d-click
...
Some mice apparently trigger double-click without triggering a click, so
stop the timer when we receive this event
Fixes https://gitlab.com/kicad/code/kicad/issues/9106
2021-09-06 12:27:31 -07:00
Seth Hillbrand
240c3b75c4
Move selection disambiguation to long-click
...
This standardizes selection tools in SELECTION_TOOL class to be able to
handle a long-click as asking for a non-heuristic disambiguation menu.
Fixes https://gitlab.com/kicad/code/kicad/issues/8490
2021-09-05 13:42:51 -07:00
Marek Roszko
74b8f14ec3
Don't find when the dialog isn't open or the search is blank (which resulted in full highlighting)
...
Fix #9056
2021-09-04 23:48:06 -04:00
Seth Hillbrand
b0ba8b01c4
Update RTree when rotating components
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9061
2021-08-31 16:36:38 -07:00
Seth Hillbrand
345f506f0c
Ignore STARTPOINT/ENDPOINT in multiple item rot
...
Rotating multiple items does not allow for individual end points to be
selected. This can happen when we narrowSelection by hovering on end
points.
2021-08-31 14:34:05 -07:00
Roberto Fernandez Bautista
3e32c2e5a7
eeschema: Make pasted text left aligned so that it is editable
...
Previously it was pasted as centre aligned, which is not supported in
the GUI.
2021-08-31 20:02:20 +01:00
Wayne Stambaugh
897269f33f
Eeschema: schematic object context menu improvements.
...
Don't show the clean up sheet pins context menu entry when the selected
sheet doesn't have any pins to clean up.
Remove sheet has no pins to clean up nag dialog now that the context menu
entry isn't shown unless there are pins to clean up.
2021-08-30 11:52:40 -04:00
Jeff Young
6c16846b21
Remove unused lambda.
2021-08-30 13:44:28 +01:00
Jeff Young
9da8f04cb4
Cleanup sheet pins doesn't make any sense when drawing sheets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/9044
2021-08-30 13:11:37 +01:00
Seth Hillbrand
871bdbc952
Search sheets in hierarchy-order
...
Also fixes an issue where multiple sub-sheets were skipped in certain
cases
Fixes https://gitlab.com/kicad/code/kicad/issues/8972
2021-08-27 13:03:18 -07:00
Mike Williams
d18d993eac
Eeschema: find next key shouldn't launch find dialog
...
Adds some general cleanups of overridden find functions while I'm in there.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8967
2021-08-27 18:15:36 +00:00
Jon Evans
0463fc4c2b
Fix several bugs and refactor schematic saving
...
Having the logic split between three different paths was
a bit much, this should hopefully be a bit easier to
maintain. All save logic now goes through SaveProject;
individual file writing is now a private function.
Also change Save As to Save Copy As in project manager
mode, as we don't want to change projects from inside
the editor in project manager mode.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9015
2021-08-23 23:01:08 -04:00
Wayne Stambaugh
1d8fd22cd8
Symbol editor: fix message panel units when selecting from combo box.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8991
2021-08-20 15:45:57 -04:00
Seth Hillbrand
75e4fa9b75
Handle multiple annotation in search
...
New schematic format needs to search client screen paths instead of
maintaining multiple copies in a flat format.
2021-08-20 10:24:08 -07:00
Seth Hillbrand
729ba1e301
Ensure deterministic Find/Replace ordering
...
Sorts first by x and then by y when returning search order
Fixes https://gitlab.com/kicad/code/kicad/issues/8972
2021-08-20 08:42:06 -07:00
Jeff Young
fc4d748bdc
Fix bugs in sheets.
...
1) Default_line_width is in mils, not IU.
2) Plot sheet fields.
Fixes https://gitlab.com/kicad/code/kicad/issues/8984
2021-08-17 13:21:52 +01:00
Jon Evans
766b67a8f1
Tune selection of wire endpoints near other objects
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8941
2021-08-12 22:04:24 -04:00
Jeff Young
6eb59b9d9e
Dialog naming conventions.
2021-08-06 20:54:26 +01:00
Jeff Young
95b87ba29a
Freshen microwave polygon dialog and remove a bunch of dead code.
2021-08-03 01:11:11 +01:00
Jeff Young
d40712d9d6
Formatting and message consistency.
2021-08-01 21:31:23 +01:00
Jeff Young
c716548b29
Enable autoplace whenever sel contains at least 1 field owner.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8886
2021-07-29 20:23:56 +01:00
Jeff Young
539d14ce94
Fix hang-over from legacy canvas where we only looked at sel head.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8886
2021-07-29 16:52:22 +01:00
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
...
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01: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
f233f4a0a9
Expunge EDA_FILE_SELECTOR.
...
EDA_FILE_SELECTOR was just an obfuscation of wxFileSelector().
2021-07-28 14:12:51 -04:00
Jeff Young
19de38bbae
Avoid Mac-standard Cmd+H as well.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8864
2021-07-27 22:26:13 +01:00
Mike Williams
2c766bdb2b
Eeschema: fix assigning netclass to buses
...
Buses with at least one member can use assign netclass functionality to
set all members to that netclass.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8743
2021-07-27 20:48:25 +00:00
Jeff Young
dd5676f4bc
Implement a safer (RAII) tool re-entrancy guard.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8873
2021-07-27 16:37:34 +01:00
Wayne Stambaugh
78e5e98ea0
Pass VECTOR2I objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Wayne Stambaugh
8fd83cbb95
Pass wxPoint objects by reference instead of on the stack.
2021-07-26 15:35:33 -04:00
Mike Williams
13a03f77d3
Eeschema: Fix for delete key in wire tool
...
Delete key was not working for items selected with wire tool active.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8841
2021-07-25 15:17:49 -04:00
jean-pierre charras
1aadf45947
DIALOG_SHIM: fix not working initial size when creating a dialog.
...
The first time a DIALOG_SHIM was created, with a given size, this size
was not taken in account. This this is now forced.
(when recreated during a session, this is the last dialog size that is used)
2021-07-24 18:59:28 +02:00
jean-pierre charras
dbf17f83ed
Minor fixes (DIALOG_DISPLAY_HTML_TEXT_BASE: ensure min size is working).
2021-07-24 17:03:36 +02:00
jean-pierre charras
9820e89268
EE_INSPECTION_TOOL::CheckSymbol(): fix incorrect test about pins on grid.
...
(the minimal grid was 25 internal units instead of 25 mils)
Also the coordinates in messages are now printed in current user units.
2021-07-23 18:23:25 +02:00
jean-pierre charras
bff0307ac0
Edit pin number: fix a crash when a pin is common to all units (i.e. having a unit id = 0)
...
Fixes #8824
https://gitlab.com/kicad/code/kicad/issues/8824
2021-07-20 16:49:53 +02:00
Jeff Young
4317848cfe
Only title-caps "our" field names.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8803
2021-07-19 14:43:57 +01:00
Wayne Stambaugh
cb72da294a
More NULL expunging.
2021-07-16 16:13:41 -04:00
Jeff Young
0b4bb9378b
Use consistent terminology.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8777
2021-07-12 11:59:07 +01:00
Jeff Young
46701c1195
Don't allow undo record to get pushed during an undo.
...
When doing a schematic cleanup, for instance, we were breaking wires
and pushing undo records on to the stack. Needless to say, this was
pretty unexpected for the rest of the undo framework and caused all
kinds of mayhem (including crashes in some cases).
Fixes https://gitlab.com/kicad/code/kicad/issues/8704
2021-07-08 19:43:15 +01:00
Mikolaj Wielgus
1c28ea0577
Do not create selection with simulator probe tool
2021-07-08 03:15:15 +00:00
Jeff Young
66eb2ddeb5
Remove auto when not needed for line length.
2021-07-07 20:05:50 +01:00
Jeff Young
f46486bc3e
Naming conventions.
2021-07-03 21:43:57 +01:00
Jeff Young
04764c9224
Allow dragging of fields in symbol aliases.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8698
2021-07-01 21:03:53 +01:00
Wayne Stambaugh
175b474c3e
Coverity issue fixes.
...
Fixes issues #280412 , #314755 , #329615 , #332459 , #332157 , #332167 ,
2021-06-30 18:08:49 -04:00
Jeff Young
b1b4caee6a
Escape "naughty" characters in symbol names.
...
It's tempting to say that we don't need to exclude filename chars
from symbols, but we might regret that decision down the road. Better
to just escape them.
Fixes https://gitlab.com/kicad/code/kicad/issues/8694
2021-06-30 13:12:57 +01:00
Jeff Young
a1dfc36233
More error message regularization.
2021-06-29 01:08:26 +01:00
Roberto Fernandez Bautista
466536d509
Make sure hierarchy is up to date before checking duplicate sheet names
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8654
2021-06-22 21:41:50 +01:00
Jeff Young
b72545a432
Implement more aggressive re-entrancy blocking for drawing tools.
...
A similar strategy was already implemented in Eeschema.
Also adds some safety around clearing of autopan and mouse capture.
Fixes https://gitlab.com/kicad/code/kicad/issues/6909
2021-06-20 11:09:55 +01:00
Jeff Young
389287e942
A bit more Part -> Symbol.
2021-06-17 22:24:41 +01:00
Jeff Young
0484ca5564
Separate LIB_PIN and SCH_PIN GetShownName/Number processing.
...
SCH_PIN wasn't handling the legacy empty string token (~), but
more importantly this will allow text variable resolution specific
to the schematic.
Fixes https://gitlab.com/kicad/code/kicad/issues/8625
2021-06-17 10:52:46 +01:00
Wayne Stambaugh
ff099453c8
Rename class_library.[h|cpp] to symbol_library.[h|cpp].
2021-06-15 09:24:55 -04:00
Wayne Stambaugh
ee3eac325d
Expunge the use of the word part from Eeschema code.
2021-06-15 08:32:11 -04:00
Wayne Stambaugh
fb46cd8bc5
Expunge the use of the word component from Eeschema code.
...
The only exception to this is the SPICE simulator's use of component
when referring to physical component (R, L, C, etc.) values.
2021-06-14 14:00:21 -04:00
Wayne Stambaugh
71c183d7bb
Rename LIB_PART to LIB_SYMBOL.
2021-06-14 07:11:17 -04:00
Jeff Young
a1a48a4c42
Don't allow rotation/mirroring while dragging.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8523
2021-06-13 20:22:25 +01:00
Jeff Young
d9cb5a3015
Make sure text gets rotated, not just position.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7964
2021-06-13 20:22:25 +01:00
Jeff Young
bcdec0dea7
Move '~' pin name processing to LIB_PIN and SCH_PIN.
...
This will also allow us to do variable processing in the future if
desired.
2021-06-12 19:54:34 +01:00
Wayne Stambaugh
fbc135e69f
Rename SCH_COMPONENT to SCH_SYMBOL.
2021-06-10 10:34:49 -04:00
luz paz
5f1e9bc8a7
Fix typos in source code
2021-06-10 01:24:15 +00:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Ian McInerney
dc27079b71
cleanup tool event and tool action includes
2021-06-06 18:26:26 +01:00
Jon Evans
9ffa2955b7
Fix drag of bus wire creating net wires
2021-06-03 22:29:04 -04:00
Marek Roszko
4df3cb912d
Remove another leaky wx/log.h header
2021-06-03 08:11:15 -04:00
Marek Roszko
b5b76eedf7
Avoid sharing gdicmn for just bitmaps
2021-06-03 01:46:04 -04:00
Ian McInerney
f03ca3259e
Remove unused Boost code/includes
2021-06-02 18:39:43 +01:00
Seth Hillbrand
c7d188a8d0
Centralizing SCRIPTING class
2021-06-01 20:18:24 +00:00
Jeff Young
c4cabb38d5
More worksheet -> drawing sheet cleanup.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8516
2021-05-31 12:26:44 +01:00
Jeff Young
0598c82972
Terminology (use present tense for flags).
2021-05-31 12:26:44 +01:00
Jeff Young
1be2c8cc40
More trouble with the IS_MOVED flag.
...
We moved it earlier because AddItemToScreenAndUndoList() was clearing
it, but it needs to be set for AddItemToScreenAndUndoList() too.
Fixes https://gitlab.com/kicad/code/kicad/issues/8289
2021-05-31 12:26:44 +01:00
Marek Roszko
3ac5aa5369
enum class SHEET_SIDE
2021-05-30 21:23:46 -04:00
Roberto Fernandez Bautista
3fa8795f26
Fix crash in LIBEDIT when editing pins
...
Units in library items start at 1. 0 is reserved for "all units".
Previous code was requesting an out of range index due to an assumption
that units start at 0.
2021-05-28 20:13:11 +01:00
Jeff Young
42eae27551
Rebuild selection after heavy lifting.
...
Undo does some fairly major redraws (including setting the current
screen), all of which drop the selection and cancel interactive tools.
Make sure the selection is re-built *after* all those run.
Fixes https://gitlab.com/kicad/code/kicad/issues/8492
2021-05-27 14:25:37 +01:00
david-beinder
64cd401bdb
Delete Tool: Fix missing "Item Locked" popup
...
Fixes problem identified in https://gitlab.com/kicad/code/kicad/-/issues/8392
Removes same popup from schematic tool because SCH_ITEM can not be locked
2021-05-27 05:38:51 +00:00
Jeff Young
45ba067642
Update SCH_SCREENs RTree after placing new symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8451
2021-05-25 15:10:10 +01:00
Roberto Fernandez Bautista
6b764f893a
Assign a page number to all sheet instances when adding a sheet
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8208
2021-05-21 22:52:40 +01:00
Roberto Fernandez Bautista
5cf3e6d31a
eeschema: Duplicate() is a Copy() followed by a Paste()
...
The only subtle difference is that Duplicate() does not modify the
clipboard contents so we need to keep a local variable in which to
store the result of a Copy()
2021-05-21 22:52:34 +01:00
Wayne Stambaugh
ebd53cd45c
Eeschema: fix text justification terminology.
...
Use justification instead of orientation relative to the anchor point when
describing text direction and alignment. This seems to be the preferred
method by most users so hopefully this will eliminate some confusion.
Fix a bug in the s-expression schematic parser that failed to take into
account how graphical text alignment is defined for graphic text objects
compared to label text objects.
Fixes https://gitlab.com/kicad/code/kicad/issues/6489
2021-05-14 13:44:17 -04:00
Jeff Young
2a856890e6
Allow connections between sheet (pins) and symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8305
2021-05-12 00:07:17 +01:00
Jeff Young
7356f9568d
Move grid disable modifier from ALT to CTRL.
...
Also had to move the H/V/45 disable modifier from CTRL to SHIFT.
Fixes https://gitlab.com/kicad/code/kicad/issues/8124
2021-05-09 20:17:40 +01:00
Jeff Young
7c66a0a594
Selection routines should never be snapped.
2021-05-09 18:14:41 +01:00
Jeff Young
f03152a548
Add some more tools to the "don't allow tool loop interruption" set.
...
See also b78ba12739
.
Fixes https://gitlab.com/kicad/code/kicad/issues/8071
2021-05-09 17:30:32 +01:00
Jeff Young
b78ba12739
Don't allow activation of other tools in the middle of a move.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8116
2021-05-08 20:49:51 +01:00
david-beinder
063f26531c
Make LIB_PART::GetPins() return data for derived symbols
...
https://gitlab.com/kicad/code/kicad/-/issues/8212
2021-05-06 22:00:06 +00:00
Ian McInerney
5378cacee3
Don't make a copy when looping
2021-05-06 21:56:21 +01:00
Jeff Young
2e3860de6f
Naming conventions.
2021-05-05 22:58:40 +01:00
Roberto Fernandez Bautista
f2677340f2
Access the new paste behaviour via a new Paste Special... dialog
...
ADDED Paste Special... action in pcbnew
CHANGED Additional options for Paste Special... in eeschema, including
"Assign unique reference designators to pasted instance"
2021-05-03 19:38:32 +01:00
Roberto Fernandez Bautista
98c8f43320
eeschema and pcbnew paste: consistent paste behaviour
...
Duplicates are reannotated on paste in the same way in pcbnew and
eeschema such that when copying and pasting the same block in the
pcb and schematic, the reference designators will match.
2021-05-03 19:38:32 +01:00
Roberto Fernandez Bautista
5822cd85c4
Fix eeschema copy/paste: save and load sheet and symbol instances
...
Save sheet and symbol instance information to the clipboard on copy
Load sheet and symbol instance information from the clipboard on paste
and renumber page numbers after loading.
Correctly handle pasting in a multiple hierarchy by ensuring symbol and
sheet instances are updated for all instances of the destination sheet.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8207
2021-05-03 19:38:31 +01: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
Jeff Young
1ed54d2314
Make sure find/replace respects different values in the hierarchy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8328
2021-04-30 18:39:21 +01:00
Roberto Fernandez Bautista
9b35757e18
Refactor AppendSymbol and AppendMultiUnitSymbol
2021-04-30 11:03:21 +00:00
Roberto Fernandez Bautista
0c91bea751
Fix eeschema reannotation: ensure no duplicate references are created
...
Also implements reannotation of a selection
ADDED: Ability to reannotate a selection in eeschema
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2209
2021-04-30 11:03:21 +00:00
Wayne Stambaugh
54e18f6b1f
Pcbnew: remove update schematic option for geographical annotation dialog.
...
REMOVED: Update schematic option from geographical annotation dialog due
to potential issues with incomplete and/or broken updates. Use "Update
Schematic from PCB" tool to update reference designation changes.
Forcing the footprint reference designator changes back to the schematic
without checking any other board changes in the schematic could leave the
schematic in a undefined state. The update schematic from board tool is
the correct method to sync any changes from the board.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8042
2021-04-22 12:45:59 -04:00
Jeff Young
620aa315f6
Show infobar error when asking for empty datasheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8260
2021-04-21 15:40:59 +01:00
Jon Evans
afe0c79a1e
Sheet pins need new UUIDs, too
2021-04-18 22:14:15 -04:00
Jon Evans
1e52f0a180
Make sure pasted symbols get new pin UUIDs
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8218
2021-04-18 21:53:38 -04:00
jean-pierre charras
15353e3c33
Eeschema: when placing a new symbol or image, avoid starting the autopan.
...
When activate the new symbol placement, the mouse cursor is outside the canvas.
Therefore a autopan was started and not so easy to stop.
Now the mouse cursor (and the graphic cursor) are moved to a better location inside the canvas.
Fixes #8156
https://gitlab.com/kicad/code/kicad/issues/8156
2021-04-11 18:01:25 +02:00
Jeff Young
cc956695ae
Hit test for worksheet before adding Properties to menu.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8171
2021-04-11 14:18:35 +01:00
Jeff Young
21d4197eab
Apply SPECIAL_CASE_LABEL_INFO architecture to one-ended-drag.
...
We've been doing this for some time to wires that are attached to
the moving block (and therefore have the other end anchored). However
we also need to apply it when dragging a single end of a wire.
Fixes https://gitlab.com/kicad/code/kicad/issues/7807
2021-04-07 14:40:07 +01:00
Jeff Young
30a073c2bb
Cleanup.
2021-04-07 14:40:07 +01:00
Jeff Young
895f3de455
Formatting.
2021-04-07 14:40:07 +01:00
Wayne Stambaugh
2b86b34124
Eeschema: split out SCH_SHEET_PIN declarations into separate header.
2021-04-06 17:15:49 -04:00
Roberto Fernandez Bautista
7d9ee76f64
Don't iterate through m_selection if deleting items from it
...
Use the copied container saved_selection instead
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8126
2021-04-05 18:40:40 +00:00
Ian McInerney
e08387ce3d
Make the GAL responsible for the native cursor management
...
The native cursor must be set on the GAL canvas wx object,
not its frame (otherwise on GTK the cursor is only set
when we get a request for it from the WM and not immediately).
Fixes https://gitlab.com/kicad/code/kicad/issues/6421
2021-04-05 02:36:12 +01:00
Jeff Young
329577cc5c
Add new text items/labels to the selection so rotate/mirror/etc. work.
...
Also clears the selection after finding the sheet in the sheet pin
case so that the sheet itself doesn't get rotated/mirrored/etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/8108
2021-04-03 19:41:24 +01:00
Jeff Young
32e8a17cc0
Fix nullptr error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8102
2021-04-03 11:15:11 +01:00
Ian McInerney
bb95761642
Remove unused variable
...
item is already an SCH_ITEM, so the static cast is pointless.
2021-04-02 19:26:22 +01:00
Jeff Young
c7d689a022
Show field children when creating new labels.
...
And in particular, show reasonable intersheet reference facsimiles.
2021-04-02 15:15:07 +01:00
Ian McInerney
0a0935e0f3
Remove ACTIONS::TranslateLegacyId and TOOL_DISPATCHER::DispatchWxCommand
...
After commit 9535153f9e
there were no more IDs inside the legacy ID
system. Therefore the entire system for dispatching and looking up
the legacy ideas and handling those events can now be removed and
the tool dispatcher simplified (it no longer needs to know about
the ACTIONS class).
2021-03-30 23:20:22 +00:00
Jeff Young
f2e68e68d0
Add "Hide Tree" context menu options when tree has no selection.
...
Also cleans up some other code to be more consistent between symbol
editor and footprint editor.
Fixes https://gitlab.com/kicad/code/kicad/issues/8052
2021-03-29 12:02:00 +01:00
Jeff Young
14e73d24dc
Naming conventions.
2021-03-29 11:46:05 +01:00
Jeff Young
455e7dc3a8
Reorder for better readability and consistency.
2021-03-29 11:04:06 +01:00
Jeff Young
1b163c5dd3
Don't eat delete event when there's no item being drawn.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8061
2021-03-29 10:59:45 +01:00
Jeff Young
0561ce903e
Don't remove IS_MOVED flag too early.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/8056
2021-03-28 20:05:41 +01:00
Jeff Young
c32932a311
Naming conventions.
2021-03-28 20:05:41 +01:00
Ian McInerney
42c6af4bd8
Cleanup ACTION_MENU creation in some places
...
The ACTION_MENU constructor now takes the tool as an argument,
so the call to SetTool() immediately following it can be removed
and the tool just passed into the constructor.
2021-03-27 19:16:58 +00:00
jean-pierre charras
bbd7b4ca8c
Eeschema, selection tool: uniformize the cursor shape and the actual modifiers.
...
SHIFT, CTRL, ALT modifier keys were handled in 2 different codes, one for
the selection tool and another to modify the mouse cursor shape, with 2
different configs.
Now the modifiers are managed from only one function.
Pcbnew: group also SHIFT, CTRL, ALT modifier keys management to a specific function.
Fixes #8021
https://gitlab.com/kicad/code/kicad/issues/8021
2021-03-25 10:28:20 +01:00
Wayne Stambaugh
b37b7d53b4
Fix geographic annotation bug when back annotating to schematic.
...
For some reason, the footprint UUID was being prefixed to the sheet path
which caused the symbol look up by sheet path to fail. An option was
added to not do this when the geographical back annotation to the schematic
is performed.
2021-03-24 09:57:36 -04:00
Roberto Fernandez Bautista
be51be22a7
Update Page Number when Duplicating or Pasting sheets
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7872
Also, update hierarchy before renaming pasted sheets
Avoids duplicate sheet names when pasting multiple sheets
2021-03-23 02:48:07 +00:00
Jeff Young
cf4cbea8a1
Use a more robust storage of items added to drag.
...
We kept having various issues of the pointer list going stale. This
will prevent all permutations of that.
Also while I was in there I fixed the double-move thing (see bug
number).
Fixes https://gitlab.com/kicad/code/kicad/issues/7910
2021-03-22 13:51:10 +00:00
Jon Evans
c5c348538e
Fix some STL asserts in EE_SELECTION_TOOL
2021-03-21 22:01:45 -04:00
Jon Evans
c04e19f9ac
Include optimization: move some things from common.h to point-of-use
2021-03-20 12:09:18 -04:00
Jeff Young
f0e6f812ff
Edit One Field improvements.
...
1) Accept <enter> as OK if the multiline textbox isn't shown.
2) Focus and select all in first control if multiline textbox isn't shown.
3) Make title be title caps ("Edit Sheet name Field" looked dorky).
Fixes https://gitlab.com/kicad/code/kicad/issues/7940
2021-03-20 00:41:09 +00:00
Jeff Young
2e129d9b47
Naming conventions and other cleanup.
2021-03-19 23:06:19 +00:00
Jon Evans
4b46c0c954
Make sure nested settings get released in dtor
...
Also fix a crash if sim window can't be created because
ngspice shared library could not be found
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7969
2021-03-19 19:04:27 -04:00
Jeff Young
e206a9d39a
Naming conventions.
2021-03-18 12:28:24 +00:00
Jeff Young
cc70a9fa98
New components must be added to the screen.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7952
2021-03-18 12:28:24 +00:00
Jeff Young
35d17929ff
Add specific warning for no symbol library selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7954
2021-03-18 12:28:24 +00:00
Jeff Young
7e682e9948
Don't allow pins on corners.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7917
2021-03-16 22:03:08 +00:00
Jeff Young
30fdba4cbb
Finish grid-snapping impl.
2021-03-16 22:03:08 +00:00
Mikolaj Wielgus
ee4bc8b1d0
Fix default line width for symbol editor graphic items, add validation
...
There was a mils to iu conversion missing for line width (the default
values are in mils).
Fixes https://gitlab.com/kicad/code/kicad/issues/7813
2021-03-16 13:50:41 +00:00
Jeff Young
2bafc1af00
Give up on using preview layer for PlaceComponent.
...
1) Cloning the component fails to select all its pins.
2) Something about the layer compositing causes light selection shadows
to get even lighter. The default pretty much disappears.
Fixes https://gitlab.com/kicad/code/kicad/issues/7908
2021-03-15 19:04:59 +00:00
Jeff Young
573dd36515
Handle <delete> in move and drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7924
2021-03-15 14:23:54 +00:00
Jeff Young
afab60ae06
Fixes for autoplace fields.
...
1) Don't factor in pin names when computing symbol body boundingbox.
2) Grid-snap only in the axis corresponding to the layout side.
3) We only need interline spacing *between* lines, not for each line.
4) Also cleans up the unit checking logic as the unit can't be more
than 0 unless it's a multi-unit symbol.
Fixes https://gitlab.com/kicad/code/kicad/issues/7907
2021-03-15 02:23:29 +00:00
Jeff Young
7415bf0c62
Don't hide (or disable) options if it's not obvious why.
...
It deprives us of the opportunity to inform the user what the conditions
are.
2021-03-15 02:23:29 +00:00
Jeff Young
e34734c230
Make sure pasted sheet instances get added.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7872
2021-03-13 16:34:30 +00:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Jeff Young
068e85c567
Reset moved flag after completing move.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7818
2021-03-10 16:00:28 +00:00
Jeff Young
e48f86bfd6
Move default assignment on Mac.
...
CHANGED: add corner and repeat last command now default to 'I' instead
of '<insert>' on Mac.
1) wxWidgets doesn't currently display the correct graphic in the menu
for the insert key
2) Mac laptops don't have an instert key
Fixes https://gitlab.com/kicad/code/kicad/issues/5016
2021-03-10 13:35:04 +00:00
Jeff Young
8be3ff5a0a
Perform a slightly more aggressive cleanup.
...
Also removes the functionality that selects the newly-added item as
we don't do that with any of the other drawing tools.
Fixes https://gitlab.com/kicad/code/kicad/issues/7833
2021-03-09 21:42:35 +00:00
Jon Evans
720147d272
Remove transitive inclusion of bitmaps.h
2021-03-07 16:08:57 -05:00
Jeff Young
22b4a74bfa
Don't forget intersheet refs when collecting non-view items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7819
2021-03-07 15:04:01 +00:00
Jeff Young
3ab1ef7b83
Formatting.
2021-03-07 15:04:01 +00:00
PJM
0fc8a9d89a
Eeschema: Fix ctrl-MMB double click to perform 'Zoom to Objects'
...
CHANGED: Ctrl-middle mouse button double click should perform
'Zoom to Objects' in Eeschema, but a change in modifier key handling
broke it. This MR restores the functionality.
Fixes https://gitlab.com/kicad/code/kicad/issues/7803
2021-03-04 22:43:03 -08:00
Jon Evans
4ddb942ec0
Do not allow drag selection or drag move when already moving something
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7800
2021-03-04 19:01:31 -05:00
Wayne Stambaugh
7a00e01b3e
Eeschema: fix false positive library symbol changed ERC errors.
...
This fix required sorting all of the LIB_PART draw items to ensure
accurate comparison between the symbols stored in the schematic and the
original library symbols. This has a noticeable impact on symbol library
load performance. It may also cause significant changes the next time
the library is saved due to changes in the draw item sorting. Hashing
may be a better solution here but this addressed the immediate problem.
A skeleton method SCH_SCREEN::SwapSymbolLinks() was added because there
is most likely an issue with orphaned symbols in the schematic library
symbol cache during undo/redo operations. More testing is required to
verify this.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7263
2021-03-04 17:59:24 -05:00
Jon Evans
1fc399fa31
Fix a few more cases of picking up wrong mouse positions
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-03 20:09:24 -05:00
Ian McInerney
908de37e7c
Don't hardcode the file extensions where possible
2021-03-03 01:13:59 +00:00
Jonathan Haas
f90164f7cf
Fix some typos and improve wording
2021-03-02 19:13:49 +01:00
Jon Evans
375cd12258
Eeschema: never replace event position in wire drawing tool
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7745
2021-03-01 12:17:18 -05:00
jean-pierre charras
9797bc5f25
Left Mouse Button: use same modifiers for Pcbnew, Eeschema and pleditor for selection.
...
It also means the "force disambiguation menu" uses now Ctrl in Eeschema and pleditor.
2021-02-25 08:22:35 +01:00
Seth Hillbrand
0bab025832
Fixup toolchaining for immediate mode
...
The move tool can stack on others, so when we re-enter the previous tool
this caused another immediate action. We flag re-entry in the tool
stack to check for this and avoid unexpected tool starts
2021-02-24 10:44:54 -08:00
Jeff Young
2fd5f25c3c
Allow expand selection to work (even if you probably can't get there).
...
I think the guessSelectionCandidates narrows down to a single item
in 99.9% of cases, so we can probably remove this entirely. But for
now it's safer just to fix it.
2021-02-24 14:12:32 +00:00
Wayne Stambaugh
1786ae8773
Eeschema: use symbol nomenclature for object file naming.
2021-02-24 08:48:02 -05:00
Seth Hillbrand
0518d9c546
Add more force-immediate tools
2021-02-23 17:05:03 -08:00
Seth Hillbrand
005622027f
Add component/footprint is always immediate
...
When a user clicks on the "Add Component", "Add Power" or "Add Footprint"
icon, they want to add the item. Requiring an extra click on the screen
before selecting the component/footprint is not needed.
2021-02-23 16:15:31 -08:00
Jeff Young
7318417ca4
Fix typo in expand-selection-disambiguation menu logic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7654
2021-02-23 22:09:00 +00:00
Jeff Young
c0487e5c87
Don't leave the cursor position forced.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7665
2021-02-23 21:43:41 +00:00
Jeff Young
8755f55956
Fix copy-paste error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7674
2021-02-23 17:50:11 +00:00
Jeff Young
a9ea617069
Add some defensive code for double-moves.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7665
Fixes https://gitlab.com/kicad/code/kicad/issues/7502
2021-02-23 16:38:18 +00:00
Jeff Young
9eb2113a50
Make TwoClickPlace cursor handling match SingleClickPlace.
2021-02-23 15:28:45 +00:00
Jeff Young
d7b6d4a541
Warn user when placing a junction is just going to remove it again.
...
Also removes a duplicate call to SaveCopyForRepeatItem (which has
already been done in AddItemToScreenAndUndoList).
Fixes https://gitlab.com/kicad/code/kicad/issues/7651
2021-02-23 12:51:15 +00:00
Jeff Young
a3b9e8ddb4
Round 2 of Worksheet -> Drawing Sheet.
2021-02-23 11:57:44 +00:00
Jeff Young
cad5198ab7
Worksheet -> (industry standard) Drawing Sheet.
2021-02-22 17:35:46 +00:00
Jeff Young
09d3667bce
Fix bone-headed mess up of two-click-place.
...
Original architecture was to pass KICAD_T in to specify what kind of
object you wanted. That didn't work well with things like cursor
shape so it was moved to setting booleans based on the ACTION. When
I cleared out the old KICAD_T stuff I missed one case where it was
still used. That is now corrected as well.
Fixes https://gitlab.com/kicad/code/kicad/issues/7651
2021-02-22 11:54:03 +00:00
Jeff Young
781d293b60
Add option for text updating to Update Symbol.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6420
2021-02-22 00:36:40 +00:00
Jeff Young
afb4bbde47
Bug fixes to Eeschema context menu.
...
1) Fix typo in SingleSymbolOrPower
2) Remove Edit reference/value/footprint items for power symbols
2021-02-21 23:45:32 +00:00
Mikolaj Wielgus
f9c42585fb
Force immediate action for auto start wire feature
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7503
2021-02-21 18:43:34 +00:00
Jeff Young
18d4d517b0
Implement RMB Import Sheet Pin as a single-shot.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7638
2021-02-21 15:46:53 +00:00
Marek Roszko
907e282347
Silence some msvc warnings
...
- exception variables that were unused
- RAYSEG2D improperly foward declared with class instead of struct
- unused vars
2021-02-20 11:58:55 -05:00
Jeff Young
26cb05051b
fixup! Whittle down library tree context menus to be more contextual.
2021-02-19 19:07:45 +00:00
Jeff Young
57e043e0e6
Don't allow moving markers. Do allow excluding them.
2021-02-19 19:07:45 +00:00
Jeff Young
c2f68ca4da
Whittle down library tree context menus to be more contextual.
...
(From discussion on Zulip.)
2021-02-19 19:07:45 +00:00
James Jackson
48853d0c88
Eeschema: Allow auto-wiring / drawing from unconnected bus and graphic line endpoints
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7537
2021-02-19 17:15:27 +00:00
Jeff Young
b43db7cd7d
Fix assert in Symbol Editor.
...
Also allows some symbol lib operations when we know the context even
if the library itself isn't selected. (For instance, select a symbol,
copy, paste.)
2021-02-18 18:08:37 +00:00
Seth Hillbrand
a25dfcd1b4
Allow "Update Symbol" command on power symbols
...
Power symbols can be modified in the library so it is useful to allow
them to be updated with the right-click menu
2021-02-17 15:31:22 -08:00
Jeff Young
2c4d53d994
Minor cleanup.
2021-02-16 21:11:36 +00:00
Jeff Young
2a7e60960a
Use standard mirror icons & terminology.
...
Also use standard group icons.
Also put both (and rotate commands) in toolbar.
Fixes https://gitlab.com/kicad/code/kicad/issues/7504
2021-02-16 21:11:36 +00:00
Seth Hillbrand
24795f5b12
Fix overzealous breakSegments()
...
We cannot break segements that are merely close or on endpoints, so we
filter these prior to the break routine. Failing to do this was
overloading our undo stack with bogus values
Fixes https://gitlab.com/kicad/code/kicad/issues/7553
Fixes https://gitlab.com/kicad/code/kicad/issues/7557
Fixes https://gitlab.com/kicad/code/kicad/issues/7554
2021-02-16 10:12:30 -08:00
Seth Hillbrand
d93ba0a06a
Choose half-grid for mirror
...
Using the half-grid allows for odd-grid counts to remain on-grid,
closer to the actual center.
Fixes https://gitlab.com/kicad/code/kicad/issues/7493
2021-02-15 11:59:04 -08:00
Seth Hillbrand
55e34592a6
Fix expand selection option in Eeschema
2021-02-15 10:53:17 -08:00
James
9205f1571d
EE_SELECTION_TOOL correctly identifies buses and wires for auto starting
2021-02-15 14:57:06 +00:00
Jeff Young
cf42d692bf
Remove some dead code. A little bit of comment cleanup as well.
2021-02-15 14:13:43 +00:00
Jeff Young
ec20121114
Make sure schematic symbol fields get transferred to symbol editor.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7501
2021-02-14 18:30:14 +00:00
Jeff Young
0f463ee84b
Add Update Symbol Fields dialog for derived symbols.
...
ADDED This allows one to update a derived symbol's fields from the
parent symbol.
Fixes https://gitlab.com/kicad/code/kicad/issues/7168
2021-02-14 12:15:26 +00:00
Seth Hillbrand
02c7fcdc84
Fix BreakWire tool
...
Adds ability to start new commit to eeschema, allowing all
AddItemsToUndoList to always append without foreknowledge. Keeps newly
split wires on the tool until placed
Fixes https://gitlab.com/kicad/code/kicad/issues/7512
2021-02-12 17:17:12 -08:00
Jon Evans
1bec10b6fa
Make it easy to select small things overlapping symbols
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7487
2021-02-11 12:13:46 -05:00
Jeff Young
a0b9b0c3ee
Improve IsSymbolEditable to differentiate fields.
...
Fields are editable in Aliases, but still not in Legacy libraries,
locked libraries, etc.
Fixes https://gitlab.com/kicad/code/kicad/issues/7175
2021-02-10 22:57:23 +00:00
Mikolaj Wielgus
1dc0ef01b3
Fix automatic wire tool in gridless mode
...
The automatic wire tool was not working in the gridless mode because the
grid snapping on/off logic present in `EE_GRID_HELPER`, based on the
value of `m_enableGrid`, was not taking into account that another check,
but for the global KiCad setting, would be performed in the `Align()`
method, which is inherited from `GRID_HELPER`.
I've modified all tests of `m_enableGrid` value to also take the global
setting into account, and moved checks for it to `Align()` method, as
it's more consistent this way.
I've also removed an override of the `Align()` method in the
`PCB_GRID_HELPER` class, as it was made redundant by my changes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7402
2021-02-10 22:07:49 +00:00
Seth Hillbrand
67ccee338e
Give cleanup to the move tool
...
For unknown reasons, the move tool was not clearing the stack when
called from the edit tool. This moves the call to move tool to after
clearing the edit tool from the stack. The move tool handles cleanup,
so we skip the original reason for waiting on the move tool before
finalizing the edit tool routines
Fixes https://gitlab.com/kicad/code/kicad/issues/7481
2021-02-10 10:01:05 -08:00
Jeff Young
a30ae6a237
Pass un-pretty-printed bus names through menu help text.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7412
2021-02-10 15:03:06 +00:00
Wayne Stambaugh
356c2d3508
Symbol editor: fix symbol save as menu enable logic issue.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7451
2021-02-07 18:21:59 -05:00
Jeff Young
d70cebcd62
Allow clicking on terminal point to finish a bus unfold.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7413
2021-02-07 00:31:00 +00:00
Michael Kavanagh
db66cd50d7
Use Save As icon for Save As action in symbol editor
2021-02-06 22:51:56 +00:00
Jeff Young
c2dbd28101
Simplify and harmonize symbol editor and footprint editor menus.
...
Some differences are due to difference between libraries being files
in symbol editor and directories in footprint editor, but this unifies
most of the rest.
It also dispenses with the save-to-library vs save-to-document distinction
in the GUI because it makes for too much variability in the GUI, was
implemented differently between the two editors, and isn't needed as much
anymore now that we have the highly visible infobar.
There was also an issue that the save-to-board icon occupies the same
location and has the same size/shape/colours as the Board Setup icon in
PCBNew.
Fixes https://gitlab.com/kicad/code/kicad/issues/7215
2021-02-06 14:33:16 +00:00
Seth Hillbrand
2aa8a3724f
Don't continue until the move tool completes
...
Starting a new action (to add junctions) will break the move tool loop
and cancel placement. We need to wait until the tool completes before
choosing where to place the junctions
Fixes https://gitlab.com/kicad/code/kicad/issues/7421
2021-02-05 10:18:34 -08:00
Jeff Young
b4a9792e23
Add a warning for hidden power pins.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6440
2021-02-04 22:47:37 +00:00
Jeff Young
62254309b0
Don't rotate fields if their parent is selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7410
2021-02-04 00:05:13 +00:00
Seth Hillbrand
b07c8110c8
Follow grid snapping when moving
2021-02-02 20:23:12 -08:00
Seth Hillbrand
238aa2b5b0
Snap to eeschema lines
...
Allows easier snapping to lines when drawing in eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/7378
2021-02-02 19:33:18 -08:00
Seth Hillbrand
ea08f1b8cb
Update action short names for clarity
2021-02-02 19:33:18 -08:00
Jeff Young
147c839857
Allow drag-select of fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6662
2021-02-01 17:14:30 +00:00
Seth Hillbrand
ae5d2efe07
Snap common single-click tools
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7362
Fixes https://gitlab.com/kicad/code/kicad/issues/7363
2021-01-31 15:17:24 -08:00
Seth Hillbrand
08a932a969
Add smarts to switch selection on right-click
...
Now looks at how hard it is to select the item (grids) and switches only
if the mouse is more than a grid square away and there is a new item
under the mouse.
Fixes https://gitlab.com/kicad/code/kicad/issues/4455
2021-01-31 07:00:48 -08:00
Jon Evans
abf0a46dce
Refactor PICKER_TOOL and push up snapping disable functionality
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7348
2021-01-31 09:50:41 -05:00
Wayne Stambaugh
7737489e57
Symbol editor: don't allow new or imported symbols in read only libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7334
2021-01-30 13:03:05 -05:00
Jeff Young
41234a8373
Implement more precise annotation-required messages.
...
Also moves the message to an infobar so it's more noticeable.
Fixes https://gitlab.com/kicad/code/kicad/issues/7332
2021-01-30 16:31:27 +00:00
Jon Evans
1d12f3fe4a
Fix logic in selecting power symbols for net highlighting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7339
2021-01-30 10:28:26 -05:00
Seth Hillbrand
b64611af7a
Make highlight net flexible with grid
2021-01-29 14:28:26 -08:00
Seth Hillbrand
ea6dc0d730
Make auto-wire use snapping behavior
...
Forcing grid snap for the kick-start behavior loses snaps to pins that
may be desired. This also adds force-snapping in select mode to match
the user's auto-start preferences
Fixes https://gitlab.com/kicad/code/kicad/issues/7293
2021-01-29 14:09:33 -08:00
Seth Hillbrand
02954dfaa1
Fix another instance of modifying iterators
...
We cannot modify the ee_rtree while iterating over it without
invalidating the iterators
Fixes https://gitlab.com/kicad/code/kicad/issues/7331
2021-01-29 08:33:44 -08:00
Jeff Young
ff7742c6b8
File naming and include cleanup.
2021-01-28 11:35:18 +00:00
Jeff Young
7d6a749285
Implement a more aggressive re-entrancy check for SCH drawing tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7259
2021-01-27 19:51:11 +00:00
Jeff Young
f3047829e5
Mark document dirty after drag; don't wait for point editor deactivation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7285
2021-01-26 19:01:31 +00:00
david-beinder
1598e870b6
Insert the same unit on all sheet instances when adding a symbol
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (C)
2021-01-26 18:12:49 +00:00
david-beinder
2e21489acf
Copy unit numbers to symbol instances when pasting sheets
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (B)
2021-01-26 18:12:49 +00:00
david-beinder
4bcd56b1f6
Always include unit number when copying to clipboard
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5898 (A)
2021-01-26 18:12:49 +00:00
Wayne Stambaugh
4619d5e112
Fix more broken Doxygen comment specifiers.
2021-01-26 12:17:52 -05:00
Jeff Young
b576ccef61
Don't double-up tools on tool stack.
...
Also make sure move tool gets cancelled by other tools being
activated.
Fixes https://gitlab.com/kicad/code/kicad/issues/7259
2021-01-26 10:56:19 +00:00
Jeff Young
f6b7817044
Init intersheet refs props when converting to global label.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7252
2021-01-25 13:20:16 +00:00
Jon Evans
8ad448cbbc
Don't leave point editor running when moving things in eeschema
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7227
2021-01-24 12:59:42 -05:00
Jeff Young
df2d0962c6
Drop hover selection in Symbol Editor after edit action.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7234
2021-01-23 17:12:34 +00:00
Jeff Young
d770284fa2
Add a bus instead of a wire for bus junctions.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7231
2021-01-23 17:04:44 +00:00
Roberto Fernandez Bautista
4f0accb714
Allow only updating reference links during back-annotation
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7190
2021-01-20 00:37:38 +00:00
Jeff Young
360953ba98
"comp" -> "symbol".
2021-01-19 23:50:40 +00:00
Michael Kavanagh
d32c12b4b9
Banish new project from template to the menubar
...
+ remove inappropriate icon from Eeschema ctx menu
2021-01-19 22:57:25 +00:00
Michael Kavanagh
80dbc24326
Icons: remove superfluous icon
...
Remove icons where menu text gives context
2021-01-19 22:57:25 +00:00
Jeff Young
351074cc48
Better-encapsulate collector sources in the selection tool.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7191
2021-01-19 21:10:43 +00:00
Seth Hillbrand
4da28cf8f4
Fix bad dereference
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7188
2021-01-19 08:39:22 -08:00
Jeff Young
2c9da4daa4
Make sure Check Pins works on a flattened copy of the part.
...
Also improved the reporting slightly (in particular for pins with
no names or pins with the empty flag ("~").
Fixes https://gitlab.com/kicad/code/kicad/issues/7165
2021-01-18 15:20:15 +00:00
Michael Kavanagh
479487ceb1
Tidy up context menus a bit
...
Try and put the common actions in the same places
2021-01-17 22:42:03 +00:00
jean-pierre charras
e10025db64
Hierarchy navigation: keep the last used zoom level in a sheet when go back to this sheet.
...
Fixes #7107
https://gitlab.com/kicad/code/kicad/issues/7107
2021-01-17 09:41:49 +01:00
Jeff Young
68efdb2fff
Push shared parts of GRID_HELPERs into common.
2021-01-16 23:18:10 +00:00
Jeff Young
bae5825d1b
Fix copy/paste error.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7119
2021-01-15 13:14:47 +00:00
Wayne Stambaugh
2d64613bbb
Coverity fixes.
...
Reports 314745, 316271, and 316269.
2021-01-13 11:23:09 -05:00
Jeff Young
d23b5f89b3
Don't save sheet multiple times on undo stack.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7063
2021-01-12 23:56:35 +00:00
Michael Kavanagh
8fba0c257b
Icons: remove more inconsistencies around Select
...
Missed from 5d9b2d3fea
2021-01-11 23:31:24 +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
Wayne Stambaugh
0655f2c436
Symbol editor: do not disable tools and grey symbols from schematic.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6968
2021-01-08 18:25:18 -05:00
Jeff Young
51e6846ca5
Don't edit fields when more than one is selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/7005
2021-01-08 20:43:02 +00:00
Michael Kavanagh
54724096ea
Icons: consistency between Eeschema and Pcbnew
2021-01-06 00:35:20 +00:00
Michael Kavanagh
b40e3a39f5
Minor cleanup.
2021-01-04 23:59:36 +00:00
Jeff Young
dc65166ee7
Implement algin-to-grid for fields.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6530
2021-01-03 22:39:58 +00:00
Michael Kavanagh
154e19b6e7
Icons: use common prefix for small 16x16
2021-01-02 23:16:33 +00:00
Michael Kavanagh
6d3c1c7716
Icons: remove unused sources/duplicates + rename
2021-01-02 23:16:33 +00:00
Seth Hillbrand
a69a4be853
Fix build error with icon names
2021-01-01 13:13:33 -08:00
Seth Hillbrand
5a0c3bf4bc
Icons updates
...
- Remove 22px bitmaps
- Move 24px icons to icon_XXX_24 filenames
- Update convert icon thanks to MisterHW
Fixes https://gitlab.com/kicad/code/kicad/issues/6088
2021-01-01 11:00:15 -08:00
Marek Roszko
db0f3b42b4
Stop the cursor from reverting away from the window select in eeschema
...
Fix #6590
2020-12-29 19:51:34 -05:00
Slawomir Siudym
157ceedc12
Fix offset of repeated pin in Symbol Editor
2020-12-29 18:32:46 +00:00
jean-pierre charras
77f651639d
Eeschema: fix crash using tune/probe function in spice simulator.
...
Fixes #6875
https://gitlab.com/kicad/code/kicad/issues/6875
2020-12-29 13:13:58 +01:00
Jon Evans
ac1f7f93a2
Save context menu position for bus unfold
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6378
2020-12-27 13:07:16 -05:00
Wayne Stambaugh
5069d20768
Symbol editor: make library and symbol save as operations explicit.
...
Prior to this change the "Save As.." command would take a different action
based on the state of the editor which could be confusing. There are now
separate commands for saving the currently selected library or symbol.
CHANGED: The implicit save as menu entry which would save the currently
selected library if no symbol was selected or the current symbol to a
different library. There are now separate save as commands for libraries
and symbols to make it obvious what is being saved.
2020-12-27 11:55:32 -05:00
Jeff Young
c16dda4027
Make sure added wires (from junctions) don't get left selected.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6852
2020-12-27 13:17:03 +00:00
Jeff Young
c0e5e8eeee
Formatting.
2020-12-27 13:17:03 +00:00
Jeff Young
8a720ef305
Update naming.
2020-12-25 23:37:01 +00:00
Michael Kavanagh
eb1f07bade
Icons: standardise `export_png` to match set
2020-12-24 01:02:03 +00:00
Michael Kavanagh
d2018b122b
Icons: unify export_svg with the rest of the set
2020-12-24 01:02:02 +00:00
Jeff Young
3a3ef19ccb
When rotating during a drag/move, only rotate user-selected items.
...
In particular, don't rotate wires that had to be picked up; just
keep them connected.
Fixes https://gitlab.com/kicad/code/kicad/issues/6789
2020-12-23 14:24:35 +00:00
Jeff Young
fb7ac450d9
Read-only dialogs for symbols in legacy libraries.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5211
2020-12-22 12:16:27 +00:00
Wayne Stambaugh
f311831c27
Coverity fixes.
...
280252, 314742, 314745, 314747, 314755, 314756, 314757, 314758,
314935, 314936
2020-12-20 13:24:47 -05:00
Marek Roszko
9b0a137d6c
Stop bludgeoncompiling dialog_page_settings
...
Through the power of OOP!
Needs some more cleanup though
2020-12-19 10:40:37 -05:00
Seth Hillbrand
489db6adde
Handle case where multiple pins are moved
...
When synchronized, if multiple pins are selected to be moved, we need to
match each to a matching pin in the new unit
Fixes https://gitlab.com/kicad/code/kicad/issues/2589
2020-12-18 15:48:34 -08:00
Seth Hillbrand
0fd920a94c
Modify Synchronize Pins behavior
...
Consider a pin synchronized iff the names and electrical types match in
addition to the position, orientation and demorgan variant.
Also, only modify one matching pin per unit. This prevents
moving/editing a full stack of pins on the same unit when synchonized.
Fixes https://gitlab.com/kicad/code/kicad/issues/2590
2020-12-18 15:48:29 -08:00
Jeff Young
b68b1692ec
Clean up some more user messages.
...
Mostly component -> symbol but also some I18N cleanup.
2020-12-18 12:49:20 +00:00
Jeff Young
91ab540d18
Naming conventions.
2020-12-18 00:30:26 +00:00
Jeff Young
c875efb635
Prevent modal deadlock by using QuasiModal mode.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6779
2020-12-18 00:30:26 +00:00
Jeff Young
bb232e6ac6
Unify LIB_IDs now that both are stored in sexpr files.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6764
2020-12-18 00:30:26 +00:00
Jeff Young
a6085fa88d
Consistency for gerbview toolbar icons and some other icon tweaks.
2020-12-17 14:02:23 +00:00
Ian McInerney
fc20eaa083
Fix some compiler and Coverity warnings
2020-12-17 00:30:22 +00:00
Seth Hillbrand
dad2e317e9
Modify edit text & graphics to use pencil
2020-12-14 17:03:35 -08:00
Jeff Young
22a6b36257
Don't allow dbl-click to leak through to other tools.
...
This only applies if the tool doesn't handle properties (which also
handles double-click events).
Fixes https://gitlab.com/kicad/code/kicad/issues/6735
2020-12-14 22:15:43 +00:00
Jeff Young
07bb2729f8
Clean up over-use of auto.
2020-12-14 22:15:43 +00:00
Jeff Young
126d40f9d3
"Sheet label" too confusing w/ sheet names and fields. Use "sheet pin".
2020-12-13 22:43:09 +00:00
Jeff Young
5b22cef984
Associate -> assign in the context of footprint assignments.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6708
2020-12-13 13:41:25 +00:00
Jon Evans
93d55e3d23
Tweak no-connect and label icons
2020-12-12 11:26:30 -05:00
Jeff Young
b6e267b78d
Naming conventions.
2020-12-12 03:43:41 +00:00
Michael Kavanagh
cf6f0b9b92
Use trash icon where appropriate
2020-12-11 17:05:11 -08:00
Jeff Young
412c9c8c4e
Save should be disabled only if the file is up-to-date.
...
Any other issues (such as locked files) need to produce a dialog
with info for the user.
2020-12-11 23:58:30 +00:00
Wayne Stambaugh
e667d26854
Eeschema: use "board editor" instead of "PcbNew" in UI strings.
2020-12-11 15:24:42 -05:00
Wayne Stambaugh
4516aff43e
Symbol Editor: don't show edit page number in context menu.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6711
2020-12-11 15:02:34 -05:00
Wayne Stambaugh
5d028b82ed
Eeschema: tool tip improvements.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6708
2020-12-11 13:42:50 -05:00
Wayne Stambaugh
dd4298bb94
Coverity fixes: 280374, 313611, 313648, 313649, and 314720.
2020-12-11 13:29:52 -05:00
Jeff Young
224697d0b3
Sheet navigator tooltip.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6680
2020-12-11 16:43:55 +00:00
Jeff Young
4f90c03c7d
Allow snapItem to be re-activated.
...
Don't clear until another snapPoint is chosen. This allows line
snapping to re-appear when they move back in range.
Fixes https://gitlab.com/kicad/code/kicad/issues/5973
2020-12-05 23:57:33 +00:00
Jeff Young
a3406e7514
Make snapping more predictable.
...
In particular, allow grid positions to override line snapping if
they're a better match (and do this independently on x and y axes).
We already allow a nearer anchor to override, but that should be
based on a cartesian distance rather than independent axes.
Fixes https://gitlab.com/kicad/code/kicad/issues/6626
2020-12-04 22:50:30 +00:00
jean-pierre charras
c47871e775
EDA_BASE_FRAME::ShowInfoBarMsg: add option to show a close button.
...
Same for EDA_BASE_FRAME::ShowInfoBarError and EDA_BASE_FRAME::ShowInfoBarWarning
2020-12-04 14:45:14 +01:00
Peter Montgomery
821128cb8e
Eeschema: Make auto-decrementing net labels stop at zero
...
CHANGED: If you set the auto-increment value to a negative number,
created a net label and hit the insert key, when the name got below zero,
the net labels tried to go negative but created bad labels instead.
Now the code caps decrementing at zero, warns users when it has
happened, and explains why.
Fixes https://gitlab.com/kicad/code/kicad/issues/6537
2020-12-04 12:48:32 +00:00
Jeff Young
e882753ebf
Grid snapping fixes.
...
1) Uniformly honour the GAL grid snap settings
2) Make more uniform use of GRID_HELPERs
3) Smarten EDIT_LINE for mid-point snapping
Fixes https://gitlab.com/kicad/code/kicad/issues/6558
2020-12-03 19:55:58 +00:00
Jeff Young
a19028a396
Hook up EE_GRID_HELPER to some more tools.
...
Also implements EE_GRID_HELPER layers so that connectable things
snap to connectable things and graphics snap to graphics.
Fixes https://gitlab.com/kicad/code/kicad/issues/5641
2020-12-03 15:16:34 +00:00
Jeff Young
43fe228367
Hook up a bit more of the EE_GRID_HELPER.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5985
2020-12-02 23:18:33 +00:00
Jon Evans
05609dbc1d
Update screen r-tree after mirror operation
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6549
2020-12-01 19:19:12 -05:00
Jeff Young
df262eaa06
Make prev/next marker work reliably on all platforms.
...
Requires us to move from arrow-keys to our own commands (the only
way that the OSX wxWidgets impl doesn't eat the keys when the dataVIew
has focus).
While there we might as well add a command to exlucde markers.
ADDED Prev Marker, Next Marker, Exclude Marker
Fixes https://gitlab.com/kicad/code/kicad/issues/6575
Fixes https://gitlab.com/kicad/code/kicad/issues/5501
2020-12-01 22:37:07 +00:00
Jeff Young
3c521942ed
Smarten isEmpty checks to include nothing-but-whitespace.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6567
2020-12-01 16:39:06 +00:00
Jeff Young
3ad5bce67f
Rewrite connected-lines dragger to not use EDA_ITEM flags.
...
We had some spurious bugs where both ends would get dragged to a
single point (making them disappear). While I never caught it
in the debugger, I'm guessing that the flags weren't getting
cleared properly or were getting overwritten or something. Anyway,
it now uses std::pair instead.
Fixes https://gitlab.com/kicad/code/kicad/issues/6550
Fixes https://gitlab.com/kicad/code/kicad/issues/6431
2020-11-30 19:30:03 +00:00
Roberto Fernandez Bautista
9380d6f533
eeschema page numbers: match ordering in hierarchy navigator to sheet page number ordering
...
- update hierarchy navigator after any modifications to the SCH_EDIT_FRAME
- do not generate ghost selection events after updating hierarchy tree
- use Human Readable path in SCH_EDIT_TOOL::EditPageNumber
Fixes https://gitlab.com/kicad/code/kicad/-/issues/5760
2020-11-30 16:49:33 +00:00
Jeff Young
3da0ab1a9a
Fix a couple of bugs in intersheet references.
...
1) init reference pages before trying to draw the SCH_FIELDs when
turning intersheet references on
2) don't double redraw because we accidentally cleared the last
hover item on a non-mouse-moved event.
3) make sure the root sheet gets a name for the hypertext menu.
2020-11-29 16:53:18 +00:00
Jeff Young
13c63e3a50
Clearer warning about not back-annotating footprint deletes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6521
2020-11-26 19:30:16 +00:00
Jeff Young
c85ef8eb69
Make updating netnames in backannotate more discrete.
...
Trying to be too smart was producing unexpected results.
Fixes https://gitlab.com/kicad/code/kicad/issues/6480
2020-11-25 22:16:56 +00:00
Ian McInerney
d50d728d19
Cleanup compiler warnings
2020-11-25 00:08:09 +00:00
Jeff Young
71ce00c5ce
Allow rotation of a single graphic line.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6487
2020-11-24 23:40:53 +00:00
Jeff Young
9c7c05c161
Mostly formatting cleanup but a few type-casting cleanups too.
2020-11-24 22:16:41 +00:00
Jeff Young
78b505f36a
Count head and tail lists as well.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6461
2020-11-23 23:54:54 +00:00
Wayne Stambaugh
e91a5b3f81
Symbol editor: prevent derived symbol elements from being moved.
2020-11-23 15:46:03 -05:00
Jeff Young
dd60fd47b2
Cleanup and formatting.
2020-11-23 01:10:08 +00:00
Jeff Young
3a4bd6fb8b
Fix uninitialized variable.
2020-11-21 20:57:36 +00:00
Jeff Young
1391774f64
Re-factor boundary/courtyard checker error handling.
...
ADDED Footprint Checker dialog to display the results in.
Fixes https://gitlab.com/kicad/code/kicad/issues/6446
2020-11-21 20:57:35 +00:00
jean-pierre charras
01b6cd08b5
lib_edit_tool.cpp: fix a wxWidgets 3.0.4 compatibility.
2020-11-21 11:56:32 +01:00
jean-pierre charras
64636601b8
Eeschema: fix a Unicode/UTF8 management when pasting items from Clipboard.
...
Copy to clipboard save items (using S expr description) using wide strings
(not UTF8 encoding).
But Paste from clipboard was not converting the wide string to UTF8 string
when getting the stored data to send it as std::string to the S expr reader.
Fixes #6449
https://gitlab.com/kicad/code/kicad/issues/6449
2020-11-21 10:59:25 +01:00
Jeff Young
9e9946628a
Go back to arrow cursor on a cancel (or finish).
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6421
2020-11-19 20:09:28 +00:00
Jeff Young
99796d359f
Honour include-in-board flag when back-annotating.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6438
2020-11-19 15:29:53 +00:00
Jeff Young
7c344e9be6
Mirroring for intersheet references.
2020-11-18 23:34:27 +00:00
Jeff Young
293795fd46
Support rotation on intersheet references.
2020-11-18 23:34:27 +00:00
Werni
0e44f5128c
Add const specifiers
2020-11-18 19:50:36 +00:00
Jeff Young
cb5ec8bce1
Make Eeschema cursors update without waiting for mouse movement.
2020-11-18 17:32:40 +00:00
Jeff Young
bd1f262a6b
Fix issues with Intersheet Ref highlighting and hover actions.
2020-11-18 17:32:40 +00:00
Seth Hillbrand
a4201ea833
Fix crash in libedit
...
LIB_ITEM is not derived from SCH_ITEM but they share a selection model
2020-11-17 14:28:56 -08:00
Jeff Young
8c5c902fa3
Re-write IntersheetRefs on top of SCH_FIELDs and textVars.
...
1) Generalize SCH_ITEM owners (SCH_COMPONENT, SCH_SHEET, and now
SCH_GLOBALLABEL)
2) Generalize hypertext items
3) Use SCH_FIELD autoplace infrastructure for placing intersheet
references
4) Use textVar infrastructure for buildin intersheet references.
As an important side-effect this also fixes the undo issues with
intersheet refs.
2020-11-17 16:05:49 +00:00
Jeff Young
a207bd97bb
Naming conventions.
2020-11-17 16:05:49 +00:00
Jeff Young
6e6e0aa644
Naming conventions (including some component -> symbol).
2020-11-15 20:23:15 +00:00
Jeff Young
6654c03041
Embarking on the next adventure: component -> symbol.
2020-11-15 20:23:15 +00:00
Jeff Young
bdbb68f813
MODULE -> FOOTPRINT.
2020-11-13 16:04:03 +00:00
Jeff Young
63a54d003e
More module -> footprint.
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
f0d0e17aab
Prepare for MODULE -> FOOTPRINT.
2020-11-13 15:16:24 +00:00
Jeff Young
4889f9bb7c
Fix typo in net label orientation calculation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6333
2020-11-09 12:07:40 +00:00
Jeff Young
bfd8a62852
Formatting and naming conventions.
2020-11-07 18:50:30 +00:00
Jeff Young
91ba002da7
Make sure move machinery gets initialized if we're going to use it.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6293
2020-11-06 12:21:31 +00:00
Wayne Stambaugh
ae4614bfbd
Symbol editor: do not allow paste into derived symbols.
...
Don't allow select all, copy, cut, paste, or duplicate if the current
symbol is an alias.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/6050
2020-11-04 15:00:09 -05:00
Jeff Young
88abcc1287
Fix broken handling of closing ERC dialog.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6277
2020-11-04 01:08:21 +00:00
Jeff Young
5507575d64
Move ERC dialog to EE_INSPECTION_TOOL and kill when resetting.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6111
2020-11-03 20:27:44 +00:00
Jeff Young
4be6a27a39
Report error when pin for backannotate can't be found.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6263
2020-11-03 18:53:14 +00:00
Jeff Young
2a8ea25209
Null pointer safety.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6263
2020-11-03 15:47:38 +00:00
Jeff Young
bd103c133d
Don't save junction colours when they're inherited.
...
Also fixes Edit Text & Graphics Properties to be able to clear
colours from junctions.
Fixes https://gitlab.com/kicad/code/kicad/issues/6018
2020-11-03 14:07:50 +00:00
Jeff Young
92d6988f10
Keep pin positions stable when resizing sheet.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6196
2020-10-31 11:49:07 +00:00
Jeff Young
bddc97df30
LibEdit -> SymbolEditor
2020-10-31 10:28:21 +00:00
Jeff Young
0d8789935d
Refactoring. Push editing code to toolset.
2020-10-31 10:28:21 +00:00
Jeff Young
de013ee60a
Selection center is center of visible items.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6188
2020-10-30 23:37:35 +00:00
Jeff Young
9065908859
Update SCH_SCREEN's RTree when moving items.
...
Or when modifying geometric shape/properties.
Fixes https://gitlab.com/kicad/code/kicad/issues/5922
2020-10-30 15:26:07 +00:00
Jeff Young
45618327cf
Fix crash bug closing schematic with sheet selected.
2020-10-30 15:26:07 +00:00
Jeff Young
1d110d5414
Move a couple more dialogs to QuasiModal for syntax help.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5897
2020-10-29 22:55:33 +00:00
Jeff Young
c9d7bdc340
Hook up AutoplaceFields for sheets.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6197
2020-10-28 22:32:36 +00:00
Jeff Young
c5a86126d2
Be more clever about making sheet names unique.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6123
2020-10-23 23:55:45 +01:00
Jeff Young
d785dae88b
DIALOG_EDIT_COMPONENT_IN_LIB -> DIALOG_LIB_SYMBOL_PROPERTIES.
2020-10-22 10:41:21 +01:00
Seth Hillbrand
b39fb3374d
Fix fat fingered error
2020-10-21 14:41:14 -07:00
Seth Hillbrand
69d47c90ea
Unify sentences in translation
2020-10-21 12:31:21 -07:00
Jeff Young
176f461b2c
Fix a corner case of wire merging.
...
We want to look for a junction before merging two touching colinear
segments, but the old code would also check for a junction when
merging two overlapping segments, which is not what you want.
Fixes https://gitlab.com/kicad/code/kicad/issues/5960
2020-10-21 18:51:47 +01:00
Seth Hillbrand
f8a4edb1c9
First pass renaming module to footprint
...
This is mostly in comments and the few remainin text strings that
reference module
2020-10-20 20:49:11 -07:00
Jeff Young
e5089d783d
Remove multi-label entry feature.
...
It was causing problems with surprising behaviour and issues with
allowing spaces in existing labels. We'll work on something better
for 7.0....
Fixes https://gitlab.com/kicad/code/kicad/issues/6073
2020-10-20 22:53:44 +01:00
Jeff Young
83890f8d3a
Move label editors to QuasiModal so the Syntax Help window can be shown.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5437
2020-10-20 22:26:47 +01:00
Seth Hillbrand
4085757aeb
Remove beginning/ending spaces in translations
...
Adding space padding makes translations more difficult by increasing
string counts
2020-10-20 12:08:04 -07:00
Wayne Stambaugh
8ff51d8899
Eeschema: add schematic sheet page number.
...
The groundwork has now been laid for per sheet instance data. Initially
this only supports sheet page numbers but could be expanded to include
other per sheet instance information.
ADDED: Support for user defined schematic page numbers.
2020-10-19 14:05:45 -04:00
Jeff Young
6ce803b77c
Push/pop move tool even when there's nothing to move.
...
This keeps other tools from having the special-case an empty move.
Fixes https://gitlab.com/kicad/code/kicad/issues/6048
2020-10-18 12:08:15 +01:00
Jeff Young
6dfcfb0177
Rename DIALOG_EDIT_COMPONENT_IN_SCHEMATIC -> DIALOG_SYMBOL_PROPERTIES
2020-10-18 00:26:37 +01:00
Marek Roszko
a2c3bdec0d
Remove kicad_string.h from netlist_exporter.h
2020-10-15 18:48:53 -04:00
Jeff Young
128910c602
Pass unhandled command events from Symbol Editor move tool.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/6015
2020-10-15 18:43:23 +01:00
Ian McInerney
5f4b0eb0fb
Fix formatting and overzealous renaming for FILL_TYPE
2020-10-15 11:24:49 +01:00
Marek Roszko
1538d737e7
Split out FILL_T to its own header to avoid spreading eda_item everywhere
2020-10-14 21:51:23 -04:00
Marek Roszko
5302f7ce73
Remove kicad_string.h from eda_text.h
2020-10-14 19:18:38 -04:00
Jeff Young
90da5fccbd
Disambiguate backannotation (Update Schematic from PCB) from Cvpcb.
2020-10-14 21:07:10 +01:00
Marek Roszko
12d21e34e2
Remove trigo.h from eda_text.h
2020-10-13 23:37:48 -04:00
Marek Roszko
b2e9f6987d
Split base_struct into eda_item and eda_rect
2020-10-13 21:24:50 -04:00
Marek Roszko
2c86363aa0
Relocate the page_layout includes to a page_layout folder
2020-10-13 20:33:33 -04:00
Jon Evans
d1bdfb7253
Clear selection before adding new lines in immediate mode
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4266
2020-10-13 19:16:48 -04:00
Jeff Young
fd874d8345
Check to see if isolating junction is part of the drag or not.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5960
2020-10-13 13:52:49 +01:00
Michael Kavanagh
5f6d309d36
Eeschema: REMOVED "Update from Symbol Library"
...
This is effectively duplicated by "Update Symbol(s) from Library".
Fixes https://gitlab.com/kicad/code/kicad/issues/5217
2020-10-12 22:44:53 +00:00
Michael Kavanagh
8930e48cf3
Cleanup dead code
...
Remove leftovers from e4bc1eb3bf
2020-10-12 22:44:53 +00:00
Michael Kavanagh
c40483d18a
Cleanup: Move KiCad files into plugins folder
2020-10-12 16:36:08 +00:00
Jeff Young
0efe073dec
Add wires between selected wires and unselected junctions when dragging.
...
Also fixes a bug where the auto-start-wire stuff was messing up the seleciton
when the selection tool wasn't at the top of the tool stack.
Fixes https://gitlab.com/kicad/code/kicad/issues/5960
2020-10-12 11:46:08 +01:00
Marek Roszko
03074ae6ed
Kick the selection tool to activate (and thus update cursors) on exiting some picker tools
2020-10-11 13:12:29 -04:00
PJM
91db6a770c
Eeschema: Add missing tooltips to left toolbar buttons
...
CHANGED: The button in the left toolbar for hiding/showing hidden
pins, and the button for forcing/relaxing H&V only wire mode had
no tooltips. This MR adds them.
2020-10-11 13:55:36 +00:00
Marek Roszko
558f4b4b51
Add new place cursor, fix cursor hotpoints again
2020-10-10 23:45:21 -04:00
Marek Roszko
310786333d
Add missing cursors for bus, graphic lines, and hier labels
...
Fix #5949
2020-10-10 18:25:44 -04:00
Ian McInerney
5aa796b5fe
Cleanup compiler warnings
2020-10-10 15:24:35 +01:00
Franck Jullien
fc93a04751
eeschema: iref: use GetParentLabel instead of GetParent
2020-10-09 02:37:51 +00:00
Marek Roszko
bd30a4a406
Add selection lasso and window cursors
2020-10-08 21:25:21 -04:00
Marek Roszko
f238d05ead
Add COMPONENT cursor
2020-10-08 20:52:58 -04:00
Marek Roszko
6cf4016a64
Add net and global label cursors
2020-10-08 20:52:58 -04:00
Jeff Young
fd22fe8e37
Show preview item in drawing tool before mouse is moved.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5922
2020-10-08 19:56:09 +01:00
Jeff Young
4095edda07
Add Properties support to Junction and Bus Entry tools.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5907
2020-10-08 18:11:06 +01:00
Ian McInerney
2b839c6c9c
Ensure command events are passed when placing junctions
...
We only handle specific command events in the handler, so we
must pass the rest to allow other tools to work.
Fixes https://gitlab.com/kicad/code/kicad/issues/5922
2020-10-08 17:58:06 +01:00
Marek Roszko
7e974e5ccc
Use the snapped cursor position used for detection for the wire tool autostart
...
Fixes #5902
2020-10-07 23:57:26 -04:00
Marek Roszko
f5e0754f65
Use the setCursor lambda pattern and fix up the initial cursor states
2020-10-07 23:26:14 -04:00
Mark Roszko
d9485129c8
Implement more context specific cursors using both stock and custom cursors.
2020-10-08 00:50:28 +00:00
Jeff Young
809f4c2ffb
Finish single-click-place drawing tool on double-click.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5907
2020-10-07 18:30:55 +01:00
Jeff Young
4565631728
Finish moving eeschema assigned netclasses to sheet-path-relative.
...
Also adds code for the case where a new label is created on a net
with an existing netclass assignment.
Fixes https://gitlab.com/kicad/code/kicad/issues/5886
2020-10-07 16:31:55 +01:00
Jeff Young
63a0f537d8
Performance enhancement: check hierarchy validity only when necessary.
2020-10-05 13:49:29 +01:00
Jeff Young
c9096c7168
Re-enable selection of intersheet references.
...
Un-modified roll-overs and clicks still produce hypertext action, but
modified clicks and drag-selects will select.
2020-10-05 11:55:33 +01:00
Jeff Young
44580acee2
Clean up some compiler warnings.
2020-10-03 22:55:34 +01:00
Marek Roszko
676f3221cc
Fix symbol editor glitches due to autostart trying to start
2020-10-03 15:47:08 -04:00
Marek Roszko
0b2b8b150d
Use the event position always instead of the view cursor position
...
Fix #5850
2020-10-03 15:20:32 -04:00
jean-pierre charras
bda275de46
more cleanup about removing useless include
2020-10-03 11:48:16 +02:00
Marek Roszko
b0ffbcaba1
Fix #5850
2020-10-03 02:10:56 +00:00
Jeff Young
cc617b715f
Implement hypertext links for intersheet references.
2020-10-02 21:18:34 +01:00
Jeff Young
c1b34b02b5
Disallow selection of intersheet references.
2020-10-02 13:50:16 +01:00
Mark Roszko
c940a45937
ADDED: Autostart wires in eeschema
...
Allows wires to be automatically started by clicking over a connection point
2020-10-01 23:53:47 +00:00
Jon Evans
71ed7ee707
Revert "Drag preselected items even when "prefer selection to dragging" enabled"
...
This reverts commit d530e2c2cd
.
2020-10-01 18:23:30 -04:00
Franck Jullien
2fc49045d1
ADDED: eeschema: Add intersheets references function
...
Add a new function to place intersheets references next to
global labels.
2020-10-01 20:39:32 +00:00
Jon Evans
d530e2c2cd
Drag preselected items even when "prefer selection to dragging" enabled
...
Not being able to drag an already-selected item feels broken
2020-09-30 20:10:13 -07:00
PJM
b0e05ad9bf
Eeschema: Check for NULL pointer when using interactive delete tool
...
CHANGED: If you start the interactive delete tool and the mouse pointer
isn't near anything, Eeschema tries to use a null EDA_ITEM pointer
which throws an exception. This commit checks if the pointer is null
and exits if it is.
2020-09-30 23:05:29 +00:00
Ian McInerney
2c49c406a0
Remove ignore other projects option from back annotation
...
The new schematic format makes this option unneeded, and it isn't
used at all in the backannotation code - so it doesn't need to be
in the UI.
2020-09-30 23:34:04 +01:00
Jeff Young
e4bc1eb3bf
Fold Update Fields from Library into Update Symbol.
...
Also gives Change Symbol control over which fields to update.
Fixes https://gitlab.com/kicad/code/kicad/issues/5217
2020-09-27 14:09:11 +01:00
PJM
e77b7e3360
Make MMB double click perform 'Zoom to Fit'
...
ADDED: Make middle mouse button double click do a 'Zoom to Fit'
in Eeschema, Pcbnew, and Gerbview. Ctrl-MMB does a 'Zoom to Objects'
in Eeschema.
Fixes https://gitlab.com/kicad/code/kicad/issues/1988
2020-09-22 23:21:44 +00:00
Jeff Young
fdbb28aea2
Treat Reference and Unit as separate words when searching.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4630
2020-09-20 18:57:33 +01:00
Jeff Young
39bdc547af
Smarten up the guess selection routine to pick closest item.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5697
2020-09-19 15:55:27 +01:00
Seth Hillbrand
4fa3de2211
Ensure we clear forced position
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5699
2020-09-18 16:10:09 -07:00
Jeff Young
d468618411
Don't eat commands that aren't ours in SCH_MOVE_TOOL.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5692
2020-09-18 16:45:41 +01:00
PJM
c8879d9034
Eeschema: Check if user wants to warp mouse to origin of moved object
...
CHANGED: When moving a footprint, Eeschema was always warping the mouse
when moving an item regardless of the state of the "Warp mouse to
origin of moved object" checkbox. This MR now honors the state of the
checkbox when moving schematic items.
NOTE: Issue 5279 originally only mentioned Pcbnew, but after the fix
for Pcbnew was submitted, a user pointed out it also happened in
Eeschema. Becuase of this, there are two MRs that "fix" the same issue.
Fixes https://gitlab.com/kicad/code/kicad/issues/5279
2020-09-18 02:49:59 +00:00
Seth Hillbrand
471f81742f
ADDED: Align to Grid function in Eeschema
...
Adds tool option to align selected elements to the current grid.
Fixes https://gitlab.com/kicad/code/kicad/issues/5481
2020-09-17 12:27:43 -07:00
Seth Hillbrand
67a7aa8ba4
Make snapping size grid-dependent
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5638
Fixes https://gitlab.com/kicad/code/kicad/issues/5588
2020-09-15 12:07:34 -07:00
Seth Hillbrand
1703657fb5
Decrease default snap range
...
The snap range needs tuning to preference and monitor resolution. This
shifts the default range down for users until the customization bits are
implemented.
2020-09-12 08:34:21 -07:00
Seth Hillbrand
d14c6ba71f
Keep snap line alignment before new snaps
...
Also fixes the alignment line that was supposed to be dashed and not
solid.
2020-09-11 14:22:41 -07:00
Seth Hillbrand
23a9df8a59
ADDED: Allow Eeschema dragging graphical corners
...
This separates the two options (drag/move) into different actions. Drag
will drag all graphical lines connected. Move will disconnect the
graphical lines when moving.
2020-09-11 09:31:38 -07:00
Seth Hillbrand
f493e270ea
ADDED: Menu option to enable/disable snap to grid
...
You can now enable and disable snap to grid when drawing/editing across
all apps. You can also tie snap to grid to the visibility of the grid
to allow rapid enable/disable via grid display.
2020-09-10 20:09:30 -07:00
Seth Hillbrand
62433736bc
Snap Eeschema moves to nearest anchor
...
Fixes https://gitlab.com/kicad/code/kicad/issues/3803
2020-09-09 10:48:15 -07:00
Seth Hillbrand
4026904cc4
Make grid snapping depend on grid visibility
...
Turning the grid view on enables snapping to the grid. Turning it off
removes the snap and allows free draw
2020-09-09 10:18:15 -07:00
Seth Hillbrand
173b4ff588
Add snapping to eeschema
...
This generalizes both the SetPosition() function and ORIGIN_VIEWITEM
class away from the pcbnew-centric.
2020-09-09 10:18:15 -07:00
Seth Hillbrand
02a5d47de9
Avoid passing references in EESchema
...
This returns the connection list by value. This allows easier Python
use
Also renames m_End() to GetEnd()
2020-09-08 06:29:27 -07:00
Jeff Young
7b05e456cc
Bug fixes for multiple symbol instances in complex hierarchies
...
1) use SCH_COMPONENT::GetRef(), GetValue() and GetFootprint() when
instance-specific info is needed
2) update UpdateAllScreenReferences() to handle value and footprint.
3) BACKANNO is CvPcb's handler, not back annotation's handler. Which
means it needs GUI behaviour, not back annotation behaviour.
Fixes https://gitlab.com/kicad/code/kicad/issues/5520
2020-09-06 13:57:14 +01:00
Jeff Young
d5fd09249b
Save instance info on clipboard and reapply it when keeping annotations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5522
2020-09-06 11:32:28 +01:00
Jeff Young
be15053745
Allow back-annotation of differing values and footprints.
...
Also fixes a couple of bugs where resolving a textVar reference
to the refDes or unit wouldn't get the correct value in a
hierarchical schematic. (Unlogged.)
Fixes https://gitlab.com/kicad/code/kicad/issues/5397
2020-09-04 15:21:56 +00:00
jean-pierre charras
04ba129881
Add specific icon for save symbol to schematic.
...
Also update CMakeLists.txt to prepare compatibility with Inkscape 1.0
However the command line to invoke Inkscape is still for 0.92 version
2020-09-03 10:00:44 +02:00
Jeff Young
bd23d003d2
Bring Eeschema UI closer in line with Pcbnew for change terminology.
...
Also clears up the text & tooltip of the Remap Symbols function to
better explain why it's greyed out most of the time.
2020-09-02 15:21:51 +01:00
Jeff Young
fa8138ee5a
Rework Symbol Props to Footprint Props design.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2286
Fixes https://gitlab.com/kicad/code/kicad/issues/5414
2020-09-02 15:21:51 +01:00
Wayne Stambaugh
c9fa46ace8
Eeschema: allow symbols to be edited in place.
...
ADDED: Support to allow schematic symbols to be edited in place.
2020-09-01 07:28:20 -04:00
Jeff Young
6e72f609f0
Make sure router and via tools update when sizes change.
...
Also adds a size menu to the context menu for the Via tool.
Fixes https://gitlab.com/kicad/code/kicad/issues/5321
2020-08-31 23:33:02 +01:00
Jeff Young
88635ee5b6
Clean up error messages.
...
Convert a lot of nags to InfoBar errors/warnings/messages, and some
that never should have been exposed to wxFAIL_MSGs.
2020-08-31 14:19:57 +01:00
Jon Evans
38a4e4ad5a
Remove the last bits of the old netlist system
2020-08-30 16:30:04 -04:00
Jon Evans
cf17a675b4
Port simulator probing to new connectivity info
2020-08-30 16:05:16 -04:00
Jeff Young
1bd7290309
Repair broken logic in ForceKeepAnnotations.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5382
2020-08-29 18:18:23 +01:00
Mark Roszko
1082402b33
Convert UNDO_REDO_T to an enum class
2020-08-26 18:04:32 +00:00
jean-pierre charras
a97f2fb22a
Eeschema: cosmetic enhancement: add 2 missing icons
2020-08-26 13:00:46 +02:00
Jeff Young
1138c32bf3
Don't pass Cancel event where there was a specific action cancelled.
...
For instance, if during a move the user hits ESC they only want the
move cancelled, not (for instance) the selection dropped.
Fixes https://gitlab.com/kicad/code/kicad/issues/5356
2020-08-25 12:54:40 +01:00
Ian McInerney
2f7094b352
Cleanup some unused variables
...
* Make the app progress indicator only have the indeterminate state
when the taskbar indicator is used (causes an uused variable warning
on wx<3.1)
* Remove unused dry run variable in pcb_netlist.h
* Remove unused forceDropAnnotations from the paste special dialog
since the dialog only controls keeping them.
2020-08-24 01:51:23 +01:00
Jeff Young
97c34e2516
ADDED alternate pin definitions and assignments.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2002
2020-08-21 18:29:36 +01:00
Seth Hillbrand
7565a08396
eeschema: Add select all to schematic and library editor
...
Fixes https://gitlab.com/kicad/code/kicad/issues/2497
2020-08-20 16:07:10 -07:00
Wayne Stambaugh
ede39780e2
Remove all debugging output that cannot be disabled.
...
The use of printf, wxLogDebug, and std::err/std::out causes excessive
debugging output which makes finding specific debugging messages more
difficult than it needs to be.
There is still some debugging output in test code that really needs to
be moved into a unit test.
Add debugging output section to the coding policy regarding debugging
output.
2020-08-18 10:17:36 -04:00
Marek Roszko
1905a23ba1
libedit: fix double msg_panel refresh and use new move event
2020-08-18 13:11:48 +00:00
Marek Roszko
3674064b9e
Fix double msgpanel refresh and use the new moved event
2020-08-18 13:11:48 +00:00
Ian McInerney
3b05d7cddd
Move more frames to the new UI condition framework
...
* Frames moved: cvpcb, cvpcb footprints frame, gerbview, pagelayout editor
This also introduces new EDITOR_CONDITIONS that are used to set the
conditions of very common editor settings.
Also, some IDs were converted to tools in the pagelayout editor.
2020-08-16 19:10:25 +00:00
Jeff Young
2b0b7a5153
Clear pin net-name-driving cache when changing annotation.
...
Also update connectivity after clear annotation, annotate or back
annotate.
Also update status bar for highlighted nets.
Fixes https://gitlab.com/kicad/code/kicad/issues/5170
2020-08-14 12:41:20 +01:00
Wayne Stambaugh
0bb175a028
Eeschema: Add change and update symbol from library support.
...
ADDED: Add support to to Eeschema to change and update symbols from a
symbol library.
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/4565
2020-08-13 13:53:49 -04:00
Jeff Young
f4ab14f32d
Performance improvements for SchematicCleanup().
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4563
2020-08-10 12:41:52 +01:00
Jeff Young
e910dc0092
Make sure lines/wires/busses get default widths if not spec'ed.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4854
2020-08-09 21:52:36 +01:00
Jon Evans
5abc85aa80
Cleanup re-annotation code style
2020-08-09 12:43:05 -04:00
bjpiccioni
d08bf90576
ADDED: Geographic Reannotation
2020-08-09 12:43:05 -04:00
Jeff Young
dcd02539e3
Remove linked-pin processing from LIB_PIN's setters.
...
It belongs in the tool layer (specifically LIB_PIN_TOOL).
2020-08-03 22:21:35 +01:00
Jeff Young
5f3fd43b29
Fix uninitialized variable.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4948
2020-07-31 17:19:21 +01:00
jean-pierre charras
f00c59c446
Fix a few Coverity warnings.
2020-07-29 09:26:57 +02:00
Jeff Young
8a9fa53cd7
Clear annotations by default on copy/paste.
...
Folks didn't seem to like the "only clear when there are collisions"
behaviour. Paste Special remains available to "force keep".
Fixes https://gitlab.com/kicad/code/kicad/issues/4933
Fixes https://gitlab.com/kicad/code/kicad/issues/4744
2020-07-27 19:53:42 +01:00
Mark Roszko
7bdb98f961
libedit: Make context menu follow context
2020-07-26 20:16:38 +00:00
Jeff Young
864087890b
Fix typo assuming new field value was always the name.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4936
2020-07-22 15:10:54 +01:00
Ian McInerney
ae45c08ce4
Fix label creation for new netname driven from a pin
...
LIB_PIN is never used in the connectivity calculation,
so it should use SCH_PIN instead. Additionally, the label
orientation should take into account the orientation of
the component to ensure they don't overlap.
2020-07-19 01:52:34 +01:00
Jeff Young
944c9eac7c
Allow Update Schematic from PCB to re-link based on refdes.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4306
2020-07-16 18:32:49 +01:00
Jeff Young
11ca21039a
Clear new flag when creating image pins.
...
Otherwise if you then move it we'll think it needs to be inserted
and end up with a circular drawings list.
Fixes https://gitlab.com/kicad/code/kicad/issues/4622
2020-07-16 01:39:29 +01:00
Jeff Young
e8079bf655
Make sure UI gets adjusted for Symbol property changes.
...
For instance, if the number of units is changed from 1 to not-1
or vice versa then we need to rebuild the units selector.
Fixes https://gitlab.com/kicad/code/kicad/issues/4622
2020-07-16 01:39:29 +01:00
Jeff Young
7340c97ef9
Undo for schematic-wide operations.
...
Editing value/footprint fields of multi-unit components.
Find/Change.
Annotation.
Back annotation.
Fixes https://gitlab.com/kicad/code/kicad/issues/2122
Fixes https://gitlab.com/kicad/code/kicad/issues/4869
Fixes https://gitlab.com/kicad/code/kicad/issues/3933
Fixes https://gitlab.com/kicad/code/kicad/issues/4871
Fixes https://gitlab.com/kicad/code/kicad/issues/3899
2020-07-13 12:32:17 +01:00
Jeff Young
9b92b275de
Remove vestiages of old open-PCB-for-settings hack.
...
We used to have to open a PCB_EDIT_FRAME to get the settings for
the footprint editor and footprint viewer. This necessitated some
special processing when opening a PCB_EDIT_FRAME to actually edit
a board as it might already be open but unloaded.
Since the new settings architecture allows the footprint editor and
footprint viewer to init themselves we no longer need the special-
case code.
2020-07-11 21:19:49 +01:00
Jeff Young
e325d2e18f
Allow Net Inspector to create, rename and delete nets.
...
ADDED: create/edit/delete nets in PCBnew Net Inspector
ADDED: update from PCB now allows updating of changed nets
Fixes https://gitlab.com/kicad/code/kicad/issues/1996
2020-07-11 21:19:49 +01:00
Jon Evans
4a5792cb87
Fix bus unfolding in the wake of bus entry changes
...
Since bus entry shape is not a thing anymore,
unfolding routine can be simplified to just use size
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4853
2020-07-09 18:51:42 -04:00
Wayne Stambaugh
4c383c51fa
Eeschema: add update symbol from library command to context menu.
...
Rather than displaying dialog that has every update option possible like
updating footprints in the board editor, this change updates the library
symbol immediately using the symbol library identifier and requires no
additional input from the user.
ADDED: Context menu entry for schematic symbols to update the symbol from
the symbol library using the existing library identifier.
2020-07-08 10:15:24 -04:00
Seth Hillbrand
7cea4b23f1
ADDED: Expand selection in context menu
...
Break out the context menu with heuristically limited choices being
appended to the main list rather than re-selecting
Fixes https://gitlab.com/kicad/code/kicad/issues/4799
2020-07-07 14:18:35 -07:00
Jeff Young
358cccfd73
A bit of safety if realtime connection updating isn't on.
2020-07-07 14:45:14 +01:00
Jeff Young
e66523586b
Add Assign Netclass... to context menu.
...
ADDED Assign Netclass feature to EEschema.
Netclass assignments also now shown in status bar.
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-07 14:23:39 +01:00
Jeff Young
3939b31027
Integration of netclasses into Eeschema.
...
This is mostly architecture, with the hookup of the Schematic Setup
dialog's Net Classes page. Things like assigning to a net on the
canvas to follow.
Fixes https://gitlab.com/kicad/code/kicad/issues/2132
Fixes https://gitlab.com/kicad/code/kicad/issues/4581
2020-07-06 20:00:50 +01:00
Jon Evans
e9b99cc8b7
Fix grabbing connections from power components
2020-07-04 20:59:35 -04:00
Jon Evans
b94e29e3b1
Persist ERC pin table in project settings
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2066
Also a partial fix for https://gitlab.com/kicad/code/kicad/-/issues/4577
2020-07-03 17:11:42 -04:00
Ian McInerney
bb1afb747a
Remove bus entry shape
...
The shape isn't needed anymore, since bus entries can be rotated
and mirrored like other items.
Fixes https://gitlab.com/kicad/code/kicad/issues/4588
2020-06-30 02:09:33 +01:00
Jeff Young
6acd35c981
Cleanup.
2020-06-27 20:07:26 +01:00
Wayne Stambaugh
2078e629c5
Eeschema: allow editing of junction properties diameter and color.
...
Add missing plot and print changes for the new bus entry properties.
ADDED: Junction properties diameter and color can now be edited.
Fixes: https://gitlab.com/kicad/code/kicad/issues/4593
2020-06-24 13:36:17 -04:00
Wayne Stambaugh
853cf2c9b9
Eeschema: make bus wire entry properties editable.
...
CHANGED: Bus to wire entry object properties line color, width, and style
can now be edited.
Fixes: https://gitlab.com/kicad/code/kicad/issues/4591
2020-06-24 13:36:17 -04: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
jean-pierre charras
eef81e84b2
Avoid marking a default name translatable: after translation the result
...
can be unexpected and broken.
2020-06-06 20:51:50 +02:00
Ian McInerney
4357c1d3b3
Coverity and compiler warning fixes
...
* Initialize variables
* Test dynamic casts
Fixes https://gitlab.com/kicad/code/kicad/issues/4620
2020-06-05 12:50:56 +01:00
Jon Evans
ae852e17f9
Re-add null component checking in UpdateNetHighlighting
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/4606
2020-06-03 20:36:30 -04:00
Jeff Young
c01046c12f
Give new sheets an initial name and filepath.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/4516
2020-06-02 20:28:20 +01:00
Jeff Young
aadc926740
Coverity fixes and "auto" removal.
2020-06-02 17:22:23 +01:00
Wayne Stambaugh
52078a4b1b
Allow setting mandatory derived symbol field properties.
...
CHANGED: All mandatory fields in derived symbols can be edited. This
not only includes the field value but also all text properties.
Kill the dual datasheet variable storage which caused many datasheet
bugs over the years. The datasheet is now always stored in the data
sheet field.
2020-06-02 14:21:11 +00:00