Commit Graph

237 Commits

Author SHA1 Message Date
John Beard d4883da98b Eeschema: construct simulator cursors on demand
Statically constructing wxCursors as used for the probe
and tune cursors crashes the qa_eagle_plugin test
instantly.

Fix this by introducing a new class CURSOR_STORE,
which allows to abstract the platform wierdness of wxCursors
and allow the simulator to laziliy init its own cursors
at runtime.

This code isn't properly tested, as these cursors are never
actually used. However, it does allow the eeschema unit test
to run.

Fixes: lp:1781191
* https://bugs.launchpad.net/kicad/+bug/1781191

(cherry picked from commit 6f1c3f5ef8)
2019-04-02 19:08:26 +01:00
Seth Hillbrand de22148b44 Move env var substitution into GetAssociatedDocument
We always want the documents to have their variables replaced when
opening the associated file.

Fixes: lp:1819309
* https://bugs.launchpad.net/kicad/+bug/1819309

(cherry picked from commit 9bfce26ce7)
2019-03-10 10:44:23 -07:00
Seth Hillbrand ea84020b1f eeschema: Recache bitmaps when changing
Clearing the cache removes all items from screen until the cache is
refreshed.  Instead, we wanted to re-cache the items to take into
account the bitmap changes.

Fixes: lp:1815443
* https://bugs.launchpad.net/kicad/+bug/1815443
2019-02-12 08:16:23 -08:00
Seth Hillbrand 4901481e12 eeschema: Rotate bus wire entry components
These components were rotatable as a block but not individually.

Fixes: lp:1809448
* https://bugs.launchpad.net/kicad/+bug/1809448
2019-01-28 09:55:56 -08:00
jean-pierre charras 7f6801bc27 Eeschema: block rotate and block mirror: fix missing screen refresh.
Remove also outdated comments.
2019-01-17 15:25:47 +01:00
Tomasz Włostowski 786ee0ec69 eeschema: fix assertion fail when aborting a paste block operation after the pasted block has been rotated
Fixes: lp:1812073
* https://bugs.launchpad.net/kicad/+bug/1812073
2019-01-17 00:46:59 +01:00
Jeff Young 72a1052bb9 Make sure parents get redrawn to refresh module text items.
Fixes: lp:1809912
* https://bugs.launchpad.net/kicad/+bug/1809912
2018-12-27 18:42:04 +00:00
Jeff Young 51e6f56300 Clean up view when aborting move item.
Fixes: lp:1809444
* https://bugs.launchpad.net/kicad/+bug/1809444
2018-12-21 20:32:10 +00:00
Jeff Young 61b749f0b2 Update dangling ends when resizing sheet.
Fixes: lp:1805127
* https://bugs.launchpad.net/kicad/+bug/1805127
2018-11-30 21:34:18 +00:00
Jeff Young ac2e400598 Re-instate schematic-scope to dangling ends.
Fixes: lp:1803117
* https://bugs.launchpad.net/kicad/+bug/1803117
2018-11-13 21:03:18 +00:00
Jeff Young cbd13c7127 Show dangling pins when moving items; don't when dragging.
Fixes: lp:1801962
* https://bugs.launchpad.net/kicad/+bug/1801962

Fixes: lp:1801959
* https://bugs.launchpad.net/kicad/+bug/1801959
2018-11-07 14:24:16 +00:00
Jeff Young 6e810a00e4 Warp mouse from context menu before dragging.
Fixes: lp:1798815
* https://bugs.launchpad.net/kicad/+bug/1798815
2018-11-04 12:35:01 +00:00
John Beard a1fad9d3fe Eeschema: allow dragging of text
Text doesn't have "special" handling of dragging, like connected items (it's
basically just a move).  However, allowing "drag" to work on text makes
handling text consistent when dragging other items.
2018-10-31 16:19:03 +00:00
Jeff Young 364be90dc5 Fix translation issues with copy/paste block.
Also fix issues with paste not working at all from the context
menu in LibEdit.

Fixes: lp:1800513
* https://bugs.launchpad.net/kicad/+bug/1800513
2018-10-30 11:33:49 +00:00
jean-pierre charras b075e76ede Eeschema: fix a draw issue when aborting a move symbol field or a sheet pin.
The initial drawings were not updated, making the moved item invisible on screen.

