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