Jon Evans
d7bb83ddcb
Add a REPAINT flag for faster redraw when bounding box hasn't changed
8 years ago
Jon Evans
b90528a7ae
Fix regression in GerbView display settings; some optimization too
8 years ago
Jon Evans
9452c61462
Use vector instead of bitset for VIEW_ITEM_DATA layer storage
Shows 10-15% speed improvement in rendering large files in MacOS
8 years ago
Tomasz Włostowski
41f9c19b7d
pcbnew: editing outlines now works in flipped view mode
Fixes: lp:1731978
* https://bugs.launchpad.net/kicad/+bug/1731978
8 years ago
Marvin Schmidt
69974b73db
Remove some extra semicolons
8 years ago
Tomasz Włostowski
c9817df9db
refactoring: implemented BOARD-specific view Add()/Remove()/Update() methods in PCB_VIEW, moved to libpcbcommon
8 years ago
Maciej Suminski
6006b54dd9
Fixed a crash when editing a pad of a bottom layer module
Fixes: lp:1720007
* https://bugs.launchpad.net/kicad/+bug/1720007
8 years ago
Jon Evans
9383987b1c
Skip calling RTREE::Remove() when adding items to a VIEW
8 years ago
Jon Evans
0b9b8d3e93
Add support for reversed draw order and Cairo negative draw mode
8 years ago
Maciej Suminski
b5db6a7d5d
Map/unmap vertices once per layer order update
Multiple memory map/unmap operations cause a significant delay on
GPUs that fetch vertices from RAM.
Fixes: lp:1701936
* https://bugs.launchpad.net/kicad/+bug/1701936
8 years ago
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
9 years ago
jean-pierre charras
6eb2000b69
fix Coverity warning (CID 151565) (CID 155147)
9 years ago
Maciej Suminski
906ee77dbf
Fixed VIEW_ITEM memory leaks
9 years ago
Jon Evans
0afb249447
Add drawing priority support to VIEW
Call UseDrawPriority( true ) after creating GAL to enable.
VIEW::Add() gets a new optional argument to specify the draw order
when adding an item. If the new argument is left default, the draw
order will increment with each call of VIEW::Add().
Fix std::bind calls after change to VIEW::Add
9 years ago
Maciej Suminski
3c61b16e7b
Code formatting
9 years ago
Maciej Suminski
004ca3c6f9
Fixed a memory leak in VIEW_ITEM (proper way of doing 9bc2bb2)
The problem with simple deleting VIEW_ITEM_DATA upon VIEW_ITEM removal was
caused by the default copy constructors that copied pointers.
Once a copy of an item was destroyed, the VIEW_ITEM_DATA has been
destroyed, effectively invalidating m_viewPrivData for the other item.
9 years ago
Chris Pavlina
99bfa2fea2
Revert "Fixed a VIEW_ITEM memory leak"
This reverts commit 9bc2bb2651 .
Fixes: lp:1656481 (pcbnew segfault in KIGFX::VIEW_ITEM_DATA::getGroup)
https://bugs.launchpad.net/kicad/+bug/1656481
9 years ago
Maciej Suminski
9bc2bb2651
Fixed a VIEW_ITEM memory leak
9 years ago
jean-pierre charras
fff449ecf0
Performance counter rework: Add comments, fix coding style issues.
9 years ago
Simon Richter
ac9f858813
Performance counter rework
9 years ago
jean-pierre charras
dec2d6e8cc
Fix a few Coverity warnings. A bit of clean code in export_vrml.cpp.
9 years ago
Maciej Suminski
effc8bebb1
Store view flip setting between canvas changes
9 years ago
Maciej Suminski
027515f4e1
Fixed refreshing after flipping the view
9 years ago
Maciej Suminski
7ad5fca6de
More code formatting, updated copyright headers
9 years ago
Maciej Suminski
8f924ed125
Added checks to ensure VIEW_ITEM_DATA != nullptr.
9 years ago
Maciej Suminski
89055c4425
Code formatting
9 years ago
Tomasz Włostowski
da28e163d2
Optimizations/fixes to the VIEW/GAL classes:
- much faster Cairo rendering (outperforms legacy)
- improvements in VIEW update handling
- fixed issue with grid rendering in flip view mode
9 years ago
Tomasz Włostowski
3f7c5a0845
fixed post-rebase issues
9 years ago
Tomasz Włostowski
1c1f4e9a50
Refactoring of VIEW/VIEW_ITEM classes:
- Remove dependency of EDA_ITEM on VIEW
- VIEW_ITEM is now a pure virtual interface
9 years ago
Tomasz Włostowski
27a10e8597
Multiple simplifications to GAL tools in PCBNew:
- Finalize transition to BOARD_COMMIT (removed all remaining uses of PICKED_ITEMS_LIST) and implicit view/ratsnest updates
- Simplified SELECTION class, it now can be directly added to a VIEW
- Removed unnecesary casts and templates
- Introduced C++11 features (range based for, lambdas) where they improve code readability
- Added non-undoable COMMITs, which can be used to propagate change notifications to interested listeners (e.g. ratsnest/view)
9 years ago
Simon Richter
1b2fd6a382
Replace BOOST_FOREACH with C++11 range based for.
10 years ago
Maciej Suminski
d9f4877c94
Fixed a crash when starting pcbnew with OpenGL GAL.
10 years ago
Maciej Suminski
702be4903f
Vertices are stored in GPU memory (OpenGL GAL).
10 years ago
Maciej Suminski
36dd6eb6b3
GAL profiling output is enabled with WXTRACE env variable.
10 years ago
Simon Richter
da9ca2def2
Avoid cast from const_iterator to iterator
The standard library requires iterators passed to functions that modify the
container to be mutable iterators, but GCC's implementation accepts
const_iterator in some places where these are only used to mark a place,
but the actual modification happens through a different parameter.
As this breaks implementations that use the passed iterator to modify the
container (e.g. because they use a different data organization), this is
not portable; because we already have a non-const reference to the
container anyway, this is trivially fixed as well.
10 years ago
Maciej Suminski
6ad6f0bde2
Corrected VIEW::ToScreen().
11 years ago
Maciej Suminski
28a270a328
Refactored grid origin point drawing (GAL).
11 years ago
Maciej Suminski
d89d1d49a3
Fixed ghost effect in GAL view.
11 years ago
Maciej Suminski
4026cb6c58
Moved zoom limits and area boundaries handling to VIEW.
11 years ago
Maciej Suminski
d281d86eee
Fixed undo/redo display refresh for miras & dimensions (GAL).
11 years ago
Maciej Suminski
9e8719d3ff
Fixed overlapping segment endings in OpenGL view.
11 years ago
Tomasz Włostowski
8bd9dd49bb
view: added quick hiding mechanism in VIEW/VIEW_ITEM
11 years ago
Maciej Suminski
8a5fedb728
Code formatting and cleaning.
12 years ago
Maciej Suminski
5134781a38
GAL view in pad properties dialog - initial version.
12 years ago
Maciej Suminski
0fc93666c6
Rework to support multiple views with OpenGL GAL canvas.
12 years ago
Maciej Suminski
13e67e1f3c
Fixed VIEW::SetViewport().
12 years ago
Lorenzo Marcantonio
89f14906a4
- Added the courtyard/fabrication layer to the layer combo and layer
panel
- Corrected handling of scrollability in layer panel (fixes 1336996)
12 years ago
Bernhard Stegmaier
60a86853ec
Removed a few warnings.
12 years ago
Tomasz Włostowski
5bf50ee910
VIEW: added CalculateExtents() method
12 years ago
Maciej Suminski
89161331e4
Fixed refreshing issues (DRC, new items after reloading netlist and probably many other places).
12 years ago