Fixes: lp:1800142
https://bugs.launchpad.net/kicad/+bug/1800142
2018-10-26 15:27:20 +02:00
Jeff Young 66a0f60b4c Refresh preview items when Rotate or Mirror during move.
It's not enough to just refresh the canvas because the items are
hidden on the main canvas and copies are placed into the preview
group.
2018-10-24 22:00:50 +01:00
Jeff Young 4524dce9bb Tie up some loose ends from JP's SHEET_PIN fixes.
Fixes: lp:1799606
* https://bugs.launchpad.net/kicad/+bug/1799606
2018-10-24 22:00:50 +01:00
Jeff Young 96e65c7f23 Hide existing object when displaying moving preview.
Fixes: lp:1799478
* https://bugs.launchpad.net/kicad/+bug/1799478
2018-10-23 20:54:42 +01:00
jean-pierre charras 8ecdf58bad Eeschema, load a new bitmap image from file: fix crash when aborting.
Remove duplicate code in edit_bitmap.cpp.
2018-10-21 10:59:06 +02:00
Jeff Young 8a54b1b3b7 Add view refresh calls for edit operations.
Note that the bug referenced in the "fixes" section is only one
of many addressed by this commit.

Fixes: lp:1798449
* https://bugs.launchpad.net/kicad/+bug/1798449
2018-10-18 12:12:48 +01:00
Jeff Young 1114b5cfa9 Refresh item when its dangling state changes.
Fixes: lp:1797996
* https://bugs.launchpad.net/kicad/+bug/1797996
2018-10-16 17:07:59 +01:00
Seth Hillbrand bfa7f16b44 Wrap printfs in DBG defines
This places the remaining printf statements behind DBG() macros to
suppress their output on release builds.  We should remove these prior
to 5.1
2018-10-11 13:32:20 -07:00
Jeff Young 3b59c6cf0a Don't add item to view twice. 2018-10-09 11:08:56 +01:00
Jeff Young 97c83766db Refresh issues around sheet pins. 2018-10-09 11:08:56 +01:00
Jeff Young ca3751fbbb Add GAL refresh for some more commands and remove unused DC params. 2018-10-09 11:08:56 +01:00
Jeff Young 268565ee41 Refresh component when children change. 2018-10-09 11:08:56 +01:00
Jeff Young e2ea9b772a Fix offset issue when moving text. 2018-10-09 11:08:56 +01:00
jean-pierre charras 1a0f3b79cc Fix SCH_BITMAP handling in gal. 2018-10-09 11:08:56 +01:00
Jeff Young 5b602d02ab Set block start position when grabbing single items. 2018-10-09 11:08:56 +01:00
Jeff Young 4161bb6756 Overhaul block logic to support rotate/mirror on the fly.
The old code delayed duplicating till the end which means the
rotate/mirror would affect the original, and then be duplicated
leaving the original incorrectly rotated/mirrored.
2018-10-09 11:08:55 +01:00
Jeff Young 3c82ad3220 Finish up the block rotate/mirror fixes.
Block rotate and mirror now work like they do in Pcbnew (that is
they're treated as part of the block move/duplicate/whatever
rather than finishing it).

Fixes: lp:1780794
* https://bugs.launchpad.net/kicad/+bug/1780794
2018-10-09 11:08:55 +01:00
Jeff Young 924e56e076 WIP for block rotate and mirror.
Block rotate now doesn't drop the block, but it does introduce one
extra undo step per rotate.

Fixes: lp:1780794
* https://bugs.launchpad.net/kicad/+bug/1780794
2018-10-09 11:08:55 +01:00
Jeff Young d7178c7833 Implement GAL refresh for a bunch of operations. 2018-10-09 11:08:55 +01:00
Tomasz Wlostowski 48d36f854e eeschema-gal: fix cursor shape switching 2018-10-09 11:08:55 +01:00
Tomasz Wlostowski 90c7c60471 eeschema-gal: initial GALified version. Lots of stuff still to do! 2018-10-09 11:08:52 +01:00
Jeff Young 533b26e8a1 Add hotkey for viewing symbol datasheet.
Also fixes a bug when there are multiple datasheets to choose from.

