Tomasz Włostowski
56336fdafe
POINT_EDITOR: migrate to ZONE_FILLER class
2017-12-05 14:54:57 +01:00
Tomasz Włostowski
83b020d4da
PCB_TOOL: added convenience methods for accessing current SELECTION
2017-12-05 14:54:57 +01:00
Tomasz Włostowski
316ddadec1
pcbnew: Optimized zone filling algorithm.
2017-12-05 14:54:57 +01:00
Maciej Suminski
769611b79e
Do not ask for confirmation to open Properties dialog for a locked footprint
...
Opening Properties dialog normally does not ask the user to confirm the
action, even for locked items. The exception was a case when there was
nothing selected and Properties dialog was invoked via its hot key -
then SELECTION_TOOL::RequestSelection() tried to get the item under the
cursor, verifying the lock flag.
Fixes: lp:1734537
* https://bugs.launchpad.net/kicad/+bug/1734537
2017-11-28 17:35:46 +01:00
Maciej Suminski
db3185723e
Drop a locked item after a move operation with a single click
...
Locked items used to require two clicks to drop an item. This patch
enables dropping with a single click.
Fixes: lp:1716580
* https://bugs.launchpad.net/kicad/+bug/1716580
2017-11-28 15:09:18 +01:00
Maciej Suminski
f36350cb88
Do not relaunch the move tool when it is active
...
Fixes: lp:1678575
* https://bugs.launchpad.net/kicad/+bug/1678575
2017-11-28 10:46:53 +01:00
Jon Evans
f107545a82
Show message panel info for highlighted net in GAL (Fixes lp:1518626)
2017-11-28 08:16:58 +01:00
Jose I Romero
3d2b5e3922
Allow items to be moved from all anchor points
...
A change in commit 5731000135
caused kicad to stop allowing users
to move items like footprints, arcs and lines using anchors other
than the center point.
This was caused by the new code that stores reference points for
clipboard pasting, a call to updateModificationPoint() prevented
some old code paths from executing, which caused the selection to
snap into the cursor, always using the center anchor.
This fix moves the call within the if-cases that need it, and adds
a ClearReferencePoint call when the selection is "dropped" to allow
the user to grab the same selection again from a different anchor.
Fixes: lp:1722512
* https://bugs.launchpad.net/kicad/+bug/1722512
2017-11-23 09:35:39 +01:00
Tomasz Włostowski
b76a6210c5
pcbnew: fixed stuck cursor when ForceCursorPosition() is active and cursor is moved by keyboard arrows
...
Fixes: lp:1729301
* https://bugs.launchpad.net/kicad/+bug/1729301
2017-11-16 00:43:23 +01:00
Tomasz Włostowski
00ad8f24a0
pcbnew: Minor changes in CONNECTIVITY_DATA interface:
...
- renamed connectivity.[h|cpp] to connectivity_data [.h|.cpp] so that the file name matches the main class name.
- GetNetItems() now returns a vector instead of a list
2017-11-15 18:34:08 +01:00
jean-pierre charras
661bab7220
Fix crash when appending a board in pcbnew.
...
Fixes: lp:1731539
https://bugs.launchpad.net/kicad/+bug/1731539
2017-11-11 09:09:24 +01:00
Marvin Schmidt
69974b73db
Remove some extra semicolons
2017-11-09 19:52:18 +01:00
Tomasz Włostowski
9932ff32ae
refactoring: wrapped boost::optional in OPT<> class for the purpose of easier transition to C++17 in the future
2017-11-03 23:59:02 +01:00
Tomasz Włostowski
b945d2a708
cleanup: replace CLASS_MIRE with CLASS_PCB_TARGET for naming clarity
2017-11-03 20:02:06 +01:00
Tomasz Włostowski
3170eba801
refactoring: implemented SELECTION_TOOL's own GetCollectorsGuide() to avoid dependency on PCB_BASE_FRAME
2017-11-03 20:02:06 +01:00
Tomasz Włostowski
781008bfa5
refactoring: allow to run TOOL_MANAGER and SELECTION_TOOL without a host wxFrame
2017-11-03 20:02:06 +01:00
Tomasz Włostowski
8a09a1d329
refactoring: derive PCB-specific PCB_VIEW from VIEW with the intention of moving PCB_EDIT_FRAME entries used by the tools (e.g. GetActiveLayer) there
2017-11-03 20:02:06 +01:00
Tomasz Włostowski
81d1e17f02
refactoring: renamed pcbstruct.h to pcb_display_options.h, DISPLAY_OPTIONS->PCB_DISPLAY_OPTIONS
2017-11-03 20:02:06 +01:00
jean-pierre charras
78ec983632
DRAWSEGMENT fix crash when trying to copy a empty polygon.
...
SHAPE_POLY_SET: fix crash in VertexCount when it is a empty poly set, or when params are incorrect.
minor other fixes:
warning in degug mode in dialog_dxf_import_base.cpp
pcb_painter.cpp: remove a useless debug line.
2017-10-25 09:39:26 +02:00
jean-pierre charras
9bd5522419
Add a gerber test file
...
remove a few minor coverity warnings
2017-10-23 09:20:10 +02:00
jean-pierre charras
0b1eb5695f
Fix crash when converting selected EDGE_MODULE items to a custom pad.
2017-10-21 12:46:59 +02:00
jean-pierre charras
8ba11dbd68
Minor fixes and enhancements
2017-10-21 11:00:59 +02:00
jean-pierre charras
87821c1490
Explode pad to shapes command: Fix incorrect conversion of primitive to EDGE_MODULE (missing initialization)
2017-10-21 08:48:26 +02:00
jean-pierre charras
55bb35a582
Cosmetic enhancement: add icon to 2 context menus (explode pad to graphic shapes and create pad from graphic shapes)
2017-10-20 18:25:44 +02:00
Tomasz Włostowski
22063dc5a5
pcbnew: clear selection reference point when moving footprint by name
...
Fixes: lp:1722870
* https://bugs.launchpad.net/kicad/+bug/1722870
2017-10-19 23:57:42 +02:00
Tomasz Włostowski
ac095b6724
pcbnew: tools for converting between custom-shaped pads and graphical shapes
2017-10-19 23:35:18 +02:00
Tomasz Włostowski
d9bfbb4fec
pcbnew: added graphical polygon drawing & editing tools
2017-10-19 23:14:01 +02:00
Maciej Suminski
e2ba6da886
Fixed an empty msgid warning (gettext)
2017-10-02 08:49:33 +02:00
Tomasz Włostowski
c6a0ad895b
pcbnew: code formatting, removed previous module editor copy/paste functions
2017-09-30 14:28:54 +02:00
Tomasz Włostowski
adcda4a3e8
pcbnew: prompt for reference point in the message panel, add cut/copy/paste entries in the Edit menu
2017-09-30 14:28:54 +02:00
Tomasz Włostowski
5731000135
pcbnew/copy&paste: multiple improvements:
...
- fixed netcode propagation bug
- factored out EDIT_TOOL::m_offset, now selection offset is stored in SELECTION class
- added VECTOR2I-based Move/Flip/Rotate methods in BOARD_ITEM
2017-09-30 14:28:54 +02:00
Tomasz Włostowski
f573a2e685
wip
2017-09-30 14:28:54 +02:00
Tomasz Włostowski
3fb926a8f2
Fix snapping to anchors in PICKER_TOOL & highlighting of pasted items
2017-09-30 14:28:54 +02:00
Tomasz Włostowski
931a1ccaff
Improved copy/paste functionality by Kristoffer:
...
- added selection of reference point
- added snapping when pasting
- some minor code refactoring
- disabled pasting between footprint and pcb editors due to model incompatibility
2017-09-30 14:28:54 +02:00
Kristoffer Ödmark
79d81ae9ff
forward the event
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
4ce38abce2
renamed copypasta functions, fixed a paste_module error
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
b4879d061c
Fixed menu items, moved the copy and cut to the EDIT_TOOL, Fixed rendering when copying a module
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
7ff096fbac
updating patch to master
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
bd8980596f
Some code cleanup to follow kicad style better
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
6a02ee6c4b
fixed crash on copying texte modules
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
84b803042c
Improvements to copy-paste
...
-Can paste items from board to module-editor (only module parts)
-Can paste entire modules just as copy
-Can copy items inside module-editor
Known limitations:
-Will crash if trying to paste a module containing module_text inside
the module editor ( dont know why, problem existed before )
-If copying things with strange layer names, the layer names will be
changed.
2017-09-30 14:28:53 +02:00
Kristoffer Ödmark
c0981b8444
Added a new plugin that can save and load to clipboard, using ctrl+shift+c/v for copy pasting
...
Added the needed kicad_clipboard files and made copy pasted modules have no path
2017-09-30 14:28:53 +02:00
Oliver Walters
c977c88a10
Zone keepout exclusion now works on multiple layers!
...
Bug fixes for keepout layers
- Changed LSET::size() -> LSET::count()
- Save/load functions no longer depend on zone being a keepout
2017-09-27 10:35:00 +02:00
Oliver Walters
2895030cfa
Add multi-layer zone rendering for GAL
...
Enable multi-layer selection for keepout zones in GAL
2017-09-27 10:34:59 +02:00
Baranovskiy Konstantin
28997e7f37
Footprint viewer: fix zooming from toolbar or menu in GAL.
2017-09-26 16:24:54 +02:00
Jon Evans
256f52f27e
Use VIEW_GROUP for candidate highlighting; enable in PcbNew also
2017-09-25 13:39:37 +02:00
Maciej Suminski
df472e6426
Added mouse position refresh event WX_VIEW_CONTROLS::WarpCursor()
2017-09-22 11:13:45 +02:00
Michael Geselbracht
da037027fb
Do not warp viewport when dragging FPs
...
Fixes: lp:1714611
* https://bugs.launchpad.net/kicad/+bug/1714611
2017-09-22 11:13:40 +02:00
Maciej Suminski
cca63801bf
Renamed D_PAD::{Set,Get}PadName() to D_PAD::{Set,Get}Name()
2017-09-19 18:23:50 +02:00
Maciej Suminski
25abe30c72
Code formatting
2017-09-18 11:25:32 +02:00
Kristoffer Ödmark
aaa1e35b6a
Heirarchical sheet selection includes more.
...
Now the heirarchical sheet selection feature includes tracks that belong
to a net spanning multiple sheets, but only by doing a logical connection
from the pads of the modules. This is to be able to select connections
between components on the same sheet. For example if the sheet contains a
star power connection or something similar, then most of the sheet local
connections will now also be included.
2017-09-18 11:16:13 +02:00
Jon Evans
eec1366ead
Move ZOOM_TOOL to common; add RMB-drag to zoom out
2017-08-31 10:04:00 +02:00
Tomasz Włostowski
2e4c22f718
router: fix corruption of board data when the inline drag is activated while the router tool is running
...
Fixes: lp:1712838
* https://bugs.launchpad.net/kicad/+bug/1712838
2017-08-30 01:16:06 +02:00
Maciej Suminski
7ce86e0da5
Fix crash when duplicating an item in FP editor
...
Fixes: lp:1712828
* https://bugs.launchpad.net/kicad/+bug/1712828
2017-08-24 16:31:31 +02:00
Tomasz Włostowski
60fdc6229d
router: fixed inline dragging & settings dialogs inconsistency
2017-08-22 16:44:58 +02:00
Maciej Suminski
31ef52a365
Fix fine-grid cursor movement using arrow keys
...
Fixes: lp:1497976
* https://bugs.launchpad.net/kicad/+bug/1497976
2017-08-22 15:14:33 +02:00
jean-pierre charras
068f96f2ce
Fix untranslatable empty string
2017-08-09 08:29:30 +02:00
Maciej Suminski
53204e097a
Reenable pad enumeration by clicking
...
Fixes: lp:1708231
* https://bugs.launchpad.net/kicad/+bug/1708231
2017-08-08 16:47:07 +02:00
Tomasz Włostowski
2d9ab80b4e
Few improvements to the GAL router:
...
- missing 'break track' functionality
- 'drag 45 degree' and 'drag free angle' context menu shorcuts, both in the router tool and in the default context menu
- bugfix: length tuner tool can now be used again
Fixes: lp:1708386
* https://bugs.launchpad.net/kicad/+bug/1708386
Fixes: lp:1708402
* https://bugs.launchpad.net/kicad/+bug/1708402
2017-08-07 14:28:46 +02:00
Maciej Suminski
9aaea050b9
Do not stop dragging after a rotation command
...
Fixes: lp:1708876
* https://bugs.launchpad.net/kicad/+bug/1708876
2017-08-07 10:02:10 +02:00
Maciej Suminski
e8345dce51
Display GRID_HELPER auxiliary axes and snap points
2017-08-07 08:59:32 +02:00
jean-pierre charras
b8c621a991
fix a few Coverity warnings.
2017-08-06 14:23:03 +02:00
Tomasz Włostowski
32185ddcd3
Multiple improvements concerning colors, configuration handling and legacy features in pcbnew:
...
- support for background color setting
- removed several global config settings (such as g_Drc_On)
- wrapped most of global config settings in PCB_GENERAL_SETTINGS class
- reorganized PCB general options dialog to clearly mark which options concern only the legacy canvas
- new GAL feature for legacy users: double-click (or E) to change track width available as an option.
Fixes: lp:1530543
* https://bugs.launchpad.net/kicad/+bug/1530543
Fixes: lp:1707145
* https://bugs.launchpad.net/kicad/+bug/1707145
2017-08-04 16:06:57 +02:00
Maciej Suminski
3570154ef0
Fixes to speed select/deselect commit ( 161045f1
)
...
Deselecting items require full refresh, as otherwise e.g.
umbilical lines for modules stays.
2017-08-03 16:14:46 +02:00
Maciej Suminski
71c33d3dcd
Fixes for canceling selection after invoking menu on an unselected item ( 9cbcb322
)
2017-08-03 14:28:07 +02:00
Maciej Suminski
3629fcbf4a
Code formatting
2017-08-03 14:28:07 +02:00
Maciej Suminski
30ad7e4f99
Improved the algorithm for guessing the selection candidates
...
Now it filters out items that are bigger than the current viewport
2017-08-01 18:00:30 +02:00
Maciej Suminski
efdf0c6b84
Parameter tuning for hiding dynamic ratsnest
2017-08-01 17:57:18 +02:00
Maciej Suminski
9cbcb3224c
Cancel selection if an item has been selected by right click
2017-08-01 15:23:08 +02:00
Maciej Suminski
f303bf2999
Hide temporarily ratsnest when it is too complex for real-time calculation
2017-08-01 15:22:24 +02:00
Maciej Suminski
1ac34b44bf
Removed explicit calls to update ratsnest from EDIT_TOOL
2017-08-01 15:22:23 +02:00
Maciej Suminski
76bd05a69b
Prevent creating too many transitions by TOOL_MANAGER
...
- added TOOL_INTERACTIVE::resetTransitions()
- made protected and moved TOOL_BASE::setTransitions() to TOOL_INTERACTIVE
- TOOL_MANAGER calls TOOL_INTERACTIVE::resetTransitions() instead of
setTransitions()
2017-07-31 15:09:19 +02:00
Maciej Suminski
9e385872a0
Remove an excessive VIEW::Update() call
2017-07-31 15:09:19 +02:00
Maciej Suminski
acbfea48f2
Fixed a bug allowing to drag locked footprints without approval
...
Fixes: lp:1576655
* https://bugs.launchpad.net/kicad/+bug/1576655
2017-07-27 17:13:22 +02:00
Tomasz Włostowski
b682882807
pcbnew: add keyboard shortcuts [1..9] to the selection disambiguation menu
2017-07-27 16:21:54 +02:00
Maciej Suminski
3ee2f80188
Drag footprints by pads only if one is under the cursor
2017-07-27 11:13:25 +02:00
Maciej Suminski
545a80839b
Removed an excessive selection request from EDIT_TOOL
2017-07-27 10:56:26 +02:00
Oliver Walters
161045f17d
Speed improvement for select / deselect in GAL
...
- No longer invalidates the item layers
- For multiple items, this results in a drastic speed improvement
2017-07-25 16:34:03 +02:00
Fabrizio Tappero
f453cec938
Changed all Rotate 90 deg CW with Rotate Clockwise. Changed all Rotate 90 deg CCW with Rotate Counterclockwise
2017-07-21 10:28:44 -04:00
Fabrizio Tappero
deeeed38a1
deleted several redundant icons in right-click menu. The objective is to get to a more uniforme right click menu look
...
Signed-off-by: Fabrizio Tappero <fabrizio.tappero@gmail.com>
2017-07-21 10:28:42 -04:00
jean-pierre charras
242c47ffd4
Pcbnew: Fix incorrect initialization of a variable in MODULE_EDITOR_TOOLS::EnumeratePads().
...
This issue is due to an unexpected behavior of evt->IsClick( BUT_LEFT ) used in this method,
which detect a mouse release button and not a mouse click down.
Fixes: lp:1700197
https://bugs.launchpad.net/kicad/+bug/1700197
2017-07-19 16:00:25 +02:00
Maciej Suminski
f942e3e31f
Fixed a crash when items are unselected when dragging
...
Fixes: lp:1702355
* https://bugs.launchpad.net/kicad/+bug/1702355
2017-07-19 13:00:51 +02:00
Maciej Suminski
64f00f447f
pcbnew - refactor move exactly tool (3/2)
...
* code formatting
* turned EDIT_TOOL::getAnchorPoint() to static getAnchorPoint()
* removed unnecessary include directives
2017-07-19 11:36:35 +02:00
Robbert Lagerweij
b7f2525c5d
pcbnew - refactor move exactly tool (2/2)
...
This patch does the following:
* extracts a method to determine the anchor point of the move
* improves the logic of the anchor point determination for selections of multiple objects which do not contain footprints
2017-07-19 11:36:35 +02:00
Robbert Lagerweij
bf832dd941
pcbnew - refactor move exactly tool (1/2)
...
This patch does the following:
* move the determination of the origin coordinates to the dialog (reduces code duplication)
2017-07-19 11:36:35 +02:00
Maciej Suminski
10c5297f2e
Code clean-up and formatting
2017-07-17 10:21:39 +02:00
Kristoffer Ödmark
4c94d02c42
Fixed sheet-selection code
...
Fixes: lp:1704644
* https://bugs.launchpad.net/kicad/+bug/1704644
2017-07-17 10:21:39 +02:00
Maciej Suminski
08c4a0bc7b
Fixed SELECTION_TOOL::selectCursor()
...
In the previous version the method did not work correctly
when an action was invoked from context menu. In such case,
the cursor position was obtained in the moment of selecting
the action, instead of using the right click location.
2017-07-12 09:34:20 +02:00
jean-pierre charras
f4ecc417ac
Fix a few doxygen warnings
2017-07-08 21:13:32 +02:00
Maciej Suminski
805bfb048b
pcbnew: Configurable hotkeys for PNS
...
- routing options
- custom track/via size
- differential pair dimensions
- increase/decrease via size
2017-06-30 15:46:27 +02:00
hauptmech
4e908da057
pcbnew: Add hotkeys for Select Trivial Connection and Select Copper Connection
2017-06-30 14:30:10 +02:00
Maciej Suminski
79b2d60666
Reenabled pad number increment on placement (module editor)
2017-06-23 18:51:00 +02:00
Maciej Suminski
3dd4429ef6
Dead code removal
2017-06-23 18:50:31 +02:00
Maciej Suminski
f3fbce9560
Code formatting and clean-up
2017-06-23 15:43:13 +02:00
Tomasz Włostowski
113163257d
Fixed compilation warnings
2017-06-23 11:36:05 +02:00
Tomasz Włostowski
a7759efc59
Multiple fixes:
...
- ratsnest is updated now when undoing in legacy view
- select whole net regression
- local ratsnest in the GAL regression
- pick correct zone net for stitching vias
- mark nets as dirty on net propagation to force ratsnest update
Todo:
- cleanup board algorithm is still broken
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
81dbd930ae
Display zone filling progress window in GAL
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
3b16d3cffe
further DLIST/Iterators cleanup, some code formatting
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
63f4ab697b
post-rebase fixes
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
3b7b0603b6
pcbnew: via placement tool, initial version
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
bfdd1191ab
pcbnew: rename PLACEMENT_TOOL to ALIGN_DISTRIBUTE_TOOL, some fixes in the connectivity algo
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
c4c329e393
Connectivity: local ratsnest for both legacy & GAL. Further removal of legacy code
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
edf1aac357
Fixed some compilation warnings. Missing features so far: single-module ratsnest & DRC unconnected report
2017-06-23 11:12:37 +02:00
Tomasz Włostowski
9ad886344b
New connectivity algorithm.
2017-06-23 11:12:36 +02:00
Tomasz Włostowski
08314082db
Hide DLISTs behind iterators, first step towards refactoring the storage model
2017-06-23 11:12:36 +02:00
jean-pierre charras
2c21c70f46
Fix a few doxygen warnings
2017-06-22 09:09:52 +02:00
jean-pierre charras
fa66a5a8f3
Pcbnew: make hotkeys { and } used to control the layer transparency (alpha channel) in GAL visible (and editable) in hotkey list.
2017-06-17 18:11:40 +02:00
jean-pierre charras
cf083a20c4
Fix typo
2017-06-14 08:15:28 +02:00
jean-pierre charras
1fab667cf7
2 Minor fixes in GAL mode: when switching from legacy to gal, use now the latest display options.
...
Use hotkey defined by user to reset local coordinates in GAL (instead of the hard coded space key)
2017-06-13 11:25:05 +02:00
jean-pierre charras
1ada4863fc
Pcbnew: fix incorrect UI behavior of "Zoom to selection" tool in GAL canvas.
2017-06-13 09:24:21 +02:00
Maciej Suminski
b304dafc5b
Fixed headers in Position Relative tool
2017-06-12 16:58:47 +02:00
Maciej Suminski
fc58bd3848
Position Relative Move tool fixes
...
- corrected copyright headers
- code formatting
- made dialog pointer private, added UpdateAnchor() and modified click
handler routine accordingly
- renamed .fbp file to match other dialogs pattern
2017-06-12 16:24:52 +02:00
Russell Oliver
aeb23188f1
Add Position Relative tool
2017-06-12 16:24:52 +02:00
Maciej Suminski
f0c8391a46
Use mouse (rather than cursor) position when selecting an item.
2017-06-12 16:24:52 +02:00
Maciej Suminski
dcc803ecb1
VIEW_CONTROLS::GetMousePosition() returns the mouse position in world coordinates.
2017-06-12 16:24:52 +02:00
jean-pierre charras
ad48cd435d
Replace SetToolID( ID_NO_TOOL_SELECTED, ...) by SetNoToolSelected() in code
2017-06-12 16:17:48 +02:00
jean-pierre charras
6ed4f9b208
Make EDA_DRAW_FRAME::SetToolID and mouse cursor shape setting working in GAL canvases, and uses same mouse cursor shapes in legacy and gal canvases.
...
Starting fixing incorrect UI behavior of Zoom to selection in Pcbnew.
2017-06-12 15:16:09 +02:00
Oliver Walters
18488342a5
Improved speed of Duplicate action
...
- Removed repetitive tool calls
2017-06-12 11:16:30 +02:00
Fabrizio Tappero
ac9a64a173
general UI fix. Fixed a lot of icons and a lot of menu.
...
Also a few no longer used .cpp icon files are removed.
2017-06-02 11:51:11 +02:00
jean-pierre charras
b8183a1aa5
Fix Coverity warnings
2017-05-30 09:07:18 +02:00
Maciej Suminski
499eabceb4
More data validity checks in POINT_EDITOR
...
Fixes: lp:1690658
* https://bugs.launchpad.net/kicad/+bug/1690658
2017-05-16 11:47:00 +02:00
Oliver Walters
cd738297b0
SELECTION_AREA color now indicates selection mode
...
BLUE = Normal
GREEN = Addition
RED = Subtraction
Line color indicates "window" or "crossing" selection mode
2017-05-10 10:57:29 +02:00
Oliver Walters
a2fda9bd39
Fixed selection filtering
...
- Fixed "double selection" of pads and pad parents in PCBNEW
- Disabled selection of entire module in MODEDIT
2017-05-10 10:57:29 +02:00
Oliver Walters
b53ba56ac2
Use CTRL modifier to deselect items
2017-05-10 10:57:29 +02:00
Oliver Walters
f8734bd057
Fixed ::HitTest for Circle shape
...
- Testing against rectangle intersection now works correctly
- Previously tested against BoundingBox() not circle outline
2017-05-10 10:57:28 +02:00
Oliver Walters
ef25ffbab7
Alter selection mode based on drag direction
...
LEFT > RIGHT = Enclosed selection
RIGHT > LEFT = Touching selection
2017-05-10 10:57:28 +02:00
Robbert Lagerweij
e57c962336
Pcbnew: add option to select origin & anchor in move exactly tool
...
This patch adds a radiobox to allow the user to select a reference point for
the move. The additional options are: User Origin (set with <space>),
Grid Origin and Sheet Origin (effectively making it an absolute coordinate).
A checkbox is added (where it makes sense) to allow overriding which point
within the component is put on top of the designated coordinate.
Fixes: lp:1460460
* https://bugs.launchpad.net/kicad/+bug/1460460
2017-04-25 11:32:49 -04:00
Maciej Suminski
6507dbf3ad
Fixed code formatting & comments typos
2017-04-24 00:02:07 +02:00
jean-pierre charras
9e321a4722
Pcbnew: Apply a fix made in stable branch, in AppendBoard, to avoid potential crash.
2017-04-22 09:23:02 +02:00
Maciej Suminski
217593f6bc
Fixed selected items drift on rotation/flip
2017-04-20 16:38:19 +02:00
Maciej Suminski
0e14cdf6da
Code formatting
2017-04-20 16:37:36 +02:00
Maciej Suminski
d452a5a30c
Moved ratsnest update from EDIT_TOOL to PCB_EDITOR_CONTROL
2017-04-20 14:43:42 +02:00
Maciej Suminski
bc8668b039
Renamed PCB_ACTIONS::editModifiedSelection to selectionModified
2017-04-20 14:11:59 +02:00
Maciej Suminski
bb999f1bbf
Fixed items disappearing after a rotation/flip
...
Fixes: lp:1683831
* https://bugs.launchpad.net/kicad/+bug/1683831
2017-04-20 14:11:59 +02:00
Maciej Suminski
e2b95cf97a
Removed a redundant update/refresh calls
...
BOARD_COMMIT handles all necessary updates
2017-04-20 14:11:35 +02:00
Maciej Suminski
74847bf8ff
Code formatting and clean-up
2017-04-20 14:01:38 +02:00
jean-pierre charras
a35a46804e
Pcbnew fix: "create array" extremely slow in GAL mode, due to a useless call of a time consuming method for each new item created.
2017-04-19 14:15:11 +02:00
jean-pierre charras
01f5a129a3
Fixes: lp:1683147 (Board append command *extremely* slow)
...
https://bugs.launchpad.net/kicad/+bug/1683147
2017-04-18 20:10:34 +02:00
jean-pierre charras
74cd53fb31
finishing work started in commit ba37d6fca35b67fc04a21aa111aba97c80c3a1b0:
...
Command add corner to zone in GAL mode: fix corner cases (existing when a zone has holes).
(Well, "corner case" is the right word: I can't resist)
2017-04-14 14:39:45 +02:00
jean-pierre charras
9a7abd5914
Pcbnew: fix some issues in GAL when adding holes in zones.
2017-04-07 11:57:02 +02:00
jean-pierre charras
70c961fe6a
Pcbnew: fix serious issues (broken files) when saving and loading .kicad_pcb files when zones have holes in outlines.
2017-04-07 08:02:26 +02:00
jean-pierre charras
ba37d6fca3
Temporary fix of broken command add corner to zone in GAL mode.
...
Fixes: lp:1680339
https://bugs.launchpad.net/kicad/+bug/1680339
2017-04-06 19:04:47 +02:00
Jon Evans
3ec28e2acf
Refactor layer enumerations to all live in the same place
2017-03-30 16:01:48 -04:00
John Beard
c94269e173
Pcbnew GAL: Switch CW/CCW hotkeys to match legacy mode
2017-03-30 16:05:56 +02:00
John Beard
0b593faa93
Pcbnew: correct CW/CCW rotation.
...
These were backwards since internal angles are CCW due to the inverted Y
axis.
The hotkeys have NOT changed. This means 'R' is now clockwise and
'Shift+R' is anti-clockwise. This is the same as EEschema, but not the
same as Legacy mode.
2017-03-30 16:05:56 +02:00
Alejandro García Montoro
f68ce306bd
CPolyLine -> SHAPE_POLY_SET refactor.
...
Removes the need of using the legacy code in polygon/PolyLine.{h,cpp},
refactoring all CPolyLine instances with SHAPE_POLY_SET instances.
The remaining legacy methods have been ported to SHAPE_POLY_SET;
mainly: Chamfer, Fillet, {,Un}Hatch.
The iteration over the polygon vertices have been simplified using the
family of ITERATOR classes.
2017-03-24 10:43:47 +01:00
Maciej Suminski
f2763e90ea
Disable autopanning & cursor capture when drawing is finished
2017-03-23 14:15:34 +01:00
John Beard
9fe780f1b3
Rework zone creation in GAL
...
The zone creation in DRAWING_TOOL was a complex event loop whici
simultaneously managed the event handling, construction of the preview
polygon and the creation and commiting of the zone, all in the same
scope. This has been broken into several pieces:
* POLYGON_ITEM preview item, used to preview the polygon in progress
* POLYGON_GEOM_MANAGER is a class that collects points from user input
and used them to describe a polygon's geometry, including calculation
of 45-degree constrained leader lines
* ZONE_CREATE_HELPER is a class which deals with creating zones based on
geometry from a geometry manager and parameters from the DRAWING_TOOL
* The (much simpler) event loop in DRAWING_TOOL drives the
POLYGON_GEOM_MANAGER. With a minor refactor, this loop can be reused
in future for other polygonal tools if wanted.
The polygon preview now has a translucent fill which makes it easier to
visualise the zone.
This also adds the Close Zone Outline and Delete Last Corner actions as
part of the new event loop.
Fixes: lp:1663885
* https://bugs.launchpad.net/kicad/+bug/1663885
Fixes: lp:1667885
* https://bugs.launchpad.net/kicad/+bug/1667885
2017-03-22 17:18:12 +01:00
John Beard
1fd503bf58
Move DIRECTION45 to common/geometry
...
This class is useful for generic geometric layout of 45-deg constrained
line chains, not only in the PNS router.
2017-03-22 15:23:09 +01:00
John Beard
d99fbddc22
Enable angle snap for pcbnew GAL ruler tool
...
This uses the two-point geometry manager to split the logic of the ruler
geometry and the preview item display. This allows the ruler to use that
manager's angle snap feature.
2017-03-22 10:59:47 +01:00