Fixes: lp:1793978
* https://bugs.launchpad.net/kicad/+bug/1793978
2018-09-24 15:46:45 +01:00
jean-pierre charras 181ce46b91 Eeschema: fix incorrect references clearing for shared sheet paths.
Previously, when creating a new instance of a sheet, the full set of references
was cleared.
Moreover, if this sheet has sub-sheets, the annotation was incorrectly handled

Now only (and all) new sheet path(s) created have a reference cleared, as expected.
(new sheet paths can be more than one, if the new instance of the sheet has sub-sheets)

Fixes: lp:1789048
https://bugs.launchpad.net/kicad/+bug/1789048
2018-09-04 12:36:38 +02:00
jean-pierre charras 07dc12fdd3 Fix incorrect UI management of Zoom to Selection, created by fix 2a419156 2018-04-14 17:44:17 +02:00
Jeff Young 2a419156e0 Don't try to check uncheckable menu items.
When updating toolbars make sure the events are coming from the
toolbar in question (and not the menus which share the same ID).

Fixes: lp:1763563
* https://bugs.launchpad.net/kicad/+bug/1763563
2018-04-13 21:42:31 +01:00
jean-pierre charras e750417fa0 Eeschema: fix many wxASSERT when trying to open menus from the main menubar.
This is due to the fact the same ID was used for menuitems in menubar,
and tools in toobars.
Especially, some items were not compatible due to different attributes.

Windows does not accept the same ID for 2 items inside the same frame.
It creates issues (items not shown, Asserts, ...)
2018-04-01 20:58:27 +02:00
Jeff Young 4693fd6200 Resolve env vars when looking up documentation files.
Fixes: lp:1729276
* https://bugs.launchpad.net/kicad/+bug/1729276
2018-03-08 23:51:10 +00:00
jean-pierre charras 8022f1cc01 fix code after renamin files 2018-01-30 11:49:51 +01:00
Jeff Young 8a21641639 Eeschema: fix block copy and cut command event handlers.
Popup menu IDs must be between START_RANGE and END_RANGE to get bound to
the right event handler.

Fixes: lp:1667730
* https://bugs.launchpad.net/kicad/+bug/1667730
2017-12-28 16:12:33 -05:00
Seth Hillbrand 069448f20e Eeschema: Automatically manage junctions
CHANGE: eeschema automatically adds and removes junctions
when required by the schematic

Fixes: lp:593888
* https://bugs.launchpad.net/kicad/+bug/593888

Fixes: lp:1482111
* https://bugs.launchpad.net/kicad/+bug/1482111

Fixes: lp:1563153
* https://bugs.launchpad.net/kicad/+bug/1563153

Fixes: lp:1730219
* https://bugs.launchpad.net/kicad/+bug/1730219

Fixes: lp:1491052
* https://bugs.launchpad.net/kicad/+bug/1491052
2017-11-30 10:02:24 -05:00
Seth Hillbrand b5ec5f9a73 Eeschema: Moving BreakSegment into SCH_EDIT_FRAME
BreakSegment now breaks a known segment and BreakSegments
breaks all segments. This allows functions to break a
segment without needing to iterate through the whole list.
2017-11-30 10:02:15 -05:00
Seth Hillbrand e9a297de5b Eeschema: Removing DC dependencies 2017-11-30 10:02:05 -05:00
Seth Hillbrand d0b2f078fe Eeschema: Unify delete operations
DeleteItemsInList now shares the code for DeleteItem.
SCH_FRAME::DeleteItem removes junctions that are no longer needed.
2017-11-30 10:01:21 -05:00
Maciej Suminski 2ed19668cd Eeschema: removed protos.h
Contained duplicated function declarations with invalid comments.
2017-11-21 23:18:55 +01:00
Seth Hillbrand b576189a00 Eeschema: Adding line styling options
NEW: Adds support in eeschema for changing the default line style,
width and color on a case-by-case basis.

CHANGED: "Wire" lines now optionally include data on the line style,
width and color if they differ from the default.

Fixes: lp:594059
* https://bugs.launchpad.net/kicad/+bug/594059

Fixes: lp:1405026
* https://bugs.launchpad.net/kicad/+bug/1405026
2017-11-15 08:10:51 +01:00
jean-pierre charras 302f234264 Eeschema: fix an issue: doc never displayed if a non English language is used due to a bad way to retrieve the DATASHEET field. 2017-10-24 09:47:23 +02:00